汎用API - ダッシュボード・ウィジェット

WordPress Dashboard Widgets APIについてよく耳にしますが、これは一体何なのでしょうか。この API が何に使われるのか、なぜ WordPress サイトにとって重要なのか、そしてダッシュボードにウィジェットを簡単に追加する方法について説明します。サイトの機能を強化しましょう。

汎用API - ダッシュボード・ウィジェット

ダッシュボード・ウィジェットAPIとは

Dashboard Widgets APIは、WordPressが提供するツールセットで、ダッシュボード上のウィジェットを簡単に追加、削除、変更することができます。情報を表示したり、特定のアクションを実行させたりと、ユーザーと直接コミュニケーションを取りたい場合に最適です。

これらの例を見てみよう:

  • ジェットパックプラグインダッシュボードにウィジェットを追加し、サイトの訪問統計や人気の投稿やページを見ることができます。
  • シンプルなポッドキャスティング: このプラグインにはSeriously Simple Statsが付属しており、ブログの統計情報を見ることができます。また、カストスのニュースを表示するRSSフィードウィジェットを備えています - カストスは、このブログプラグインを開発した会社です.

これらのAPIとウィジェットは、WordPressのダッシュボードをより強力でパーソナライズされたものにし、情報の表示とユーザーとのやり取りをより直接的で効率的なものにします。

汎用API - ダッシュボード・ウィジェット

ダッシュボード・ウィジェットAPIの使用方法

WordPressバージョン2.7から、Dashboard Widget APIにより、WordPress管理画面のダッシュボードに新しいウィジェットを簡単に追加できるようになりました。主な機能は以下のとおりです。wp_add_dashboard_widget() 機能.この関数は複数の引数を取る:

  1. $widget_id- ウィジェットのユニークID。ウィジェットのHTML出力でid属性としても使用されます。
  2. $widget_name- ウィジェットの名前
  3. $コールバック- ウィジェットの内容を出力するために呼び出される関数。この関数はウィジェットの内容を表示します。

さらに、いくつかのオプションのパラメーターを指定することができる。

  1. $コントロール_コールバック- コントロールがウィジェットを構成するために使用したデータを出力し、コントロールによって送信されたデータを処理するために呼び出されるオプションの関数。
  2. $callback_args- コールバック関数に渡されるオプションのパラメータの配列。
  3. $context- ウィジェットが表示するカラムを定義するオプションの文字列。デフォルト値は "normal "ですが、"side"、"column3"、"column4 "などのオプションがあります。"
  4. $プライオリティ- コンテキストのウィジェットの優先順位を定義するオプションの文字列。デフォルト値は "core "ですが、"default"、"high"、"low "などのオプションがあります。

どのように機能するかを理解するために、サンプルのダッシュボード・ウィジェットを作ってみよう。

汎用API - ダッシュボード・ウィジェット

ダッシュボード・ウィジェットの追加

初期設定と出力

まず、wp-content/pluginsディレクトリに新しいプラグインディレクトリとプラグインのPHPファイルを作成します。この例ではwp-learn-ダッシュボード・ウィジェット.

プラグインをWordPressプラグインとして認識させるには、少なくとも1つのプラグイン名の値を含むプラグインヘッダーを追加する必要があります。

ほとんどのWordPress APIと同様に、まずアクションをフックします。この場合wp_dashboard_setup リグこのアクションは、ダッシュボードが初期化されたときにトリガーされます。ここにウィジェットを追加します。

add_action( 'wp_dashboard_setup', 'wp_learn_dashboard_widget' );
関数 wp_learn_dashboard_widget(){
    wp_add_dashboard_widget(
        'wp_learn_dashboard_widget'、
        'WordPressダッシュボードウィジェットを学ぶ'.
        'wp_learn_dashboard_widget_callback'.
    );
}

関数 wp_learn_dashboard_widget_callback(){
    echo '<p>ハロー、ワールド!</p>';
}

このコードを空のプラグインファイルに追加し、プラグインを有効にしてダッシュボードをロードすると、ダッシュボードの最初のカラムの一番下にウィジェットが表示されます。

