/ 软件 / 313阅

当文章标签Tag只返回一篇时直接跳转到页面

我爱水煮鱼博客前天发技术文《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 ) ); 
        } 
    } 
}
# 写于五年前,改于二年前
           

5

  1. 大致

    is_search()||is_archive()||is_catecory()||is_tag()||is_author()都可以。
    严谨一点判断条件上应该加一个$wp_query->max_num_pages == 1,保不齐有每页只设一篇文章的奇葩呢。

    Firefox 68 · Windows 7
    1. S̆̈

      @大致哈哈,我不是奇葩无所谓。

      Firefox 70 · Mac OS X 10.15
    2. 老杨

      @大致is_catecory() --> is_category(),直接复制过去崩溃了才发现,囧~

      Google Chrome 78 · Windows 10
      1. S̆̈

        @老杨哈哈哈😂

        Wordpress App 13 · iPhone iOS 13.1.3
      2. 大致

        @老杨这才说明我是吃透了函数,完全手打的。

        Firefox 68 · Windows 7

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注