web-dev-qa-db-ja.com

コンテンツタイプをコピーする方法

Drupal 7でコンテンツタイプをコピーする方法は?

コンテンツタイプを複製するためのボタンが見つかりません。

19
Raptor

重複してエクスポートする場合は、 機能 モジュールを使用します。

Featuresモジュールは、Drupalでの機能のキャプチャと管理を可能にします。機能とは、Drupalエンティティを集めたもので、特定のユースケースを満たします。

機能は、エクスポート可能なモジュールを含むモジュールから異なるサイト構築コンポーネントを取得し、それらを単一の機能モジュールにバンドルするためのUIおよびAPIを提供します。機能モジュールは、他のDrupalモジュールと同じですが、.infoファイルでコンポーネント(たとえば、ビュー、コンテキスト、CCKフィールドなど)を宣言するため、チェック、更新、またはプログラムで元に戻しました。

13
hpn

多分遅すぎる バンドルコピーモジュール を使用できます:

バンドルコピーは、DrupalのCCKプロジェクトに存在するコンテンツコピーモジュールの代替です。6:エクスポート/インポートをサポートしています:Nodeタイプ、分類、ユーザー、フィールドAPIフィールド、フィールドグループ

[〜#〜] update [〜#〜]7.x-2.x-devノート

以下の機能が追加されました。

  • フィールドコレクションのエクスポート/インポート
  • コンテンツタイプの複製
  • Commerceエンティティバンドルのエクスポート/インポート

Drupal 8:バンドルコピーはDrupal 8コアCMIにあります。

20
Ccile

Field tools モジュールを使用したところ、問題なく動作しました。

私が行ったのは、2番目のコンテンツタイプを作成し、このモジュール機能を使用してすべてのフィールドを新しいコンテンツタイプに複製し、モジュールをアンインストールすることだけでした。 バンドルコピー および 機能 は、コンテンツタイプを複製するばかげた方法のように見えます。これは非常にシンプルで、まさに私が望んでいたものでした。

14
leexonline

最も簡単な方法は、 バンドルコピー を使用することです。7.2バージョンは開発中ですが、完全に機能しました。

モジュールをインストールしたら、「コンテンツタイプ」ページに移動して、新しい「クローン」タブをクリックします。

[ソースバンドル]で、複製するコンテンツタイプを選択します。

[新しいバンドル名]に、作成する新しいコンテンツタイプの名前を入力します。 「クローン」をクリックすると、リストに新しいコンテンツタイプが表示されます。

フィールドツールもその役割を果たしますが、それほど単純ではありません。

4
Monique Hanford

(比較的新しい) Bundle Inherit モジュールがこれを行う非常に簡単な方法であることがわかりました。 bundle_inheritモジュールに加えて、「Bundle Inheritance Node」(bundle_inherit_node)モジュールを必ず有効にしてください。新しいコンテンツタイプを作成すると、新しい「Inheritance」タブが表示されます。

(また、「ソフト継承」と「厳密継承」のどちらかを選択できます...私が収集できる限り、「厳密継承」はフィールドの1回限りのコピーを実行するだけですが、「厳密継承」は継承階層。)

4
Matt Browne

歴史のためだけに、これを処理できるモジュールがもう1つあります。

コード内の構成(CINC)

1

それ以外の場合、コンテンツタイプクローンを使用すると、PHPコードを調べたり複雑な操作を実行したりすることなく、すばやく簡単に実行できます。

https://www.drupal.org/sandbox/davidfiaty/2745827

現時点ではサンドボックスプロジェクトですが、すぐに公式のDrupalモジュールとして利用できるようになります。

編集:Drupal 7のコンテンツタイプクローンの公式リリースはこちら! https://www.drupal.org/project/content_type_clone Drupal 8バージョンがまもなく登場します。

1
David Fiaty