問題描述

我正在考慮在 wordpress 中重建一個 drupal 網站,我還在圍繞系統之間的差異,特別是 cck /字段和自定義內容類型以及使用分類法的不同方法。

我想知道兩個自定義內容類型是否可以共享一個自定義分類。在 drupal 中,我可以將特定內容類型的發佈限制為一組用户,然後發佈可以具有僅與一個或多個其他內容類型 (但不是所有類型) 共享的分類。

使用角色扮演器可能出現用户方面,您可以用 wordpress 來做到嗎?我只看到具有自定義分類法的自定義內容類型,但沒有辦法在兩個或更多自定義內容類型之間共享給定的分類法,而無需在兩個地方重新創建,或通過類別/標籤全局啓用…

謝謝, – 。

最佳解決方案

在 CPT 之間共享分類

I would like to know if two custom content types can share one custom taxonomy.

簡單的説:是的,他們可以。

如何分享

正如我在 this blog post 中詳細闡述的那樣,您應該儘可能早地註冊自定義分類法和帖子類型。

將註冊過程封裝在一個功能中,掛鈎到 init 鈎子,默認優先級。

register_taxonomy(
    'some_custom_tax',
    'some_post_type',
    $array_of_arguments
);
register_post_type(
    'some_post_type',
    [
        'taxonomies' => [ 'some_custom_tax' ],
        // other arguments
    ]
);

如果您使用 register_taxonomy()的第二個參數或者使用 register_taxonomy_for_object_type(),則兩者都是一樣的:它們採用 $GLOBALS['wp_taxonomies']數組併為其分配類型對象 (類型) 。

重要的提示

只需確認您在註冊時註冊 CT 和 CPT 。否則,您將無法在查詢掛鈎期間訪問該互連。

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。