我们开始着手网站的博客区域。我们希望将网站的博客区域放在 /blog/ – 所以我们最终为其创建了一个名为 page-blog.php 的页面模板,并使用“设置 > 阅读”设置将该页面设置为博客主页。这样,我们就可以对该页面及其显示内容进行非常具体的控制。在该模板中,我们使用自定义的 WP_Query 循环来获得我们想要的内容。
我们决定 /blog/ 应该显示最新博客文章的全部内容。对于用户从主页点击的内容(一个大按钮,上面写着最新文章:博客文章名称)来说,这是有道理的。稍后我们将处理如何处理存档。
说到主页,我们在 home.php 模板上使用了几乎相同的查询/循环来获取最新博客文章的名称。
在使用 WP_Query() 后,您不应该重置查询吗?或者如果在一个页面上只使用一次,是否重要?
我认为这并不重要。WP_Query 不会影响页面上的默认查询。如果我们使用 query_posts,那就会有影响。虽然很有趣的是,在 WP_Query 的 Codex 中,他们的示例确实重置了查询。但是……他们在之前也说过这并不重要。
嘿,Chris,
在某个时候你说 WordPress 检测到了博客页面的模板,而没有在 <?php 和 ?> 之间使用 /*Template name: Blog */ => 嗯……它之所以检测到它,是因为你刚刚创建的 .php 文件的名称。
WordPress 检测所有 page-**yourcustomname**。php 文件,并自动将其分配给 http://yourdomain.dev/**yourcustomname**(如果你已经在后台创建了该页面)。
这样,你就不必转到该特定页面,在仪表盘上选择你刚刚创建的模板。所以在这种情况下,不需要 /* Template name: Blog */ 行。
无关主题
我一直关注 CSS-Tricks 从一开始,可以肯定地说,这个网站是我信任的网络开发资源之一。感谢迄今为止的所有精彩内容!
当它只是显示单个帖子时,为什么还需要博客?
主页导航可以引入最新帖子并链接到永久链接,然后只需使用 single.php 模板来显示它。我对 WP 还比较陌生,所以可能遗漏了一些东西。
不过,这是一个很棒的系列。
干杯
这当然是一种可能性。目前的主要区别在于 /blog/ 页面没有列出所有评论。将来,/blog/ 可以用来显示多个博客文章,而不仅仅是一个。它被证明是有用的,因为它可以作为 ajax 的目标,仅提取最新帖子,但这很容易更新。