さまざまなメニュー、ビュー、メニューなどの2つのコンテンツタイプがあり、これらを2つの機能カスタムモジュールとしてパッケージ化しました。2つのコンテンツタイプはどちらも分類法を使用し、データベース内のいくつかの同じフィールドを使用します。これらの機能モジュールを新しいサイトにロードすると、これらの共通のフィールドとボキャブラリで競合が表示され、競合を解決する最善の方法はわかりません。
機能モジュールは連携して機能することを目的としていますが、両方が同じサイトに存在する必要はありません。それぞれが他の異なる機能でも動作する場合があります。どちらもビューのフィルタリングなどに分類法とフィールドを使用しているため、これらはそれぞれ機能定義にこれらのコンポーネントを含むことが理にかなっています。したほうがいい:
- モジュールの1つからフィールドと分類法を削除し、他のモジュールへの依存関係を宣言しますか?これは、それぞれが他方なしで機能できるため、望ましくありません。
- 機能の2つのバージョンを作成します。1つは独立して使用するためのもので、もう1つはコラボレーションするためのものです。
- フィールドと分類法を別個の機能として定義しますか?
- 競合を無視してモジュールを有効にしますか?(もしそうなら、彼らはフィールドを共有しますか?)
- 別の解決策?
これはまだテストしていませんが、2つの機能モジュールのいずれかを無効化またはアンインストールすると、他のモジュールで必要な場合でもデータベースからフィールドが削除されますか?