尝试从函数中推导出短码

时间:2014-05-25 作者:Ciarán

我有一个主题,用于插入短代码的wysiwyg按钮没有出现。我正在尝试手动键入将输出所需选项卡的快捷码。我正在查看生成短代码的函数,以尝试推断可能的情况。功能是

    function display_tabs(){

    var code        = \'[tabs \';
    var tab_names   = \'\';
    var tabs        = \'\';
    var tab_index   = 0;

    $(\'.shortcode-dynamic-items\').each( function(){

        $(this).children(\'.shortcode-dynamic-item\').each( function(){

            tab_index++;

            tabs += \'[tab id=\' + tab_index + \']\';

            //input loop for extra attrs
            $(this).children(\'#options-group\').find(\'.attr\').each( function(){

                if( $(this).attr(\'data-attrname\') == \'tab_name\' ){

                    tab_names += \'tab\' + tab_index + \'="\' + $(this).val() + \'" \';
                }

            });

            // if the shortcode has content
            if( $(this).find(\'#shortcode-content\').length > 0 ){

                tabs += $(this).find(\'#shortcode_content\').val();

            }

            tabs += \'[/tab]\';

        })
    });

    code += tab_names + \']\' + tabs + \'[/tabs]\';

    return code;
}
我尝试了一些尝试,并在页面上显示了选项卡,但选项卡的内容没有显示,也没有在它们之间切换

[tabs 1 2 3]
[tab]Content for tab one goes here.[/tab]
[tab]Content for tab two goes here.[/tab]
[tab]Content for tab three goes here.[/tab]
[/tabs]
是否有可能从函数中准确计算出它应该是什么?

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

我想知道这是否可行:

[tabs tab1="Tab 1" tab2="Tab 2" tab3="Tab 3"]
    [tab id="1"]Content for tab one goes here.[/tab]
    [tab id="2"]]Content for tab two goes here.[/tab]
    [tab id="3"]]Content for tab three goes here.[/tab]
[/tabs]
还应检查是否存在快捷码定义:

add_shortcode( \'tabs\', \'some_function_for_tabs\' );
add_shortcode( \'tab\',  \'some_function_for_tab\' );

结束

相关推荐

Shortcode and variable

我需要一些帮助,这可能是一个noob问题,我正在尝试向我的短代码中添加一个字符串变量。以下是我目前掌握的情况:$instagram_title = get_post_meta(get_the_ID(), \'instagram_title\', true); if(isset($instagram_title) && $instagram_title != \"\") : echo do_shortcode(\"[easy-instagram limit=2 cap