Yoastのプラグインは、メニューを追加することだけが目的の場合、実際には非常に良い例です。基本的に、管理バーは、サイドバーにある同じプラグイン管理ページへのリンクの代替セットにすぎません。トップレベルのSEOメニューを追加するために、Yoastは次のことを行います。
$wp_admin_bar->add_menu( array( 'id' => 'wpseo-menu', 'title' => __( 'SEO' ), 'href' => get_admin_url('admin.php?page=wpseo_dashboard'), ) );
これにより、管理バーに「wpseo-menu」という名前のメニューが追加され、ユーザーがリンクをクリックするとプラグインのダッシュボードに移動します。子リンクも同様の方法で追加されます。
$wp_admin_bar->add_menu( array( 'parent' => 'wpseo-menu', 'id' => 'wpseo-kwresearch', 'title' => __( 'Keyword Research' ), '#', ) );
追加するメニューの「親」を指定するだけです。
その後、$wp_admin_bar->add_menu()
必要なときに深く呼び出し、必要なときに呼び出して、適切な情報を指定できます。
参考までに、変数$wp_admin_bar
はWP_Admin_Bar()
WordPress内のクラスのインスタンスです。いくつかの異なるメソッドとプロパティがありますが、ここで最も興味のあるものは、明らかにadd_menu()
です。このメソッドは特定のパラメーターを受け入れます。
- タイトル -デフォルトはfalse
- href-デフォルトはfalse、
- parent-デフォルトはfalse-そのメニューのサブメニューのID値を渡します
- id-デフォルトはサニタイズされたタイトル値です。
- meta-デフォルトはfalse-次のオプションの配列:
array( 'html' => '', 'class' => '', 'onclick' => '', target => '' );
しかし、WP_Admin_Bar()
クラスの残りの部分はプラグ可能です。それはまさにあなたが何をしようとしているのか、そしてあなたがそれをどのようにしたいのかに依存します。
関連項目: