WordPress實(shí)現(xiàn)自動(dòng)獲取文章插圖作為縮略圖

麥子 優(yōu)化維護(hù)167字?jǐn)?shù) 1020閱讀3分24秒閱讀模式

我們有些時(shí)候在自己設(shè)計(jì)WordPress主題的時(shí)候需要設(shè)置縮略圖內(nèi)容框架,或者有些主題沒(méi)有自帶縮略圖我們需要二次開發(fā)。這里可以通過(guò)這樣的代碼二次開發(fā)實(shí)現(xiàn)獲取內(nèi)容的插圖作為縮略圖。

    //自動(dòng)獲取內(nèi)容圖作為縮略圖
    if ( function_exists('add_theme_support') )add_theme_support('post-thumbnails');
    function post_thumbnail_src(){
        global $post;
    	if( $values = get_post_custom_values("thumb") ) {	//輸出自定義域圖片地址
    		$values = get_post_custom_values("thumb");
    		$post_thumbnail_src = $values [0];
    	} elseif( has_post_thumbnail() ){    //如果有特色縮略圖,則輸出縮略圖地址
            $thumbnail_src = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID),'full');
    		$post_thumbnail_src = $thumbnail_src [0];
        } else {
    		$post_thumbnail_src = '';
    		ob_start();
    		ob_end_clean();
    		$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
    		$post_thumbnail_src = $matches [1] [0];   //獲取該圖片 src
    		if(empty($post_thumbnail_src)){	//如果日志中沒(méi)有圖片,則顯示隨機(jī)圖片
    			$random = mt_rand(1, 10);
    			echo get_bloginfo('template_url');
    			echo '/images/'.$random.'.jpg';
    		}
    	};
    	echo $post_thumbnail_src;
    }

我們默認(rèn)可以設(shè)置1-10.jpg圖片的名稱文件丟到 /images/中隨機(jī)獲取。如果我們內(nèi)容中沒(méi)有圖,則自動(dòng)獲取1-10的其中一張作為縮略圖。

如果我們內(nèi)容中有特色圖,則獲取特色圖作為縮略圖。

    <?php echo post_thumbnail_src();?>

代碼添加到需要顯示縮略圖的模板對(duì)應(yīng)文件中。

投上你的一票
 
  • 本文由 麥子 發(fā)表于 2024年10月15日 06:18:10
  • 轉(zhuǎn)載請(qǐng)務(wù)必保留本文鏈接:http://bjj.org.cn/wpauto-thumb.html
  • WordPress獲取縮略圖