問題描述

我正在使用一些具有短碼的外掛… 但是,我不是為內容建立公共頁面,而是使用 add_menu_page 在管理員中建立了一些新頁面,我需要知道如何在此上下文中使用 do_shortcode()

就這樣,所有的功能都會吐出字串。我假設是因為在一個管理頁面中沒有可用的短程式碼 API 。

如何解決這個問題?沒有可以找到的檔案,說明如何在 WP 管理員… 中使用短碼,或者甚至可能。


具體來說我試圖在 WP 管理員中使用 WooCommerce 簡訊。我討厭這樣一個事實:外掛不會使用 WP 後端進行帳戶/使用者管理。

最佳解決方案

而不是呼叫 do_shortcode()只需呼叫與短程式碼相關的功能。

例子

有一個名為 [example]的短碼和一個註冊為短碼處理程序的功能:

function example_shortcode( $atts = array(), $content = '' )
{
    extract(
            shortcode_atts(
            array (
            'before' => '',
            'after' => '',
            ),
            $atts
       )
   );

    return $before . $content . $after;
}
add_shortcode( 'example', 'example_shortcode' );

在您的管理頁面中,您只需呼叫該功能:

echo example_shortcode(
    array ( 'before' => 'This ', 'after' => '!' ),
    'works'
);

輸出:This works!

do_shortcode()更快更可靠。

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。