插件内置了话题详情页和话题聚合页模板。需要让话题页面与当前主题保持一致时,可以在活动子主题中创建同名模板文件;插件会优先使用主题文件,因此无需修改插件目录。
模板文件与加载顺序
- 话题详情页使用活动主题根目录中的
single-thread.php。 - 话题聚合页使用活动主题根目录中的
page-thread.php。 - 主题中不存在对应文件时,插件回退到
wp-content/plugins/xhtheme-ai-toolbox/templates/下的内置模板。
建议始终在子主题中修改模板。直接编辑插件文件会在插件升级时被覆盖。
自定义话题详情页
复制内置模板
- 通过主机文件管理器或 FTP 打开当前活动子主题目录,例如
wp-content/themes/your-child-theme/。 - 从
wp-content/plugins/xhtheme-ai-toolbox/templates/single-thread.php复制文件到子主题根目录。 - 保留文件名
single-thread.php,再按主题结构调整容器、标题、正文、评论和推荐内容。
最小模板结构
下面的结构可作为从零创建时的起点。实际使用时请替换为主题已有的容器类和布局函数。
<?php
defined('ABSPATH') || exit;
get_header();
?>
<main id="primary" class="site-main">
<?php while (have_posts()) : the_post(); ?>
<article id="post-<?php the_ID(); ?>" <?php post_class('xhtheme-thread-single'); ?>>
<header class="entry-header">
<h1><?php the_title(); ?></h1>
</header>
<div class="entry-content">
<?php the_content(); ?>
</div>
<?php if (comments_open() || get_comments_number()) comments_template(); ?>
</article>
<?php endwhile; ?>
</main>
<?php get_footer(); ?>
自定义话题聚合页
复制聚合页模板
- 从
wp-content/plugins/xhtheme-ai-toolbox/templates/page-thread.php复制文件到活动子主题根目录。 - 保留文件名
page-thread.php。插件创建的话题聚合页面会优先调用该文件。 - 调整页面外层容器时,保留
the_content(),话题列表由页面内容和插件逻辑输出。
最小模板结构
<?php
defined('ABSPATH') || exit;
get_header();
?>
<main id="primary" class="site-main xhaitool-thread-container">
<?php while (have_posts()) : the_post(); ?>
<?php the_content(); ?>
<?php endwhile; ?>
</main>
<?php get_footer(); ?>
后台设置要求
如果“话题模板”选择了“沿用主题文章页模板”,插件会直接交还给主题的通用单篇模板,此时自定义的 single-thread.php 不会生效。需要使用自定义文件时,请选择插件默认的话题模板。
块主题会优先使用站点编辑器的模板体系,PHP 模板覆盖方式可能不会生效。块主题用户应在“外观 → 编辑器 → 模板”中调整对应模板。
验证与维护
- 清理页面缓存和对象缓存,再打开任意话题详情页检查标题、正文、评论和返回原文链接。
- 打开话题聚合页,确认列表、分页和移动端布局正常。
- 若模板没有生效,检查活动主题是否为预期子主题、文件名是否完全一致,以及后台话题模板是否选择正确。
- 插件更新后可对比内置模板的新变化,再决定是否同步到子主题版本。