Zac*_*ous 2 php wordpress wordpress-theming
我为客户创建了一个主题选项面板,但是他们希望能够在textareas中输入PHP代码并在前端执行它.
但是,当他们输入代码时,它在前端无法正常显示,请参阅以下两个屏幕截图:
看起来代码在前端显示时被剥离.它使用以下代码显示:
<?php global $options;
foreach ($options as $value) {
if (get_settings( $value['id'] ) === FALSE) { $$value['id'] = $value['std']; } else { $$value['id'] = get_settings( $value['id'] ); }
}
?>
<?php echo $ag_footer_top; ?>
Run Code Online (Sandbox Code Playgroud)
我怎样才能让它正常工作?可能吗?
如果我在主题选项中输入以下内容:
<?php wp_nav_menu( array( 'theme_location' => 'first','fallback_cb'=> ” ) ); ?>
Run Code Online (Sandbox Code Playgroud)
它被保存到数据库中:
<?php wp_nav_menu( array( \'theme_location\' => \'first\',\'fallback_cb\'=> ” ) ); ?>
Run Code Online (Sandbox Code Playgroud)
它在前端显示为:
\'first\',\'fallback_cb\'=> ” ) ); ?>
Run Code Online (Sandbox Code Playgroud)
首先,您必须使用以下内容阻止WordPress向您的内容添加斜杠:
update_option('my_option',stripslashes($_POST['my_option']));
Run Code Online (Sandbox Code Playgroud)
另一件事是你希望你的代码被执行......好吧我不知道怎么做到这一点,但是很多插件提供了这个功能,比如
Linkable Title Html和Php Widget
你应该下载插件并弄清楚它是如何工作的.
只需从数据库中获取该字段的内容,并尝试以某种方式解析它.
| 归档时间: |
|
| 查看次数: |
426 次 |
| 最近记录: |