如何制作自定义WordPress主题节目页面,而不是帖子

时间:2017-04-04 07:35:33

标签: php wordpress

我最近根据我在网上找到的指南创建了一个自定义WordPress主题。

但是,我遇到的所有指南都解释了如何设置博客网站,而不解释如何设置静态网站页面。我猜测它与我的index.php中的代码有关:

  

                >.   get_template_part( 'content', get_post_format() );

            >.   endwhile; endif; 
        >.   ?>

当我删除它时,它会删除博客布局。但是,我不知道要修改什么来制作静态页面布局。

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

get_post_format()返回帖子帖子格式。这通常会在循环中调用,但如果提供了帖子ID,则可以在任何地方使用。它通常在帖子页面/博客上找到..因此,当你想要显示博客文章时,它会在主题中使用。

你可能知道wp有不同的帖子类型。我们只拿两个。

Post (Post Type: 'post')

Page (Post Type: 'page')

get_post_format()用于获取帖子的格式,(博客文章)如果您打开wp信息中心并开始新帖子或编辑现有帖子,您将看到不同的帖子格式类型

enter image description here

从上图中可以看出,红色高亮部分是帖子格式,当你使用get_post_format() wp处理该模板时,你要求的是它应该显示帖子,而不是页面。< / p>

如果您需要页面内容,则需要使用the_content()

因此这个

get_template_part( 'content', get_post_format() );

endwhile; endif;

成为:

get_template_part( 'content', the_content() );

endwhile; endif; 

或者:

 <div class="YourContainer">
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
  <div class="YourContentDiv">

   <?php the_content();?>

  </div>
  <?php endwhile; ?>
  <?php else:
        echo "no content found";
   ?>
<?php endif; ?>
 </div>

希望这有帮助,Goodluck

答案 1 :(得分:-1)

如果查看页面模板层次结构,您将看到在哪种情况下使用哪个模板:

https://developer.wordpress.org/themes/basics/template-hierarchy/

例如,如果您创建front-page.php模板,它将优先于其他模板。

如果您在设置中设置静态主页,则所使用的模板将首先取决于层次结构,如果未设置,则首先是自定义命名的可选模板,然后是page- $ slug.php模板,例如home-page.php然后如果那不存在那么一个page- $ id.php例如15-page.php如果这不​​存在那么page.php将被使用然后singular.php然后index.php