汎用API - ダッシュボード・ウィジェット

コンテンツのコールバック関数は、有効なHTMLをコールバックする限り、多くの柔軟性を持っています。

wp_get_recent_posts() 関数を使ってみるウィジェットに最新記事のリストを追加する。

関数 wp_learn_dashboard_widget_callback(){
    $args = array(
        'numberposts' =&gt; 5, 'post_status' =&gt; 'publish', 'post_status' =&gt; 'publish')
        'post_status' =&gt; 'publish'(投稿ステータス)
    );
    $recent_posts = wp_get_recent_posts( $args );
    echo '<ul>';
    foreach( $recent_posts as $recent ){ { { $recent_posts as $recent )
        echo '<li><a href="/ja/' . get_permalink( $recent['ID'] ) . '/">' . $recent['post_title'] . '</a></li>';
    }
    エコー '</ul>';
}

ウィジェットコントロールの追加

ウィジェットを設定するために、いくつかのコントロールを追加することもできます。例えば、表示される投稿の数をコントロールしたいとします。そのためには、コントロールのコールバック関数を設定します。

呼び出す関数を追加するwp_learn_dashboard_widget_control()でデータを処理する。

関数 wp_learn_dashboard_widget_control(){
    echo '';
    echo ''; ''; }.
}

ダッシュボードを更新しても何も起こらないように見えますが、ウィジェットにカーソルを合わせると、「設定」を示す新しいリンクが表示されます。このリンクをクリックすると、先ほど作成したフォームが表示されます。

汎用API - ダッシュボード・ウィジェット

次に、フォームから送信されたデータを処理するために、コントロールのコールバックを更新する必要があります。

データを保存するにはupdate_option() 関数この関数は、その値をオプション・テーブルに格納する。

関数 wp_learn_dashboard_widget_control_callback(){
    if (isset($_POST['wp_learn_dashboard_widget_numberposts'])){
        update_option( 'wp_learn_dashboard_widget_numberposts', sanitize_text_field( $_POST['wp_learn_dashboard_widget_numberposts'] ) );;
    }
    $number_posts = get_option( 'wp_learn_dashboard_widget_numberposts', 5 );
    echo '';
    echo ''; }'.
}

その後、コンテンツ・コールバック関数に戻り、配列を更新する必要がある。1TP4タルグをクリックして保存した値を使用します。値を取得するにはget_option()関数.

関数 wp_learn_dashboard_widget_callback(){
    $numberposts = get_option( 'wp_learn_dashboard_widget_numberposts', 5 );
    $args = array(
        'numberposts' =&gt; $numberposts、
        'post_status' =&gt; 'パブリッシュ'
    );
    $recent_posts = wp_get_recent_posts( $args );
    echo '<ul>';
    foreach( $recent_posts as $recent ){ { { $recent_posts as $recent )
        echo '<li><a href="/ja/' . get_permalink( $recent['ID'] ) . '/">' . $recent['post_title'] . '</a></li>';
    }
    エコー '</ul>';
}

評決を下す

オプションのコールバックパラメータ、コンテキストパラメータ、プライオリティパラメータの使用例など、ダッシュボードウィジェットの使用に関する詳細はダッシュボード・ウィジェットAPIセクション.


お問い合わせ
記事が読めない?無料でお答えします!個人サイト、中小企業サイトのための無料ヘルプ!
電話:020-2206-9892
QQ咨询:1025174874
Eメール:info@361sale.com
勤務時間:月~金、9:30~18:30、祝日休み
投稿者:photon fluctuations、リツイート(帰属表示付き):https://www.361sale.com/ja/6842/

好き (2)
前へ 2024年3月30日 午前10時6分
次のページ 2024年3月30日 11時32分

おすすめ

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

お問い合わせ

020-2206-9892

QQ咨询:1025174874

Eメール:info@361sale.com

勤務時間:月~金、9:30~18:30、祝日休み

カスタマーサービス WeChat
グローバルユーザー登録およびログインを容易にするため、電話によるログイン機能を停止いたしました。ログインに問題が発生した場合は、カスタマーサービスまでご連絡ください。