只在StartPage上获得特定的“某一部分的标题”?

时间:2012-07-08 作者:ad2003

我有一个网站,在首页显示我的wordpress的所有帖子。幸亏Stephen Harris 是谁帮助我编写了我在函数中输入的代码。php:

add_action(\'pre_get_posts\',\'wpse57309_alter_front_page_query\');
function wpse57309_alter_front_page_query( $query ){
     if( $query->is_main_query() && is_front_page() ){
         if( !$query->get(\'post_type\') ){
             //post type is not set, the default will be an array of them:
             $query->set(\'post_type\',array( \'movies\', \'music\', \'featued\'));
         }
     }
}
现在我有另一个问题:我在这里使用以下代码来获取每个部分的标题:

<?php wp_reset_query(); ?>
<?php echo $post->post_type; ?>
在h2标签之间-但现在在Startpage上,我得到了不同的帖子类型名称-但我只想把“主页”作为标题。。。我用is\\U home()和is\\U front\\u page()试过了,但没有成功。

此外,“post\\U类型”在此页面上设置为特定类型。

我已经内置了一个过滤器,可以使用&style=soul

但在startpage上,它现在总是一种特定的post\\u类型。我想这是最后一篇文章的post\\u类型。。。

也许有人有个暗示?

1 个回复
SO网友:Dane Morgan

我想也许你想要的是

<?php if ( !is_front_page() ) : ?>
   <h2>
      <?php wp_reset_query(); ?>
      <?php echo $post->post_type; ?>
   </h2>
<?php endif; ?>
如果您制作了显示博客帖子的自定义首页,或

<?php if ( !is_home() ) : ?>
   <h2>
      <?php wp_reset_query();
      echo $post->post_type; ?>
   </h2>
<?php endif; ?>
如果你的首页是一个静态页面,帖子列表在博客页面上,或者你有普通的设置。

这将在除主页或首页外的所有运行模板的页面上输出帖子类型标题。

<?php if ( is_page(\'my-page-slug\') ) : ?>
   <h2>
      <?php wp_reset_query();
      echo $post->post_type; ?>
   </h2>
<?php endif; ?>
如果您在其他特定页面上有此内容。

结束