WordPress从短码输出中删除斜杠

时间:2017-10-11 作者:Dave

我遇到了一个问题,我想做的是通过一个短代码传递一个url并将其用作背景图像,问题是url被处理,所有斜杠都被删除。我试图删除wordpress过滤器remove_filter( \'the_content\', \'wpautop\' );) 但这似乎没有什么区别。

这是我的代码:

function section_shortcode_func( $atts, $content = null ){
    $atts = shortcode_atts(
        [
        \'bgimage\' => \'\',
        ], $atts, \'section\'
    );
    $return = \'<div class="section" style="background-image: url("\'. $atts[\'bgimage\'] .\'")">\';  
}

1 个回复
SO网友:Jaed Mosharraf

下面是正确的短代码函数

function section_shortcode_func( $atts, $content = null ){

    $atts       = shortcode_atts( array( \'bgimage\' => \'\' ), $atts);
    $bgimage    = isset( $atts[\'bgimage\'] ) ? $atts[\'bgimage\'] : \'\';

    ob_start();
    echo "<div class=\'section\' style=\'background-image: url($bgimage)\'>";  
    return ob_get_clean();
}
现在你可以这样称呼它

[section bgimage="xxx.xxx/wp-content/uploads/2017/10/xxx.jpg"] 

结束

相关推荐

Vue.js + AJAX Shortcode

我知道以前有人问过这个问题,但我找不到具体用例的实质性答案。Overview我一直在使用RESTAPI和Vue开发一个基于Wordpress的网站。js作为前端框架。我在获取帖子、显示数据等方面没有问题。Issue自Vue以来。js在客户端运行,我在使用需要在php中呈现服务器端的插件/短代码时遇到了一些问题。我正在寻找一种解决方案,在php函数中呈现一个短代码,并将呈现的数据发送到我的前端,最终使用Vue显示它。js。JSvar http = new XMLHttpRequest(); var