我爱水煮鱼博客前天发技术文《WordPress 技巧:当搜索结果只有一篇时直接跳转到文章页面》,提供了在WordPress进行搜索时,如果搜索结果只返回一篇日志则直接跳转到文章页面的方法,为读者节省了再次点击的时间。
以此思路,可以拓展代码为:当文章标签Tag只返回一篇时直接跳转到页面。
代码如下:
/* Tag result redirecting */
add_action('template_redirect', 'sy_redirect_tag_post');
function sy_redirect_tag_post() {
if (is_tag()) {
global $wp_query;
if ($wp_query->post_count == 1) {
wp_redirect( get_permalink( $wp_query->posts['0']->ID ) );
}
}
}
大致 浙江
is_search()||is_archive()||is_catecory()||is_tag()||is_author()都可以。
五年前 Firefox 68 · Windows 7严谨一点判断条件上应该加一个$wp_query->max_num_pages == 1,保不齐有每页只设一篇文章的奇葩呢。
S 江苏 *
@大致 哈哈,我不是奇葩无所谓。
五年前 Firefox 70 · Mac OS X 10.15老杨 广东
@大致 is_catecory() --> is_category(),直接复制过去崩溃了才发现,囧~
五年前 Google Chrome 78 · Windows 10S 江苏 *
@老杨 哈哈哈😂
五年前 Wordpress App 13 · iPhone iOS 13.1.3大致 浙江
@老杨 这才说明我是吃透了函数,完全手打的。
五年前 Firefox 68 · Windows 7