WordPress网站如果在页面或文章的编辑器中直接输入PHP 代码,WordPress是不会执行这段代码的。那么有什么方法可以实现呢?下面的文章就来介绍WordPress网站中用短代码运行PHP脚本的方法。
为了实现在WordPress 的文章或页面中运行PHP 代码,我们可以将打算运行的代码写入一个单独的PHP 文件中,放在某个目录下,然后用短代码的方式,通过include() 或者 require() 函数载入上面的这个PHP文件。
方法步骤:
1.编辑主题的functions.php文件
找到主题目录的functions.php文件
一般位于 /www/wwwroot/网站域名/wp-content/themes/主题名称/functions.php
加入如下代码:
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)
我们在/wp-content/uploads这个目录下,新建了一个目录/php-content,专门用来存放我们要运行的PHP代码
2.编写要运行的PHP代码文件
假如我想在页面或文章中运行下面这段php代码,我就把这段代码放进一个php文件中,就取名为url-form.php吧
<?php
$utime = time();
if(isset($_POST[‘submit’]))
{
$cmd2 = “you-get -o onlyget/ -O $utime “.$_POST[‘website’];
passthru($cmd2, $status);
//echo “cmd2zhuangtaima”.$status;
}
?>
<form action=”<?php echo htmlentities($_SERVER[‘PHP_SELF’])?>” method=”post”>
<input type=”text” name=”website” id=”website”><br>
<br>
<button type=”submit” name=”submit” style=”color:#ffffff”>Submit</button>
</form>
<br>
<a href=”dl.php?action=download&fname=<?php echo $utime?>” style=”color:#ffffff”> <button>Download</button> </a>
然后将url-form.php放到/php-content 文件夹里
3.调用
这个时候,我们在WordPress编辑器里写文章的时候用下面的语句插入短代码
[phpcode file=”url-form”]
这样就可以运行相应的url-form.php文件啦。
效果就像下面这样
