最近有个项目需要在wordpress里运行php代码,可是在编辑器里输入php代码后,前台只会以文本的方式输出,非常不方便,根本实现不了我的需求。下面我们来看一下该怎么才可以实现在wordpress里运行php代码吧。
原理介绍
懂php的都知道,PHP中嵌入其他PHP文件可以用include() 或者 require() 函数,所以,为了实现在wordpress里运行php代码,我们可以把想要运行的php代码放进另一个php文件里,然后通过某种机制来调用,用下面的代码就可以实现。把这段代码放进主题的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/),下面我们来举个例看下怎么使用这段代码。
假如我想在文章中运行下面这段php代码,我就把这段代码放进一个php文件中,命名为test.php
if ( isset( $_POST['submit'] ) && empty( $_POST['string'] ) ) {
echo "Field should not be left empty";
} elseif ( isset( $_POST['submit'] ) && ( $_POST['string'] ) ) {
echo '
echo '';
echo htmlspecialchars( strrev( $_POST['string'] ) );
echo '';
}
然后用ftp工具在多媒体文件的上传路径(默认为/wp-content/vc/uploads/)新建一个php-content 文件夹(集中放这些php 文件,方便管理), 将 test.php 放到里头去。
这个时候,我们在wordpress编辑器里学文章的时候用下面的短代码插入短代码
[phpcode file="test"]
这样就可以运行相应的test.php文件喽~~
本文详细指导如何在WordPress中通过PHP文件嵌入实现动态代码运行,包括使用`php_include`函数、创建文件夹和短代码的使用方法,助您解决前后台交互问题。
652

被折叠的 条评论
为什么被折叠?



