分享

WordPress 获取分类第一篇文章第一张图片地址

 ME书籍数据库 2017-08-24

2017061601420565.jpg

这个功能我不知道网络上面有没有相关教程,至少我是没有看到的,所以这里还是简单的说一下,可能其中有不少问题,也可能是我的方法太过复杂,但是还是希望给大家一个思路。

首先我们需要一个函数来获取文章图片地址,那么这个图片地址其实就是常规的获取缩略图的代码,只不过加以修改之后就成为了下面的代码:

function get_post_thumbnail_url($post_id){
$post_id = ( null === $post_id ) ? get_the_ID() : $post_id;
$post=get_post($post_id);
if( 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{
$post_thumbnail_src = '';
}
}
return $post_thumbnail_src;
}

上面的代码添加到functions.php中即可,这个函数配合文章 id 使用,那么接下来我们需要做的事情就是获取某一分类的第一篇文章的 id 了:

$query = new WP_Query( 'cat=分类ID&posts_per_page=1' );
$post_id = $query->post->ID;

经过上面的代码之后,$post_id 就是我们需要的了。这样的话,我们就可以通过两段代码获取到某个分类第一篇文章的第一张图片地址了,最后使用起来的话,应该大致如下:

<img src="<?php echo get_post_thumbnail_url($post_id); ?>">

上面的介绍是比较简单的,讲解的是一个功能如何实现,但是更多的方面比如如何在循环中使用,如何在不同分类使用不同情况等等,这些大家学会举一反三即可,配合百度和谷歌,自行动手解决最好了。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多