問題描述
我正在使用一些具有短碼的外掛… 但是,我不是為內容建立公共頁面,而是使用 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 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。