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

如何在WordPress FSE主题中插入并运行PHP代码?

解决WordPress FSE主题中在单页模板运行PHP代码的问题

方法一:让single.php被WordPress正确识别并使用

将single.html改为single.php后WordPress未加载它,反而用index.html,核心原因是PHP模板缺少必要的模板声明,导致系统无法识别它是单页模板。按以下步骤修改:

  1. 在single.php文件最顶部添加模板注释:
<?php
/**
 * Single Post Template
 *
 * @package Twenty Twenty-Three
 */
?>

注释里的主题名称要和你使用的主题对应,比如用Twenty Twenty-Two就改成对应名称

  1. 将原single.html的内容粘贴到注释下方,在需要插入PHP代码的位置直接编写逻辑,示例如下:
<?php
/**
 * Single Post Template
 *
 * @package Twenty Twenty-Three
 */
?>

<!-- wp:template-part {"slug":"header","tagName":"header"} /-->

<!-- wp:group {"tagName":"main"} -->
<main class="wp-block-group">
    <!-- 插入自定义PHP代码示例 -->
    <?php echo '当前文章ID:' . get_the_ID(); ?>

    <!-- wp:group {"layout":{"inherit":true}} -->
    <div class="wp-block-group">
        <!-- wp:post-title {"level":1,"align":"wide","style":{"spacing":{"margin":{"bottom":"var(--wp--custom--spacing--medium, 6rem)"}}}} /-->
        <!-- 原模板其他内容保持不变 -->
    </div>
    <!-- /wp:group -->

    <!-- 剩余模板内容... -->
</main>
<!-- /wp:group -->
<!-- wp:template-part {"slug":"footer","tagName":"footer"} /-->
  1. 保存文件后刷新单页,WordPress会正确加载single.php并执行其中的PHP代码。

方法二:不修改扩展名,在single.html中通过短代码运行PHP

如果不想改动原single.html的扩展名,可通过自定义短代码嵌入PHP逻辑:

  1. 在主题的functions.php文件中添加短代码函数:
function custom_single_post_php_code() {
    // 编写你的PHP逻辑
    $output = '当前文章作者:' . get_the_author();
    $output .= '<br>发布日期:' . get_the_date();
    return $output;
}
add_shortcode('custom_single_php', 'custom_single_post_php_code');
  1. 进入WordPress后台打开single.html模板编辑器,插入「短代码」块,输入[custom_single_php]后保存模板。

  2. 刷新单页,短代码会被替换为PHP代码执行后的内容。

注意事项

  • 修改主题文件前请先备份原文件,避免操作失误导致网站故障。
  • FSE主题中,块模板(.html)优先级高于传统PHP模板,若同时存在single.html和single.php,系统会优先加载single.html;若想使用PHP模板,需删除或重命名single.html。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 02:33:31