前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在WordPress 的文章或页面中运行PHP 代码

在WordPress 的文章或页面中运行PHP 代码

作者头像
Jeff
发布2018-01-19 18:09:20
4.5K0
发布2018-01-19 18:09:20
举报
文章被收录于专栏:DeveWork

如果你在编辑器中输入PHP 代码,默认的话WordPress 不会为你执行这段代码的——只会文本方式输出。Tutsplus 上有一篇文章以插件的方式告知我们实现在WordPress 的文章或页面中运行PHP 代码的方法,下面介绍下。

原理小介绍

懂php 的都知道,PHP中载入其他PHP文件可以用include() 或者 require() 函数,因此为了实现在WordPress 的文章或页面中运行PHP 代码,我们可以将打算运行的代码写入一个额外的PHP 文件中,放在某个目录下,通过某种机制调用。英文原文中采用的是短代码方式,为了方便,作者直接做成了插件。

插件代码如下:

<?php /* Plugin Name: Run PHP code in Post & Page Plugin URI: http://code.tutsplus.com Description: Run PHP code in WordPress Author: Agbonghama Collins Version: 1.0 Author URI: http://tech4sky.com/ */   function php_include( $attr ) { $file = $attr['file']; $upload_dir = wp_upload_dir(); $folder = $upload_dir['basedir'] . '/php-content'. "/$file.php"; ob_start(); include ( $folder ); return ob_get_clean(); } add_shortcode( 'phpcode', 'php_include' ); ?>

上诉代码中的变量 $upload_dir['basedir'] 指代的是WordPress 中多媒体文件的上传路径(默认为/wp-content/uploads/),接下来通过一个实例说明如何使用这个短代码插件。

比如说我打算在文章中运行下面这段php代码,那么我就将这段代码放到一个php 文件中,命名为ordsbackward.php 吧!

<form method="post"> <textarea name="string"><?php echo ( isset( $_POST['string'] ) ) ? $_POST['string'] : null ;?></textarea> <br /> <input type="submit" name="submit" value="Reverse"/> </form>   <?php if ( isset( $_POST['submit'] ) && empty( $_POST['string'] ) ) { echo "Field should not be left empty"; } elseif ( isset( $_POST['submit'] ) && ( $_POST['string'] ) ) { echo '<div>Copy Result</div>'; echo '<textarea>'; echo htmlspecialchars( strrev( $_POST['string'] ) ); echo '</textarea>'; }

然后在多媒体文件的上传路径(默认为/wp-content/uploads/)新建一个php-content 文件夹(集中放这些php 文件,方便管理), 将 wordsbackward.php 丢到里面去。

那么此时,在WordPress 编辑器中写文章时候用下面的短代码插入短代码:

[phpcode file="wordsbackward"]

即可运行相应的wordsbackward.php文件,如图:

have fun!

PS:Tutsplus 上的原文不知为何已经被删除,Jeff 是在RSS 阅读器上保留下的,但还是感谢原作者。经过亲自测试代码可行。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2014/08/03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 原理小介绍
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档