WordPress archive.php页面未显示文章仅展示标题问题求助
WordPress博客首页不显示文章列表问题排查与解决
问题核心
设置为博客首页的页面被解析为单页面(class显示page type-page),仅展示页面标题和阅读更多按钮,未加载文章列表;相同archive.php代码在其他站点可正常运行,更新WordPress后问题依旧。
解决方案
1. 修正模板层级调用
WordPress设置静态博客首页时,优先调用home.php而非archive.php(archive.php用于分类/标签等归档页面):
- 复制当前主题的
archive.php文件,重命名为home.php,放置到主题根目录。 - 清除缓存后刷新页面,验证是否加载文章列表。
2. 修复未定义变量导致的逻辑失效
代码中$blog_with_sidebar变量未初始化,会导致循环输出的条件判断失效,直接跳过文章渲染。在get_header();之后添加变量初始化代码:
<?php get_header(); ?> // 初始化博客侧边栏设置变量,避免未定义错误 $blog_with_sidebar = (!empty($tdl_options['tdl_blog_sidebar'])) ? $tdl_options['tdl_blog_sidebar'] : 'no'; // 原代码继续...
3. 强制重置博客首页查询
若WordPress仍错误使用单页面查询,在get_header();后添加查询重置代码,确保获取文章列表:
<?php get_header(); ?> // 针对博客首页强制重置查询,获取文章列表 if (is_home()) { $args = array( 'post_type' => 'post', 'posts_per_page' => get_option('posts_per_page') ); query_posts($args); } // 原代码继续...
4. 检查后台设置与页面属性
- 确认「设置-阅读」中,已正确将目标页面设为博客页面,而非「静态首页」。
- 编辑该页面,检查「页面属性」中的「模板」选项,确保未选择非归档类模板(如空白模板、自定义页面模板)。
5. 排查插件冲突
- 禁用所有第三方插件,刷新页面验证是否恢复正常。
- 逐个启用插件,定位导致查询或模板异常的插件,替换或删除该插件。
内容的提问来源于stack exchange,提问作者MartyBiggies
相关产品推荐
相关产品推荐

