1.首先是文章的自定義字段“thumbnail”,如果有,則輸出這個(gè)值
2.接著是文章的手動(dòng)添加推薦圖片,即特色縮略圖,如果有,則輸出縮略圖地址
3.如果以上都找不到,那么使用正則尋找正文的所有內(nèi)容,發(fā)現(xiàn)img標(biāo)簽時(shí),則獲取第一個(gè)匹配的圖片地址
4.最后是上面都找不到圖片,則使用隨機(jī)數(shù)輸出指定的圖片,或者也可以干脆什么都不輸出。
代碼如下:
- function post_thumbnail_src(){
- global $post;
- if( $values = get_post_custom_values("thumbnail") ) { //輸出自定義域圖片地址
- $values = get_post_custom_values("thumbnail");
- $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);
- if(!empty($matches[1][0])){
- $post_thumbnail_src = $matches[1][0]; //獲取該圖片 src
- }else{ //如果日志中沒有圖片,則顯示隨機(jī)圖片
- $random = mt_rand(1, 10);
- $post_thumbnail_src = get_template_directory_uri().'/images/pic/'.$random.'.jpg';
- //如果日志中沒有圖片,則顯示默認(rèn)圖片
- //$post_thumbnail_src = get_template_directory_uri().'/images/default_thumb.jpg';
- }
- };
- echo $post_thumbnail_src;
- }
在調(diào)用的時(shí)候,則可以跟平常一樣,以上這個(gè)函數(shù)只是輸出圖片的地址。在需要縮略圖的地方使用下面代碼:
- <img src="<?php post_thumbnail_src(); ?>" alt="<?php the_title(); ?>"/>
當(dāng)然,如果你只需要顯示有特色圖片的文章縮略圖,則可以使用Wordpress默認(rèn)的縮略圖代碼:
- <?php if ( has_post_thumbnail()) : ?>
- <?php the_post_thumbnail( 'caibaojian-featured', array( 'class' => 'single-featured' )); ?>
- <?php endif; ?>
版權(quán)聲明:文章圖片資源來源于網(wǎng)絡(luò),如有侵權(quán),請(qǐng)留言刪除!!!
評(píng)論