0
是否有一個功能來檢查當前前端是否顯示Widget ?
這對於拉動一些樣式或腳本或對窗口部件執行其他操作是必需的。檢查當前前端是否顯示WordPress Widget
是否有一個功能來檢查當前前端是否顯示Widget ?
這對於拉動一些樣式或腳本或對窗口部件執行其他操作是必需的。檢查當前前端是否顯示WordPress Widget
請看看它是否通過回顯內容$ GLOBALS ['displayed_sidebars']和$ GLOBALS ['displayed_widgets'],例如使用print_r。
必須在爲要包含的所有側邊欄執行dynamic_sidebar後對其進行測試。
add_filter('dynamic_sidebar_params', function($params) {
global $displayed_sidebars, $displayed_widgets;
if(!in_array($params[0]['id'], $displayed_sidebars))
$displayed_sidebars[] = $params[0]['id'];
if(!in_array($params['widget_name'], $displayed_widgets))
$displayed_widgets = $params['widget_name'];
return $params;
});
wordpress.SE對這個話題的幾個職位,例如:http://wordpress.stackexchange.com/questions/2302/loading-scripts-only-if-a-particular-shortcode-or-widget -is-present/2304#2304 –
'is_active_widget()'只檢查'xyz'小部件是否在全局$ wp_registered_widgets中處於活動狀態。因此,如果您在其他邊欄中激活了「xyz」窗口小部件,即使當前頁面中沒有「xyz」窗口小部件,它也會始終返回當前頁面的活動狀態。 – zourbuth
是的,但是如果爲true,它會返回側邊欄ID。所以如果你知道當前前端有哪些側邊欄,那麼問題就解決了。所以你的問題在考慮你的其他問題的圓圈運行(http://stackoverflow.com/questions/13404283/get-wordpress-sidebars-fom-the-current-front-end/13407134#comment18323631_13407134)。 (我認爲這是正確的,但我不確定在部件的幾個實例處於活動狀態時會返回哪些側邊欄ID。) –