專注CJ聯盟
不止CJ聯盟

給你的網站加個隨機縮略圖

不少新手朋友建英文站,都遇到過一個問題,那就是縮略圖和幻燈片。辛辛苦苦找了個主題,但是怎么設置怎么調整都無法實現預覽圖的效果。到頭來,只好手動設置文章的特色圖像才能實現文章縮略圖的效果。

據我所知很多人用wprobot破解版采集文章,但采集不到圖片,到最后手動設置的人也不少。關于縮略圖,我在《wordpress建站提升效率和外觀的幾個插件》中也介紹了我使用的幾個插件。

當時提到的在線搜索圖片生成縮略圖插件Magic Post Thumbnail,我最近發現他已經不能直接搜索google圖片了,需要google的賬號之類的東西。

而WP-Thumbnails這個插件,在國外的wordpress主題模板中,基本不起作用。原因很簡單,那就是國外的主題基本上都是用特色圖像作為縮略圖調用。

最近,我又搗鼓了一下,發現網上有不少文章介紹如何為沒有特色圖片的文章隨機添加特色圖片的辦法,但需要修改代碼,而且對主題的兼容性要求比較高。我曾經在一個主題上調試成功后,換個主題又無法照搬。

wordpress建站

最近,發現了一個更好的辦法,如下:

1、將想設置為特色圖片的圖片上傳到媒體庫。并記錄下附件ID。(不懂如何看附件id的話自己百度)

2、將以下代碼添加到主題目錄下,functions.php文件后面。、
//自動為沒有特色圖片的文章,設置媒體庫圖片為特色圖片。

function autoset_featured() {
global $post;
$already_has_thumb = has_post_thumbnail($post->ID);
if (!$already_has_thumb) {
$attached_image = get_children( "post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1" );
if ($attached_image) {
foreach ($attached_image as $attachment_id => $attachment) {
set_post_thumbnail($post->ID, $attachment_id);
}
}else {
set_post_thumbnail($post->ID, (rand(849,872))); //媒體庫文件ID,以英文,分開。圖片數量無限制。
}
}

} //end function
add_action('the_post', 'autoset_featured');
add_action('save_post', 'autoset_featured');
add_action('draft_to_publish', 'autoset_featured');
add_action('new_to_publish', 'autoset_featured');
add_action('pending_to_publish', 'autoset_featured');
add_action('future_to_publish', 'autoset_featured');

3、在代碼第13行,輸入媒體庫圖片文件ID,用英文逗號分開即可。(就是紅字部分)

該代碼在多個主題中測試成功。

 

 

 

有基礎的人也可以自己再對代碼進行修改優化??床欢?,那就自行百度吧,步驟已經很詳細。

贊(0)
未經允許不得轉載:賺刀博客 » 給你的網站加個隨機縮略圖

評論 4

  • 昵稱 (必填)
  • 郵箱 (必填)
  • 網址
  1. #1

    謝謝蝦哥,這個方法確實管用。我之前沒辦法,只好淘寶找人改代碼,但就是如你所說每次都得去找人。我剛才試了你這個方法,雖然需要上傳一些圖片,但是也很方便

    luck4年前 (2016-01-26)回復
    • 嗯,雖然需要上傳圖片,但兼容性很好。以后發現更好的方法,我再分享

      admin4年前 (2016-01-26)回復
  2. #2

    這個方法很好,但是有個小問題,就是圖片主題和文章主題應該是沒有辦法一一對應吧?
    紅字部分適配是隨機的。

    昆侖蝦4年前 (2016-06-03)回復
    • 需要自己上傳圖片,然后修改紅字部分,圖片就在那個區間隨機調用

      admin4年前 (2016-06-03)回復

賺刀博客——專注CJ聯盟,不止CJ聯盟

聯系小龍蝦CJ聯盟交流群
516金蟾捕鱼下载 王者电玩城安卓 下载哈尔滨普通麻将 五分彩是正规的么 世界足球国家队排名 追光娱乐老版棋牌 波克城市棋牌中心 平码肖有两个 今日股票热门板块 中赚网赚论坛 nba中文