I'm not sure why I can't get this to work. I'm trying to remove the
that is added inside this shortcode...
[box] Text [/box]
Which results in this HTML output:
<div class="box"> Text </div>
I want to remove those spaces. I tried to usr str_replace, but it's not removing the   :
function infoButton($atts, $content = null) {
extract( shortcode_atts( array(
'class' => '',
), $atts ));
$str = '<div class="box ' . $class . '">' . do_shortcode($content) . '</div>';
$new_str = str_replace(' ','',$str);
return $new_str;
}
add_shortcode('box', 'infoButton');
I'm not sure why I can't get this to work. I'm trying to remove the
that is added inside this shortcode...
[box] Text [/box]
Which results in this HTML output:
<div class="box"> Text </div>
I want to remove those spaces. I tried to usr str_replace, but it's not removing the   :
function infoButton($atts, $content = null) {
extract( shortcode_atts( array(
'class' => '',
), $atts ));
$str = '<div class="box ' . $class . '">' . do_shortcode($content) . '</div>';
$new_str = str_replace(' ','',$str);
return $new_str;
}
add_shortcode('box', 'infoButton');
Share
Improve this question
asked Mar 14, 2016 at 21:54
LBFLBF
5393 gold badges11 silver badges28 bronze badges
3
|
1 Answer
Reset to default 0This could be due to the do_shortcode
running through wpautop
, see here for details on disabling that:
https://stackoverflow/questions/5940854/disable-automatic-formatting-inside-wordpress-shortcodes
But as frogg3862
said, what you need to do instead of that is to just trim out the beginning and ending whitespace from $content
to prevent the non-breaking space from being automatically added.
function infoButton($atts, $content = null) {
extract( shortcode_atts( array(
'class' => '',
), $atts ));
$str = '<div class="box ' . $class . '">' . do_shortcode( trim( $content ) ) . '</div>';
return $str;
}
add_shortcode('box', 'infoButton');
trim()
? – Howdy_McGee ♦ Commented Mar 14, 2016 at 21:58return trim($str," ")
but no change. – LBF Commented Mar 14, 2016 at 22:03$str = '<div class="box ' . $class . '">' . do_shortcode( trim( $content ) ) . '</div>';
– frogg3862 Commented Mar 14, 2016 at 23:04