add_posts_page

説明

mixed add_posts_page( string $page_title, string $menu_title, mixed string $capability, string $menu_slug [ , mixed $function = '' [, int $position = null ] ] )
投稿メニューにサブメニューを登録する。

パラメータ

  • $page_title
    サブメニューページのタイトル。
  • $menu_title
    プルダウンに表示されるメニュー名。
  • $capability
    サブメニューの権限(レベル数または権限名)。
  • $menu_slug
    サブメニューのスラッグ。
  • $function
    サブメニューページのコールバック関数(省略時は'')。
  • $position
    [5.3.0]サブメニューの位置を数値で指定(省略時はnull)。

返り値

サブメニューが登録できた場合はフック名を返す。ログインしているユーザーが指定された権限を所有していない場合はfalseを返す。

注意

この関数は、内部で親メニューのスラッグに'edit.php'を指定して add_submenu_page関数を呼び出している。

パラメータ$capabilityは、サブメニューを使用できるレベルまたは権限を指定できる(「LevelとCapability」を参照)。

パラメータ$menu_slugにはサイト内でユニークなサブメニューのスラッグを指定する(このスラッグは、サブメニューページのURLのパラメータとなる)。

http://ドメイン/wp-admin/edit.php?page=[$menu_slugの値]

[5.3.0]パラメータ$positionが追加された。0が指定された場合はサブメニューの最上位に、nullかサブメニュー数以上の場合は末尾に追加される。メニュー数未満の場合、array_slice関数を使ってサブメニューの配列が分割され、分割された位置に挿入される(1の場合なら2番目となる)。


使用例

  • 投稿メニューにカスタムタクソノミー'favorite'のサブメニューを登録する。
    <?php add_posts_page( 'お気に入り', 'お気に入り', 'edit_themes', 'edit-tags.php?taxonomy=favorite' ); ?>

フィルター

実行するフィルターはありません。

アクション

実行するアクションはありません。

ソースファイル

/wp-admin/includes/plugin.php

最終更新 : 2022年06月27日 09:31



お勧め

Login rebuilder:プラグイン作ってみました(2024年11月7日 更新)

昨年投稿した「ログインページを変える」をプラグイン化。ログインページを独自の名前のページ変更し、標準のログインページwp-login.phpを使用できないようにするプラグインです。部外者によるwp-login.phpのアクセスにお悩みの方にお勧めします。また2.0.0では「XML-RPCリクエストの管理機能」を追加。2.2.0では管理者のログイン時にメールで通知する機能を追加しました。

管理画面の'アイキャッチ画像'を'写真'に変える(2013年1月23日 更新)

クライアント向けに専用のテーマを提供する際、稀に管理画面内の用語の変更を依頼されることがある。今回は、'アイキャッチ画像'だとわかりにくいので'写真'に変えてほしいということだった。

カスタムフィールド関連関数のおさらい(2012年6月22日 更新)

カスタムフィールドは、投稿記事の拡張情報としてよく利用されている。投稿ページで登録した情報をアーカイブや投稿ページで表示しているが、投稿ページを表示する際にカスタムフィールドの値を更新して、サイドバーのようなページ内要素に利用したりしている。

5.3への準備:投稿写真を使っているサイトは準備しておこう(2019年10月10日 更新)

この記事は先日公開した「5.3の新機能:JPEG画像の向きを調整」の続きのようなものになる。高解像度の投稿写真を扱っているサイトは、5.3のリリースに合わせて対応を検討しておくべきことをまとめてみた。

ブロックエディターで現在の「ロケール」を取得した時のメモ(2024年8月10日 更新)

ブロックエディター向けのプラグインで日本語固有の機能を実装する際、現在のロケール(言語)を取得したい。ブロックエディターの編集時、投稿を編集しているユーザーの言語が優先され、それをどうやって取得するかを「ChatGPT」に聞いてみたのだが。。。