Can a page contain php code?

时间:2012-02-01 作者:ef2011

我试图在我的一个页面中使用以下PHP代码行:

<input name="from" id="from" value="<?php echo $_GET[\'from\'];?>" type="text" />
但它不显示空的“发件人”输入字段(在输入任何内容之前),而是显示<?php echo $_GET[\'from\'];.

我错过什么了吗?

澄清:我从管理员的Edit Page (当然是HTML选项卡,而不是可视化选项卡)。

3 个回复
最合适的回答,由SO网友:Rob Vermeer 整理而成

您不能在WordPress后端编辑器中使用PHP。也许你可以使用插件,但不是现成的。

最简单的解决方案是创建一个短代码。然后你可以使用[input type="text" name"from"] 在编辑器中。

function input_func( $atts ) {
    extract( shortcode_atts( array(
        \'type\' => \'text\',
        \'name\' => \'\',
    ), $atts ) );

    return \'<input name="\' . $name . \'" id="\' . $name . \'" value="\' . (isset($_GET[\'from\']) && $_GET[\'from\'] ? $_GET[\'from\'] : \'\') . \'" type="\' . $type . \'" />\';
}
add_shortcode( \'input\', \'input_func\' );
请参见http://codex.wordpress.org/Shortcode_API

SO网友:Simon

是的,帖子内容已清理:所有字符都转换为HTML等效字符,因此无法执行任何代码。有一些插件允许从帖子内容执行代码,但安全性很差。您最好探索短代码(创建一行伪代码以执行真正的PHP代码)或定制主题文件。

短代码http://codex.wordpress.org/Shortcode_API

SO网友:Chip Bennett

您是否试图在发布内容中输入此表单字段/PHP输出?

如果是,则:no, 你不能那样做。WordPress将剥离表单字段并清理PHP输出。

您需要在功能上添加此类内容,即直接在模板文件中添加,或者通过操作/过滤器挂钩回调添加。

结束

相关推荐

使用原生jQuery AJAX风格而不是使用admin-ajax.php有什么问题吗?

我在使用管理ajax时遇到问题。php创建一个插件。我在使用oop模块的插件中使用“add\\u action(\'wp\\u ajax\\u ajax\\u action\',\'ajax\\u action\\u stuff\')”时遇到问题。因此,我想使用jquery原生方式,如下所示:$.ajax({ url: \"test.html\", context: document.body, success: function(){ $(this).