2017-08-16 55 views
0

我已经看过几个主题,我看到的是“循环”,往往工作是这样的:get_template_part vs the_content?

while (have_posts()) { 
    the_post(); 
    get_template_part('content'); 
} 

,我为我的主题开发的代码如下所示:

while (have_posts()) { 
    the_post(); 
    the_content(); 
} 

我的代码也可以工作,这是我在查看其他主题的代码之前想到的。我知道使用get_template_part('content')的原因肯定是有原因的,而不是the_content()。我认为原因与在儿童主题中定制事物的能力有关,但我仔细检查了文档和WordPress代码,但我无法真正弄清楚究竟有什么区别。

那么使用get_template_part('content')优于the_content()的优点是什么?

+0

get_template_part('content');使主题轻松重复使用部分代码,从而轻松重载儿童主题。 包含主题的命名模板部分,或者如果指定了名称,则会包含专用部分。如果主题不包含{slug} .php文件,则不包含模板。 使用require包含模板,而不是require_once,因此您可以多次包含相同的模板部件。 对于$ name参数,如果该文件被称为“{slug} -special.php”,则指定“special”。 – sagar

+0

好的。为什么它更容易?如果使用the_content,为什么不能重载?我想我问的是...如果get_template_part('content')是首选的,那么怎么让the_content()不隐式地调用它?为什么the_content()甚至存在,为什么有人想要使用它?或者让我重述一下。看起来像the_content()有一个目的,并且get_template_part('content')有另一个目的,但我无法弄清楚这两个不同的目的。 –

+0

阅读此https://wordpress.stackexchange.com/a/16557 –

回答

2

get_template_part('content')& the_content()两者都是非常不同的东西供使用。

  • the_content() - >这将直接从您的页面编辑器区域的内容直接从管理到前台。

  • get_template_part(“内容”) - >这会在你的主题文件夹&打电话给一个名为content.php文件取出从该文件说,该文件可能可以包含HTML标记过&后,编辑区的内容之前。

在所有主题content.php一般情况下

有编辑的基本输出代码,但是当你使用任何自定义模板,那么你可能可以使用容易the_content()。

+0

有道理!感谢您的明确解释! –

相关问题