web-dev-qa-db-ja.com

Multisiteのインストール時に不要なウィジェットを隠したり削除したりするにはどうすればいいですか?

マルチサイトインストールを使用しています。ダッシュボードのすべてのウィジェットをwidgets.phpの下に表示したくはありません。そこで、不要なウィジェットを削除または隠す方法を見つけようとしました。私のマルチサイトの下に作成された新しいサブサイトには多くのウィジェットがありません。そうすれば、ユーザーは多くのウィジェットと混同されることはありません。

私はウィジェットに関連するファイルを見つけようとしました。しかし、私はそのようなページをwp-admin/includes/widgets.phpwp-admin/widgets.phpの両方で見つけることができませんでした。

テーマファイルでも検索しようとしましたが失敗しました。誰かが私がこれらを見つけるのを手伝ってくれる?

それとも、functions.phpを使ってそれらを隠すことができますか?

6
user391

これをあなたのfunctions.phpファイルに追加してください:

function jpb_unregister_widgets(){
  unregister_widget('WP_Widget_Pages');
  unregister_widget('WP_Widget_Calendar');
  unregister_widget('WP_Widget_Archives');
  unregister_widget('WP_Widget_Links');
  unregister_widget('WP_Widget_Meta');
  unregister_widget('WP_Widget_Search');
  unregister_widget('WP_Widget_Text');
  unregister_widget('WP_Widget_Categories');
  unregister_widget('WP_Widget_Recent_Posts');
  unregister_widget('WP_Widget_Recent_Comments');
  unregister_widget('WP_Widget_RSS');
  unregister_widget('WP_Widget_Tag_Cloud');
  unregister_widget('WP_Nav_Menu_Widget');
}

add_action( 'widgets_init', 'jpb_unregister_widgets' );

これですべてのデフォルトウィジェットが取り除かれます。特定のウィジェットを残しておきたい場合は、上記の関数からその行を削除してください。

7
John P Bloch