我正在制作一个插件来创建新站点(WPMU),并且有自己的小部件,需要将其放置到它创建的新站点上。
我遇到的问题是,我无法将插件插入到新创建的站点(最好是用我的插件替换所有小部件)。从某种意义上讲,它将插件置于“非活动”状态,而不是侧边栏中。
以下是我的代码:
function se160609($blog_id, $user_id, $domain, $path, $site_id, $meta) {
switch_to_blog($blog_id);
switch_theme("twentytwelve");
register_sidebar(
array (
\'name\' => \'Main Sidebar\',
\'id\' => \'sidebar-1\',
\'before_widget\' => \'\',
\'after_widget\' => \'\',
\'before_title\' => \'\',
\'after_title\' => \'\',
)
);
update_option(\'widget_mywidget\',
array(
\'title\' => \'Policies\'
)
);
update_option(\'sidebars_widgets\',
array(
\'sidebar-1\' => array(\'mywidget\')
)
);
restore_current_blog();
}
add_action(\'wpmu_new_blog\', \'se160609\');
我还可以注册(和注销)小部件:function se160609_load_widget() {
register_widget( \'MyWidget\' );
unregister_widget( \'WP_Widget_Archives\' );
unregister_widget( \'WP_Widget_Calendar\' );
unregister_widget( \'WP_Widget_Categories\' );
unregister_widget( \'WP_Widget_Links\' );
unregister_widget( \'WP_Widget_Meta\' );
unregister_widget( \'WP_Widget_Pages\' );
unregister_widget( \'WP_Widget_Recent_Comments\' );
unregister_widget( \'WP_Widget_Recent_Posts\' );
unregister_widget( \'WP_Widget_RSS\' );
unregister_widget( \'WP_Widget_Search\' );
unregister_widget( \'WP_Widget_Tag_Cloud\' );
unregister_widget( \'WP_Widget_Text\' );
}
add_action( \'widgets_init\', \'se160609_load_widget\' );