概要
cptui_taxonomy_submit_add
は、Custom Post Type UIプラグインによって提供されるフックで、独自のタクソノミーを追加する際に使用されます。このアクションは、タクソノミーを作成したときにカスタム処理を実行することを可能にします。
このアクションは、以下のような機能を実装する際によく使われます。
- タクソノミーの追加後にデフォルトの設定を適用する
- タクソノミーの説明を自動で追加する
- 特定の条件に基づいてタクソノミーに関連するカスタムメタデータを追加する
- タクソノミーに新しい用語を自動的に挿入する
- タクソノミーの作成時に通知を送信する
- タクソノミーにカスタムスタイルを追加する
構文
add_action('cptui_taxonomy_submit_add', 'your_function_name', 10, 2);
パラメータ
$taxonomy
:登録するタクソノミーの名前$args
:タクソノミーに付随する引数の配列
戻り値
このアクションには戻り値はありません。アクションフックで特定の処理を実行するための手段です。
使用可能なプラグインとバージョン
- Custom Post Type UIのバージョン:1.10.0以上
- WordPressのバージョン:5.0以上
この関数のアクションでの使用可能性
アクション名 | 使用例 |
---|---|
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 |
サンプルコード
サンプル1: タクソノミーにデフォルトの説明を追加
このサンプルコードは、新しいタクソノミーが追加されたときに、その説明をデフォルトで設定します。
add_action('cptui_taxonomy_submit_add', 'add_default_taxonomy_description', 10, 2);
function add_default_taxonomy_description($taxonomy, $args) {
if ($taxonomy === 'custom_taxonomy') {
// デフォルトの説明を設定
update_option('taxonomy_' . $taxonomy . '_description', 'このタクソノミーのデフォルト説明');
}
}
サンプル2: タクソノミーに用語を自動で追加する
このコードは、タクソノミーが追加された時に、自動的に特定の用語を追加します。
add_action('cptui_taxonomy_submit_add', 'add_default_terms_to_taxonomy', 10, 2);
function add_default_terms_to_taxonomy($taxonomy, $args) {
if ($taxonomy === 'custom_taxonomy') {
// デフォルトの用語を追加
wp_insert_term('デフォルト用語1', $taxonomy);
wp_insert_term('デフォルト用語2', $taxonomy);
}
}
サンプル3: タクソノミー登録後のカスタムメタデータ追加
このサンプルは、新しいタクソノミーに関連するカスタムメタデータを追加します。
add_action('cptui_taxonomy_submit_add', 'add_custom_metadata_to_taxonomy', 10, 2);
function add_custom_metadata_to_taxonomy($taxonomy, $args) {
if ($taxonomy === 'custom_taxonomy') {
// カスタムメタデータを追加
add_option('custom_taxonomy_custom_meta', 'カスタム値');
}
}
サンプル4: タクソノミー作成時に通知を送信
このサンプルコードは、新しいタクソノミーが追加されたときにメール通知を送信します。
add_action('cptui_taxonomy_submit_add', 'send_taxonomy_created_notification', 10, 2);
function send_taxonomy_created_notification($taxonomy, $args) {
if ($taxonomy === 'custom_taxonomy') {
// メール送信
wp_mail('admin@example.com', 'タクソノミーが作成されました', '新しいタクソノミー "' . $taxonomy . '" が作成されました。');
}
}
サンプル5: タクソノミーにカスタムスタイルを追加
このコードは、追加されたタクソノミーにカスタムスタイルを適用します。
add_action('cptui_taxonomy_submit_add', 'add_custom_style_to_taxonomy', 10, 2);
function add_custom_style_to_taxonomy($taxonomy, $args) {
if ($taxonomy === 'custom_taxonomy') {
// カスタムスタイルを適用
add_filter('taxonomy_' . $taxonomy . '_style', function() {
return '<link rel="stylesheet" href="' . get_template_directory_uri() . '/css/custom-taxonomy.css">';
});
}
}
これらのサンプルコードは、cptui_taxonomy_submit_add
アクションを利用して、タクソノミーの追加をトリガーに様々な処理を行うための基礎的な使い方を示しています。正確な要件に応じて、これらのコードは適宜調整することができます。