在自定义页面标题功能上显示页码

时间:2017-01-31 作者:timmyg

在对博客存档进行分页时,post存档的第2+页当前仅显示single_post_title 而不是<title> 标签

在插件中使用自定义页面标题功能时,是否有一种简单的方法来显示页码?使用类似get_query_var 无法工作,因为此函数在循环之外(正确吗?)

我的职能:

function create_page_title() {
            if ( is_front_page() )  { 
                $page_title = bloginfo(\'name\');
                $page_title .= print(\' | Company Name\'); 
            } 
            elseif ( is_home() ) {
                $page_title = single_post_title();
                $page_title .= print(\' | \');
                $page_title .= print(\' \'); 
                $page_title .= bloginfo(\'name\');
                $page_title .= print(\' | Company Name\'); 
            }
            elseif (is_page() ) { ...
            }
            return $page_title;
}
我知道我需要做点什么$page_title = single_post_title();, 但只是不知道。。。

1 个回复
最合适的回答,由SO网友:Gonzoarte 整理而成

你可以在你的is_page() 有条件的:

elseif ( is_page() ) { 
 $paged = (get_query_var(\'paged\')) ? get_query_var(\'paged\') : 1;
 echo $page_title . \' \' . $paged . \' of \'.$wp_query->max_num_pages;
}
实现同样目标的另一种方法。条件语句用于避免在第一页的标题之外添加0:

elseif ( is_page() ) { 
   global $paged;
    if ( $paged != 0 ) {
      $custom_title = $page_title . \' Page Number :  \' . $paged;
      echo $custom_title;
    } else {
      echo $page_title;
    }
 }

相关推荐

在帖子和页面标题中应用_title()过滤器,但不在菜单标题中应用

我使用以下代码更改WordPress的标题posts 和pages. 但它也改变了导航菜单项的标题,这是我想要避免的。我想更改中帖子和页面的标题:home page, 全部的archive pages 以及所有widgets (最近发布小部件、随机发布小部件等)堆栈溢出和WP堆栈交换中都存在类似的问题,建议使用in_the_loop() 作用不幸的是,它对我不起作用,因为如果我放置它,它也会影响侧边栏小部件。也就是说,如果我使用in_the_loop() 作用the_title 过滤器不影响recent