将wp_title()从页面ID获取到变量

时间:2013-08-31 作者:Paul

我很确定这是不可能的,但我能得到wp_title() 如果我知道post的ID,就可以将其转换为变量?

例如,我在一个“blog”页面上,我想在一个变量中包含“about”页面的标题(而不是在<title> 标记如下问题:Setting title using wp_title filter).

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

正如你所说,wp_title 仅适用于当前帖子,因此将其保存在变量中以用于非当前帖子可能有点棘手。

然而wp_title 不仅适用于单个帖子/页面/cpt,还适用于各种类型的归档。因此,很容易创建一个自定义函数来复制与单个帖子/页面相关的核心函数部分。

   function get_the_wp_title( $postid = \'\', $sep = \'&raquo;\', $seplocation = \'\' ) {
     if ( ! $postid ) return \'\';
     $post = get_post($postid);
     if ( ! is_object($post) || ! isset($post->post_title) ) return \'\';
     $t_sep = \'%WP_TITILE_SEP%\';
     $title = apply_filters(\'single_post_title\', $post->post_title, $post);
     $prefix = \'\';
     if ( ! empty($title) ) $prefix = " $sep ";
     if ( \'right\' == $seplocation ) { // sep on right, so reverse the order
        $title_array = explode( $t_sep, $title );
        $title_array = array_reverse( $title_array );
        $title = implode( " $sep ", $title_array ) . $prefix;
      } else {
        $title_array = explode( $t_sep, $title );
        $title = $prefix . implode( " $sep ", $title_array );
      }
      return apply_filters(\'wp_title\', $title, $sep, $seplocation);
    }
代码在很大程度上是从core wp_title function.

请注意,为定义的所有筛选器wp_title 也适用于此功能。

SO网友:Tolea Bivol

wp\\u title()函数有第二个参数“display”。将其设置为false以获取变量中的标题:

<?php $variable = wp_title(\'&raquo;\',FALSE); ?>
如果要按页面ID获取标题:

<?php
$pageID = 86;
$page = get_post($pageID);
echo $page->post_title;
?>

结束

相关推荐

在wp_title中包括类别标题

我用这个functions.php 输出我的页面<title>:/** * Creates a nicely formatted and more specific title element text * for output in head of document, based on current view * * @param string $title Default title text for current view * @pa