概要
wpforms_admin_flyoutmenu
は、WPFormsプラグイン内で管理画面のフライアウトメニューをカスタマイズするためのアクションフックです。このフックを使用すると、メニューに新しい項目を追加したり、既存の項目を変更したりすることができます。具体的な使用例としては、以下のような機能が考えられます。
- カスタムメニュー項目の追加
- 特定の条件に基づいたメニュー項目の表示/非表示
- メニュー項目のラベルの翻訳
- メニューに特定のURLリンクを追加
- メニュー項目のアイコンのカスタマイズ
- メニューのTooltip(ツールチップ)を追加
構文
add_action('wpforms_admin_flyoutmenu', 'function_name');
function function_name() {
// メニュー項目追加等のコード
}
パラメータ
function_name
: このフックにフックする関数の名前です。
戻り値
このアクションフック自体は値を返しませんが、メニューに変更を加えることができます。
WPFormsのバージョン
このアクションは、WPFormsプラグインのバージョン1.4以降で利用可能です。
ワードプレスのバージョン
ワードプレス5.0以降のバージョンで使用することができます。
サンプルコード
サンプルコード1: カスタムメニュー項目の追加
このコードでは、WPFormsのフライアウトメニューに「カスタム項目」という新しいメニューを追加します。
add_action('wpforms_admin_flyoutmenu', function() {
echo '<li><a href="' . admin_url('admin.php?page=custom-page') . '">カスタム項目</a></li>';
});
サンプルコード2: メニュー項目の非表示条件を設定
特定のユーザー権限を持つユーザーのみがメニュー項目を表示されるようにするコードです。
add_action('wpforms_admin_flyoutmenu', function() {
if (current_user_can('manage_options')) {
echo '<li><a href="' . admin_url('admin.php?page=restricted-page') . '">管理者専用</a></li>';
}
});
サンプルコード3: メニュー項目のアイコンを追加
このコードでは、メニュー項目にアイコンを追加しています。
add_action('wpforms_admin_flyoutmenu', function() {
echo '<li><a href="' . admin_url('admin.php?page=icon-page') . '"><span class="dashicons dashicons-admin-tools"></span> アイコン付きページ</a></li>';
});
サンプルコード4: メニュー項目にツールチップを追加
メニュー項目にマウスを hover した際に表示されるツールチップを追加するコードです。
add_action('wpforms_admin_flyoutmenu', function() {
echo '<li><a href="' . admin_url('admin.php?page=tooltip-page') . '" title="このページの説明">ツールチップページ</a></li>';
});
サンプルコード5: 多言語対応のメニュー表示
このコードでは、ポリラングやWPMLを使ってメニュー項目のラベルを翻訳する例です。
add_action('wpforms_admin_flyoutmenu', function() {
echo '<li><a href="' . admin_url('admin.php?page=translated-page') . '">' . __('翻訳ページ', 'text-domain') . '</a></li>';
});
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | |
register_sidebar | |
wp_loaded | |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | |
get_header | |
wp_head |