继夫的玩弄H辣文的小说|女人与拘性猛交视频|精品欧美高清不卡高清|一起做亏亏的事情的视频|啦啦啦在线视频观看|望月直播下载ios版本|国产日韩欧美一区二区三区

縮略圖 教程: WordPress 文章特色圖片功能

現在絕大多數的 WordPress 主題,特別是那些雜志型的主題,比如 Autumn Pro,都會給每篇文章加上一張縮略圖,一般會在首頁或者其他列表頁的時候,使用這種展現方式,縮略圖可能單獨出現,或者和文章摘要一起 。
在 WordPress 2.9 之前,WordPress 沒有提供一個標準的方法去實現文章縮略圖,很多主題都是使用 WordPress 自定義字段來實現文章縮略圖功能,這樣的設置比較復雜 。

縮略圖 教程: WordPress 文章特色圖片功能

文章插圖
從 WordPress 2.9 開始 , WordPress 開始內置了文章縮略圖的功能,后面又把名稱改為特色圖片(Featured Image),這里為了統計叫法,還是使用文章縮略圖的名稱,并且 WordPrss 還提供了詳細的接口讓主題的作者可以自定義設置和調用文章縮略圖 。
今天就講解一下怎么使用開啟,自定義和使用文章縮略圖 。
開啟文章縮略圖功能
要使用文章縮略圖功能 , 首先需要通過函數 add_theme_support() 來開啟,具體是在當前 WordPress 主題的 functions.php 文件中添加以下代碼:
【縮略圖 教程: WordPress 文章特色圖片功能】add_theme_support( post-thumbnails );上面的代碼會在 WordPress 后臺編輯文章的界面開啟設置文章縮略圖的窗體,并且同時給文章和頁面開啟縮略圖功能,如果想單獨開啟的話 , 使用以下代碼:
add_theme_support( post-thumbnails, array( post ) ); // 給文章啟用文章縮略圖功能 add_theme_support( post-thumbnails, array( page ) ); // 給頁面啟用文章縮略圖功能設置文章縮略圖大小開啟了 WordPress 文章縮略圖功能之后,我們可以通過函數 set_post_thumbnail_size() 來設置縮略圖的大小 , 這里有兩種方式:盒大?。╞ox-resize)模式和裁剪(hard-crop)模式 。
盒大小模式(box-resize)按照比例縮小圖片直到適合指定的盒子,所以不會扭曲圖片 。盒大小模式可以指定長度和寬度,比如一張 100X50 的圖片在指定的 50X50 的盒子中會被縮小為 50X25 。
這種模式的好處是可以顯示整張圖片,缺點是生成的圖片并不是一樣大的,它是按照最長邊來設置的,所以有時候是長度一樣,有時候是高度一樣 。如果我們想限制縮略圖到一定的寬度,而不在乎它的高度,這時候我們可以指定縮略圖的寬度,然后設置它的高度為 9999 或者其他任何認為夠大的一個數字 。代碼如下:
set_post_thumbnail_size( 50, 50 ); // 50 像素寬和 50 像素高,盒大小模式第二種是硬裁剪模式(hard-crop),這種模式下 , 圖片會被裁剪為指定的大小,這種方式的好處就是得到我們所希望的,比如我們希望得到一張 50X50 的縮略圖,就會得到 50X50 的縮略圖,缺點就是圖片會被裁減 , 縮略圖中只會顯示圖片的一部分 。這種方式的代碼是:
set_post_thumbnail_size( 50, 50, true ); // 50 像素寬和 50 像素高,裁剪模式在主題中顯示文章縮略圖現在我們要在主題中使用模板函數來顯示文章縮略圖,下面這些函數應該在 WordPress 的主循環中使用 。
has_post_thumbnail():判斷當前文章是否有縮略圖 , 如果有返回 true,否則為 false:<?php if ( has_post_thumbnail() ) { //當前文章有縮略圖 } else { //當前文章沒有設置縮略圖 } ?>the_post_thumbnail():輸出文章縮略圖,如果縮略圖存在的話 。<?php the_post_thumbnail(); ?>一個具體的例子假設我們想在首頁使用一個比較小的 50X50 裁剪模式的縮略圖,并且想在文章頁面使用 400 像素寬(高度不限制)的圖片?我們可以設置額外的自定義尺寸縮略圖,代碼如下:
在 functions.php 中添加如下代碼:
add_theme_support( post-thumbnails ); set_post_thumbnail_size( 50, 50, true ); // 普通的縮略圖 add_image_size( single-post-thumbnail, 400, 9999 ); // 定義文章頁面的縮略圖大小在當前主題的 index.php 或者 home.php(取決主題的結構)中的主循環添加如下代碼:
<?php if ( has_post_thumbnail() ) { the_post_thumbnail(); } else { //當前文章沒有設置縮略圖 } ?>在當前主題的 single.php (也是主循環中)添加如下代碼:
<?php the_post_thumbnail( single-post-thumbnail ); ?>通過函數 set_post_thumbnail_size() 可以生成默認的文章縮略圖 。
除此之外,我們還可以通過調用 add_image_size(); 來增加額外的文章縮略圖尺寸,然后在文章頁面通過 the_post_thumbnail( ); 調用新的縮略圖尺寸來顯示新的縮略圖 。
WPJAM Basic 的縮略圖功能
如果沒有縮略圖如何辦?或者之前的版本把縮略圖設置到了自定義字段如何處理?
WPJAM Basic 針對這些情況都做了處理 , 首先我們可以選擇是否自動將縮略圖的設置應用到主題還是修改主題代碼來實現 。
縮略圖 教程: WordPress 文章特色圖片功能

文章插圖
然后可以設置默認文章縮略圖,在各種情況都找不到縮略圖之后默認的縮略圖,可以設置多張,這樣很多文章沒有默認縮略圖的時候,也不會太過單調 。
最后就是定義文章縮略圖順序,首先使用文章特色圖片,如果沒有設置文章特色圖片,可以定義獲取文章縮略圖的順序 。比如上圖中,我就首先定義從標簽縮略圖中獲取,如果沒有,再從第一張圖片,最后從分類縮略圖中獲取 。
關于 WPJAM Basic 的縮略圖設置更詳細設置請點擊這里 。
更多文章縮略圖的函數
作為一篇完整的教程,我們將其他文章縮略圖相關函數也一起介紹一下:
get_post_thumbnail_id():獲取文章縮略圖 ID有時候我們想獲取縮略圖的 ID,文章縮略圖的 ID 是存在 meta_key 為 _thumbnail_id 的值中 , 但是我們只需要使用下面簡單的函數就可以獲取文章的縮略圖 ID:
$image_id = get_post_thumbnail_id();get_the_post_thumbnail_url():獲取文章縮略圖鏈接獲取到文章縮略圖鏈接 ID 之后,我們可以使用 wp_get_attachment_image_url 函數獲取圖的鏈接,但是 WordPress 已經提供了現成的函數一步到位:
$thumbnail_url = get_the_post_thumbnail_url( $post = null, $size = post-thumbnail );the_post_thumbnail_url():這個函數直接顯示文章縮略圖鏈接,這個函數和上面函數類似,一個是返回,一個是直接輸出,不具體詳細講解了 。get_the_post_thumbnail():獲取文章縮略圖而不是輸出它有時候,我們可能在 PHP 代碼中返回文章縮略圖 , 而不是輸出它,可以使用下面簡單的代碼:
$image = get_the_post_thumbnail( $post->ID, thumbnail );