WordPressで独自のカスタムウィジェットを作成するための注目すべきガイド
公開: 2021-07-06WordPressウェブサイトでカスタムウィジェットを作成する方法
あなたが今しばらくの間WordPressサイトを運営しているなら、あなたは確かにウィジェットとそれらの使用についての公正な考えを持っているでしょう。 ウィジェットは優れたツールとして機能し、WordPressユーザーがWebサイトテーマのサイドバー(ウィジェット領域とも呼ばれる)にコンテンツや機能を追加するのに役立ちます。
また、ウィジェットは、必要に応じて、ヘッダー、フッターなど、WPテーマの他のいくつかの領域に追加できます。
ウィジェットは、主に、Webサイトの要素をドラッグアンドドロップするのに役立ちます。 デフォルトでは、WordPressテーマの管理ダッシュボードにいくつかのウィジェットがあります。
ただし、サイトのダッシュボードをカスタムウィジェットの作成にさらに便利にすることができます。 この投稿を通じて、WordPressWebサイトダッシュボードで独自のカスタムウィジェットを作成する方法を理解できるようになります。
関連記事:WordPress Webサイトでウィジェットを追加して使用を開始する方法は?
ダッシュボードでカスタムウィジェットを作成するにはどうすればよいですか?
サイトの管理ダッシュボードにカスタムウィジェットを作成するとします。 この目的のために、あなたがする必要がある最初のことはあなたのウィジェットをWordPressに登録することです。
そのためには、wp_add_dashboard_widget()関数を使用する必要があります。 これは、新しく作成されたウィジェットについてWordPressに通知するデフォルトのWordPress関数です。
以下は、カスタムウィジェットを登録する方法を示すコードです。
// Register your custom widget function by hooking into the 'wp_dashboard_setup' action
add_action( 'wp_dashboard_setup', 'first_custom_dashboard_widget' );
関数first_custom_dashboard_widget(){
wp_add_dashboard_widget(
'first_custom_dashboard_widget'、
//これはウィジェットスラッグです
「最初のカスタムダッシュボードウィジェット」、
//これはウィジェットのタイトルです
'first_custom_dashboard_widget_display'
//表示機能
);
}
//ダッシュボードウィジェット内に表示されるコンテンツを表示する関数を作成します。
関数first_custom_dashboard_widget_display(){
echo 'ここにウィジェットを記述しますWidget';
}
注:上記のコードは、テーマのfunctions.phpファイルに追加する必要があります。
上記のコードスニペットは、「First CustomDashboardWidget」という名前のカスタムウィジェットを作成するのに役立ちます。 コードがどのように機能するかを理解しましょう。
- コードの最初の行では、register_first_custom_dashboard_widget()関数がwp_dashboard_setupアクションフックにフックされています。 簡単に言うと、コードの最初の行は、wp_dashboard_setupアクションがテーマのコード内に表示されるたびに、first_custom_dashboard_widget()が実行されることを意味します。
- 次に、wp_dashboard_setup()関数は、次のようなさまざまなパラメーターを持つwp_add_dashboard_widget()を簡単に呼び出します。
- ウィジェットスラッグ
- ウィジェットのタイトル
- 表示機能
これらのパラメータはすべて、カスタムウィジェットを作成するために必要です。
- 最後に、my_dashboard_widget_display()関数が定義され、「これは私の最初のカスタムウィジェットです」というテキストコンテンツが含まれています。
コードを実行した後、管理ダッシュボードに移動すると、管理ダッシュボードページの下部に新しく作成されたウィジェットが追加されます。 そのウィジェットをドラッグして、好きな場所に配置するだけです。
出力:

カスタムウィジェットの位置を変更するにはどうすればよいですか?
上記のセクションでは、WordPressWebサイトダッシュボードでカスタムウィジェットを作成および追加するのに役立つコードについて説明しました。
どうやら、プラグインユーザーが「カスタムダッシュボードウィジェット」をドラッグするだけで、選択した場所に配置できるようにしたいと考えているようです。
残念ながら、WordPressには、デフォルトのウィジェットの事前並べ替えを処理できる使いやすいAPIが付属していません。 これは、カスタムウィジェットが常にダッシュボードリストの下部に表示されることを意味します。
しかし、カスタムウィジェットをすべてのデフォルトウィジェットの上に配置したい場合はどうでしょうか。 コードをいじることで、そうすることができます。
このような目的を達成するための最良の方法の1つは、メタボックスの内部配列を手動で変更することです。 次に、新しく作成したウィジェットをウィジェットリストの一番上に配置できます。 同じタスクを実行するコードは次のとおりです。
function first_custom_dashboard_widgets() {
wp_add_dashboard_widget( 'first_custom_dashboard_widget', 'First Custom Dashboard Widget', 'first_custom_dashboard_widget_function' );
// Globalize the array of the metaboxes, this will apply to all the widgets for wp-admin
global $wp_meta_boxes;
// Fetch array of the regular dashboard widgets
$normal_dashboard = $wp_meta_boxes['dashboard']['normal']['core'];
// Create a backup of the custom dashboard widget and delete it from the end of the array
$first_custom_widget_backup = array( 'first_custom_dashboard_widget' => $normal_dashboard['first_custom_dashboard_widget'] );
unset( $normal_dashboard['first_custom_dashboard_widget'] );
// Combine both the arrays together to put custom widget at the beginning
$sorted_dashboard = array_merge( $first_custom_widget_backup, $normal_dashboard );
// Save the value of sorted array back into the main metaboxes
$wp_meta_boxes['dashboard']['normal']['core'] = $sorted_dashboard;
}
このコードは、ウィジェットをまったく並べ替えていないWordPressサイトの所有者に対して機能することを覚えておいてください。 ただし、ユーザーがこの機能を実行するとすぐに、現在の設定がこれを上書きします。 その結果、ユーザーはウィジェットを一番上に移動する必要があります。
まとめ
WordPressは、Webサイトの管理ダッシュボード機能を拡張するためのいくつかのデフォルトウィジェットへのアクセスを提供しますが、それでも特定のニーズを満たすことができない場合があります。
ただし、カスタムウィジェットを作成することで、必要なすべての目標を達成し、管理ダッシュボードをより便利にすることができます。 結局のところ、ウィジェットはコンテンツと機能を追加するための優れた方法を提供します。
言うまでもなく、管理ダッシュボードでいくつかのタスクを実行するように調整された新しいウィジェットを作成すると、有益であることがわかります。
この投稿が、サイトの管理パネルでカスタムウィジェットを作成する方法をよりよく理解するのに役立つ便利なガイドとして役立つことを願っています。
コーディングの部分で問題が発生した場合は、プロジェクトの完了を支援できるWordPress開発者を雇うことをお勧めします。
著者の経歴:
Samuel Dawsonは、Designs2html LtdのWebサイトアプリケーション開発者およびファイルマネージャーです。また、HTMLからWordPressテーマへの変換にも成功しています。
彼はWordPressファイルの全体的な処理を動的に維持しています。 上記のWordPressでのウィジェット管理に関する記事は、彼によって寄稿されました。