WordPress中PHP代码被转为HTML注释的问题解决求助
解决WordPress 5.9.4中插入PHP代码被转义为HTML注释的问题
问题本质
WordPress自带的编辑器(Gutenberg或经典编辑器)会自动对HTML/PHP类代码进行格式化、转义处理,尤其是手动粘贴带HTML实体(如<?php)的代码时,会触发错误的注释转换和字符转义,最终导致代码结构彻底变形。
具体解决方案
方案1:用Gutenberg代码块(推荐)
- 进入文章编辑页,点击右上角「+」添加新块,在「格式化」分类里选「代码」块
- 在右侧设置面板将「语言」设为「PHP」
- 直接粘贴原始PHP代码(无需把
<?php转成<?php),编辑器会自动保留代码结构并高亮:<?php use function PHPSTORM_META\type; $api = 'api.com'; $token = 'abcd-abcd-abcd'; $options = [ 'http' => [ 'method' => 'GET', 'header' => "Token: $token" ] ]; $context = stream_context_create($options); $resp = file_get_contents($api, false, $context); $resp = json_decode($resp, true); ?>
方案2:用经典编辑器(文本模式)
- 切换到「文本」标签(别用可视化模式)
- 用
<pre><code class="language-php">包裹原始PHP代码,直接粘贴无需转义:<pre><code class="language-php"> <?php use function PHPSTORM_META\type; $api = 'api.com'; $token = 'abcd-abcd-abcd'; $options = [ 'http' => [ 'method' => 'GET', 'header' => "Token: $token" ] ]; $context = stream_context_create($options); $resp = file_get_contents($api, false, $context); $resp = json_decode($resp, true); ?> </code></pre>
方案3:若需执行PHP代码(而非展示)
如果你的需求是让代码实际运行,不是在文章里显示代码:
- 通过FTP或后台「外观」→「主题文件编辑器」,打开主题的
functions.php或对应模板文件 - 将代码直接添加到文件末尾(注意不要破坏原有代码结构)
内容的提问来源于stack exchange,提问作者Nagaprasad T S
相关产品推荐
相关产品推荐

