【wordpress教程】WordPress添加运行测试代码功能

作者 : 小编 本文共1904个字,预计阅读时间需要5分钟 发布时间: 2020-05-16 共122人阅读

一个wordpress 运行测试代码的功能,完美可用!喜欢的同学可以学习研究一下!

示例效果:

示例教程:

以下PHP代码添加至当前主题的 functions.php 文件中:

// 运行代码功能PHP脚本
$RunCode = new RunCode();
add_filter('the_content', array(&$RunCode, 'part_one'), -500);
add_filter('the_content', array(&$RunCode, 'part_two'),  500);
unset($RunCode);
class RunCode
{
    var $blocks = array();
    function part_one($content)
    {
        $str_pattern = "/(\<runcode(.*?)\>(.*?)\<\/runcode\>)/is";
        if (preg_match_all($str_pattern, $content, $matches)) {
            for ($i = 0; $i < count($matches[0]); $i++) {
                $code = htmlspecialchars($matches[3][$i]);
                $code = preg_replace("/(\s*?\r?\n\s*?)+/", "\n", $code);
                $num = rand(1000,9999);
                $id = "runcode_$num";
                $blockID = "<p>++RUNCODE_BLOCK_$num++";
                $innertext='<h3><span class="btn btn--secondary">代码预览:</span></h3><textarea id="'.$id.'" class="runcode" style="height: 100px;">'. $code . '</textarea><input class="btn btn--secondary" type="button" value="运行代码" onclick="runCode(\''.$id.'\')"/><input class="btn btn--secondary" style="margin-left: 30px;"type="button" value="全选代码" onclick="selectCode(\''.$id.'\')"/>';
                $this->blocks[$blockID] = $innertext;
                $content = str_replace($matches[0][$i], $blockID, $content);
            }
        }
        return $content;
    }
    function part_two($content)
    {
        if (count($this->blocks)) {
            $content = str_replace(array_keys($this->blocks), array_values($this->blocks), $content);
            $this->blocks = array();
        }
        return $content;
    }
}

以下JS代码添加至当前主题的 footer.php 文件中:

<script type="text/javascript">
function runCode(objid) {
  var winname = window.open('', "_blank", '');
  var obj = document.getElementById(objid);
  winname.document.open('text/HTML', 'replace');
  winname.opener = null; 
  winname.document.write(obj.value);
  winname.document.close();
}
function selectCode(objid){
    var obj = document.getElementById(objid);
    obj.select();
}
</script>

以下CSS代码添加至当前主题的例外CSS或者头部风格CSS文件中:

.runcode{
  width: 100%;
  font-size:13px;
  padding:10px 15px;
  color:#eee;
  background-color: #263540;
  margin-bottom:5px;
  border-radius:2px;
  overflow:hidden; /* 删除此行表示可以滚动代码框 */
}

在撰写文章时,用文本模式输入以下标签,标签中填写需要运行的代码即可:

<runcode>这里填写需要运行的代码</runcode>
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"www.sucaihu.com",如遇到无法解压的请联系管理员!

素材虎 » 【wordpress教程】WordPress添加运行测试代码功能

常见问题FAQ

免费下载或者VIP会员专享资源能否直接商用?
本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
提示下载完但解压或打开不了?
最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或 联络我们。
找不到素材资源介绍文章里的示例图片?
对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。

发表评论

  • 3813会员数(个)
  • 3681资源数(个)
  • 47本周更新(个)
  • 6 今日更新(个)
  • 1280稳定运行(天)

加入VIP获取全站资源
开通VIP 享更多特权,建议使用QQ登录