プラグインElementorのelementor/template_library/sources/local/register_taxonomy_argsフィルタの使用方法・解説

概要

elementor/template_library/sources/local/register_taxonomy_argsフィルタは、WordPressのElementorプラグインにおいて、ローカルテンプレートライブラリのカスタムタクソノミーの登録時にその引数を変更するために使用されます。このフィルタを利用することで、タクソノミーの属性を変更したり、特定の表示設定を追加したりできます。このフィルタは、主に以下のような目的で使用されることが多いです。

  1. カスタムタクソノミーのラベルを変更する。
  2. タクソノミーが属する投稿タイプを制限する。
  3. タクソノミーの公開可否を制御する。
  4. ユーザー権限によってアクセス制限を設ける。
  5. タクソノミーのリライト設定をカスタマイズする。
  6. メタデータと連携するカスタムフィールドの追加。

構文

add_filter('elementor/template_library/sources/local/register_taxonomy_args', 'custom_taxonomy_args', 10, 1);

パラメータ

  • $args: タクソノミーを登録するための引数が含まれた配列。

戻り値

  • 変更された引数の配列。

使用可能なプラグインとバージョン

  • Elementor: バージョン3.0.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_filter('elementor/template_library/sources/local/register_taxonomy_args', function($args) {
    $args['labels']['name'] = 'カスタムテンプレート';
    return $args;
});

このサンプルコードは、タクソノミーのラベルを「カスタムテンプレート」に変更します。

サンプルコード2: 投稿タイプを制限

add_filter('elementor/template_library/sources/local/register_taxonomy_args', function($args) {
    $args['object_type'] = ['post', 'page'];
    return $args;
});

このコードでは、タクソノミーが「post」および「page」のみで使用されるように制限します。

サンプルコード3: 公開可否を制御

add_filter('elementor/template_library/sources/local/register_taxonomy_args', function($args) {
    $args['public'] = false;
    return $args;
});

このサンプルでは、タクソノミーを非公開に設定します。

サンプルコード4: ユーザー権限によるアクセス制限

add_filter('elementor/template_library/sources/local/register_taxonomy_args', function($args) {
    $args['capabilities'] = [
        'manage_terms' => 'edit_posts',
        'edit_terms'   => 'edit_posts',
        'delete_terms' => 'edit_posts',
        'assign_terms' => 'edit_posts',
    ];
    return $args;
});

このコードでは、タクソノミーの管理機能に対して「edit_posts」権限を必要とします。

サンプルコード5: メタデータのカスタムフィールド追加

add_filter('elementor/template_library/sources/local/register_taxonomy_args', function($args) {
    $args['meta_box_cb'] = null; // メタボックスのコールバックを無効に
    return $args;
});

このサンプルでは、タクソノミーのメタボックスを無効にします。

これらのサンプルコードは、標準的なPHPのシンタックスを使用しており、著作権フリーのもので構成されています。使用する際は、実際の環境や要件に応じて適切にカスタマイズを行うことが推奨されます。

この関数について質問する


上の計算式の答えを入力してください