内容.php中的_excerpt()和single.php中的get_模板_part()

时间:2013-07-15 作者:Ziik

每个人所以我创建了一个博客主题the_excerpt() 在里面content.php

我的index.php 为不同类型的帖子格式显示不同的帖子摘录。我有content-gallery.php, content-audio.php, 等等,我在每一个the_excerpt() 而不是the_content(). 如果我把the_content() 而且在“阅读更多”标签之前有很多文本,它打破了布局,因为设计是针对每篇文章的小片段进行的。

这是否意味着我不能使用get_template_part( \'content\', get_post_format() ) 在里面single.php, 因为它将返回摘录而不是全部内容?

content.php, 我可以说:

if( is_singular() ) {
    the_content();
}
或创建子页面single.php 喜欢single-gallery.php.

使用时,排列层次结构的正确方式是什么the_excerpt() 在里面content-{post-type}.php?

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

the_content() 不获取PHP文件content.php, 它只显示帖子的内容。同样地the_excerpt() 抓取一篇文章的摘录。

get_template_part 只需在您的主题中查找一个名为which的文件,并带有可选后缀。

get_template_part( \'content\' ); // content.php
get_template_part( \'content\', \'my_page\' ); // content-my_page.php
为了使多媒体资料、旁白等显示不同,请在单个中执行此操作。php

get_template_part( \'content\', get_post_format() );
它将指向content-gallery.php, content-aside.php, 等等,其回退时间为content.php 如果未定义指定的文件。

Edit:你需要做的就是重组你的content-{post-format}.php 文件。在这些内部,使用the_content(), 并创建excerpt-{post-format}.php 然后可以使用的文件the_excerpt().

然后你打电话进来index.php 可能是get_template_part( \'excerpt\', get_post_format() ), 在您的single.php 是的get_template_part( \'content\', get_post_format() )

结束

相关推荐

Replace text in excerpt

我的自定义WP安装有一个单独的主题,将用于移动用户,在我的情况下,我需要在所有摘录实例中更改html标记,但在不更改DB的情况下,我发现这个简单的功能非常完美,但我无法使其工作,什么都没有发生。function replace_content_on_the_fly($text){ $replace = array( // \'words to find\' => \'replace with this\' \'<p>\' => \'<d