You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于Underscores开发WordPress主题:自定义文章类型页面侧边栏与页脚来源查询

问题描述

我正在使用Underscores开发WordPress主题,创建了名为project的自定义文章类型,对应的示例URL为:http://a.site.local/projects/a-beauty/。我的template-parts/目录下存在content-projects.php文件,内容如下:

$ cat template-parts/content-projects.php 
<h1>Project</h1>

当我访问http://a.site.local/projects/a-beauty/时,页面显示了标题,但同时也出现了侧边栏和页脚——而这两者并未在content-projects.php或index.php中定义。请问这些组件是从哪里加载的?

解答

这是WordPress模板层级机制和Underscores主题基础结构共同作用的结果:

  • 模板回退逻辑:访问自定义文章类型project的单篇内容时,WordPress会优先查找single-project.php模板文件。如果主题中没有这个文件,会依次回退到single.php、index.php来渲染页面。
  • 侧边栏与页脚的来源:Underscores主题默认的single.php(以及page.php这类基础模板)中,包含了get_sidebar()和get_footer()两个核心函数——它们分别负责加载主题根目录下的sidebar.php和footer.php文件,你看到的侧边栏和页脚就是这两个文件输出的内容。
  • content模板的定位:content-projects.php只是基础模板在循环内部调用的内容片段,仅负责输出文章核心内容,页面的整体框架(头部、侧边栏、页脚)由外层的基础模板控制。

如果想移除该自定义文章类型单页的侧边栏和页脚,可通过以下方式实现:

  • 创建single-project.php模板文件,在文件内仅调用头部和content-projects.php,不添加get_sidebar()和get_footer();
  • 在functions.php中通过条件判断,当访问project单页时取消侧边栏输出。

内容的提问来源于stack exchange,提问作者Gaut

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 17:55:22