unregister_taxonomy_for_object_type()


WordPressのunregister_taxonomy_for_object_type()関数は、特定のオブジェクトタイプ(例: 投稿、ページ)から登録されたタクソノミー(例: カテゴリー、タグ)を解除するために使用されます。

構文

unregister_taxonomy_for_object_type( string $taxonomy, string $object_type );

引数の説明:

  • $taxonomy (string) — 解除するタクソノミーの名前。
  • $object_type (string) — タクソノミーを解除するオブジェクトタイプ(例: ‘post’, ‘page’)。

例1: 投稿からカテゴリーを解除

この例では、投稿タイプからカテゴリータクソノミーを解除します。

unregister_taxonomy_for_object_type('category', 'post');

例2: カスタム投稿タイプからタグを解除

カスタム投稿タイプ「book」からタグタクソノミーを解除します。

unregister_taxonomy_for_object_type('post_tag', 'book');

例3: ページからカスタムタクソノミーを解除

ページタイプからカスタムタクソノミー「genre」を解除します。

unregister_taxonomy_for_object_type('genre', 'page');

例4: 複数のオブジェクトタイプからタクソノミーを解除

複数のオブジェクトタイプから同じタクソノミーを解除する場合、複数回関数を呼び出します。

unregister_taxonomy_for_object_type('category', 'post'); unregister_taxonomy_for_object_type('category', 'page');

例5: プラグイン内での使用

プラグイン内でタクソノミーを解除する場合、適切なフックを使用します。

add_action('init', function() { unregister_taxonomy_for_object_type('category', 'post'); });

例6: カスタムタクソノミーの解除

カスタムタクソノミー「color」をカスタム投稿タイプ「product」から解除します。

unregister_taxonomy_for_object_type('color', 'product');

例7: タクソノミー解除の確認

タクソノミーが正しく解除されたか確認するために、taxonomy_exists()を使用します。

if (!taxonomy_exists('category')) { echo 'カテゴリータクソノミーは解除されました。'; }

例8: 複数のタクソノミーを一度に解除

複数のタクソノミーを同じオブジェクトタイプから解除します。

unregister_taxonomy_for_object_type('category', 'post'); unregister_taxonomy_for_object_type('post_tag', 'post');

注意点

  • この関数を使用する際は、initフックやafter_setup_themeフック内で実行することが推奨されます。
  • タクソノミーを解除すると、関連するデータが表示されなくなるため、慎重に使用してください。

関連機能: