如何在短码功能中过滤$Content

时间:2017-04-05 作者:Top-Bot

我想在我的shortcode函数中过滤$内容,这样我得到的就是shortcode。我正在尝试动态地将一个短代码嵌套到另一个短代码中。

这是我的密码

function add_slider ($atts, $content=\'\') {

    $atts = shortcode_atts(array (
        \'align\' => \'center\',
        \'width\' => \'50%\',
        \'height\' => \'auto\'
    ), $atts);


  /*  foreach($videos as $video) :
             $return.=\'<li><a href="\'.get_permalink().\'">\'.the_title("","",false).\'</a></li>\';
        endforeach;
  */
  if( has_shortcode( $content, \'video\' ) ) {
            $content = do_shortcode($content);
       return \'<ul class="bxslider">\' . $content . \' </ul>\';
}

else {
    return \'<ul class="bxslider"> <li> No Videos Found In Slider </li> </ul>\';
}
}
add_shortcode(\'slider\',\'add_slider\' );

1 个回复
最合适的回答,由SO网友:Top-Bot 整理而成

我解决了自己的问题。

我需要过滤掉所有<br> 和我的快捷码标签之间的空白。WP是自动添加中断,我的函数将其添加到我的短代码的输出中。因此,我使用strip tags函数来过滤我的短代码的$内容

$content =  strip_tags($content);
我把它添加到我的快捷码函数中,它就像一个魔咒一样工作!

感谢那些指出了前面答案中潜在问题的人。

相关推荐

Shortcode is not working

通过阅读教程,我创建了一个简单的快捷代码:<?php /* Plugin Name: GT NoTranslate Shortcode Description: Shortcode to wrap a span with the \"notranslate\" span around text. Version: 0.1 BETA Author: Andrew Truckle Author URI: http://www.trucklesoft.co.