做 WordPress 主题时,为了让用户更方便的查看网站文章降低跳出率,我们会为文章生成一个上一篇与下一篇的链接,前面也已经讲了 WordPress 自带的 previous_post_link 方法生成上一篇与下一篇的超链接,不清楚可以看这篇文章 WordPress 函数 previous_post_link 获取上一篇链接。但是这种方法生成的链接可定制性不高,比如我需要把文章的特色图昨晚链接背景?今天教大家使用 get_previous_post 与 get_previous_post 函数高级 DIY 方式写文章上一篇与下一篇功能。
get_previous_post( bool $in_same_term = false, array|string $excluded_terms = '',string $taxonomy = 'category' )
$in_same_term
(bool) (Optional) 是否是同一个分类.
Default value: false
$excluded_terms
(array|string) (Optional) 数组或者逗号分隔的排除文章 id.
如果成功,返回 POST 对象。如果未设置全局$POST,则为 NULL。如果不存在对应的 POST,则为空字符串。
WP_Post Object (
[ID] => 2283
[post_author] => 1
[post_date] => 2019-09-13 21:39:48
[post_date_gmt] => 2019-09-13 13:39:48
[post_content] => 文章内容
[post_title] => 文章标题
[post_excerpt] =>文章摘要
[post_status] => publish
[comment_status] => open
[ping_status] => closed
[post_password] =>
[post_name] =>文章别名
[to_ping] =>
[pinged] =>
[post_modified] => 2019-09-13 21:39:48
[post_modified_gmt] => 2019-09-13 13:39:48
[post_content_filtered] =>
[post_parent] => 0
[guid] => https://www.beizigen.com/?p=2283
[menu_order] => 0
[post_type] => post
[post_mime_type] =>
[comment_count] => 0
[filter] => raw
)
get_next_post 与 get_previous_post 方法使用相同,参考上面的参数即可,这里不多讲了。
$prev_post = get_previous_post();
if(!empty($prev_post)){
echo '链接'.get_permalink($prev_post->ID);
echo '标题'.$prev_post->post_title;
//有文章id了还不简单?
}
$next_post = get_next_post();
if(!empty($next_post)){
//参考上面
}
我就贴实例了,效果就看上面的那张图吧。
专业提供WordPress主题安装、深度汉化、加速优化等各类网站建设服务,详询在线客服!