在自定义帖子类型上启用快捷码

时间:2016-11-16 作者:Emil

我已经编写了一个使用短代码的插件,我已经启用了小部件中使用的短代码,但我还希望在我的自定义帖子类型页面中启用它们。

据我所知,我可能需要为此添加一个过滤器,但我找不到如何做。

    //Handling the shortcodes

    function my_shortcode_init()    {

        function my_shortcode_func($atts)   {          

           //do something          

        }
        //Register the shortcode function   
        add_shortcode(\'myshortcode\', \'my_shortcode_func\');
    }
    add_action(\'init\', \'my_shortcode_init\');


    /*
    Make shortcode work within widget
    */
    add_filter( \'widget_text\', \'shortcode_unautop\' );
    add_filter( \'widget_text\', \'do_shortcode\' );

1 个回复
SO网友:rudtek

你不应该为了让他们工作而改变任何东西。在php中,您可以只回显短代码:

// Use shortcode in a PHP file (outside the post editor).
echo do_shortcode( \'\' );

// In case there is opening and closing shortcode.
echo do_shortcode( \'[iscorrect]\' . $text_to_be_wrapped_in_shortcode . \'[/iscorrect]\' );

// Enable the use of shortcodes in text widgets.
add_filter( \'widget_text\', \'do_shortcode\' );

// Use shortcodes in form like Landing Page Template.
echo do_shortcode( \'[contact-form-7 id="91" title="quote"]\' );

// Store the short code in a variable.
$var = do_shortcode( \'\' );
echo $var;

相关推荐

如何在另一个函数中使用插件的ShortCode属性值?

我有一个插件作为一个类,其中我使用一个shortcode属性来填充$outlet变量。然而,尽管sanitize_text_field($atts[\'outlet\']) 返回所需字符串,$this->outlet = sanitize_text_field($atts[\'outlet\']) 未更新的值$outlet. 如果我为类的$outlet 最初,它在example_callback(). 插件的所有其他功能都按预期工作。只是wp_news_shortcode() 未分配$attr 价值