我试图在“用户登录”的短代码中封装一个短代码。以下是两个短代码和我在WYSIWYG中的设置
function wpfc_logged_in( $atts, $content = null ) {
if (is_user_logged_in() )
{
return do_shortcode($content);
}
}
add_shortcode(\'loggedin\', \'wpfc_logged_in\');
function info_box( $atts, $content = null ) {
extract( shortcode_atts( array(
\'type\' => \'tip\',
\'icon\' => \'\'
), $atts ) );
$return = \'<div id="info-box"><div class="info-box \'.$type.\'"><p>\'.$content.\'</p><a href="#" class="info-close-icon"></a></div></div>\';
return $return;
}
add_shortcode(\'info_box\', \'info_box\');
所见即所得:
[loggedin]
[ info_box type=\'setting\' ]content text[ /info_box]
[/loggedin]
最合适的回答,由SO网友:birgire 整理而成
看起来您的短代码中有额外的空格。
尝试
[loggedin]
[info_box type=\'setting\']content text[/info_box]
[/loggedin]
而不是
[loggedin]
[ info_box type=\'setting\' ]content text[ /info_box]
[/loggedin]