0

是否有检查小部件是否显示在当前前端的功能?
这对于拉取某些样式或脚本或对小部件执行其他操作是必要的。

4

1 回答 1

0

请通过回显内容 $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[0]['widget_name'], $displayed_widgets ))
        $displayed_widgets[] = $params[0]['widget_name'];

    return $params;
});
于 2012-11-16T17:01:00.710 回答