2

非常に大きな階層分類法を持つサイトを継承しました。

Vocabulary name: categories
--term: company name
---- many child terms
-- term: country
---- many child terms
-- term: issue
---- many child terms

これらの親用語をそれぞれ独自の語彙として設定すると、適切なコンテンツを含む検索ファセットとビューを簡単に作成できることに気付きました。

company
country
issue

そこで、新しい語彙を作成し、Taxonomy Managerを使用してすべてのサブ用語を新しい語彙に移行しました。次に、Article ノードのコンテンツ タイプを更新して、これら 3 つの語彙に関連付けました。

残念ながら、Article ノード (4,000 個すべて) 間の用語の関係にも気付きましたが、用語が表示されなくなりました。この関係は、Taxonomy Manager モジュールによって維持されると思いました。

Article ノードの語彙参照を更新する方法を探していましたが、語彙がノードにどのように関連付けられているかはまだわかりません。新しい語彙ごとに新しい field_data_field_vocabulary-machine-name テーブルが作成されていることがわかります。これは、termID とノード/エンティティ ID が関連付けられている場所です。ただし、用語をある語彙から別の語彙に移動するときに、ノードの語彙を自動的に更新する方法がわかりません。

私は最近、このサイトを Drupal 6 から 7 に移行したので、D6 からの多くのデッド テーブルがデータベースを混乱させていることは役に立ちません。

--

私は今、新しい標準の D7 インストールをセットアップし、語彙/ノードの関係がどこで定義されるかを把握しようとして、db のデフォルト テーブルを調べています。私の古いデータベースでは、TermID は Node テーブルのノードに正しく関連付けられているように見えますが、VocabularyID/TermID/NodeID が保存/更新されている場所がわかりません。

4

3 に答える 3

1

このモジュールを試してください:http://drupal.org/project/taxonomy_manager

このモジュールは、分類法を管理するための強力なインターフェースを提供します。語彙は動的ツリービューに表示され、親用語を展開してネストされた子用語を一覧表示したり、折りたたんだりすることができます。

タクソノミーマネージャーには、次の操作と主要な機能があります。

動的ツリービュー一括削除新しい用語の一括追加階層内の用語の移動用語のマージ(7.xの用語マージモジュールを使用)上下矢印による高速ウェイト変更(およびAJAX保存)AJAXを利用した用語編集フォームシンプルな検索インターフェイスCSV用語のエクスポートi18nによる多言語語彙のサポート(言語用語ごと)階層内の用語の移動、新しい翻訳の追加、異なる語彙間の用語の切り替えのためのダブルツリーインターフェイスタクソノミーマネージャーを使用するには、JavaScriptを使用し、ブラウザーで画像の自動読み込みを有効にする必要があります。

于 2013-01-22T13:38:00.950 に答える
0

->しかし、語彙がノードにどのように関連付けられているかはまだわかりません

Drupal 7 では、タクソノミーの参照は Drupal 6 の場合とは大きく異なります。語彙を Drupal 7 のノードに関連付けたい場合は、その用語をコンテンツ タイプのフィールドとして追加する必要があります。

  1. admin/structure/types/manage/article/fields に移動して、記事のコンテンツ タイプのフィールドを追加/削除/変更できます
  2. 新しいフィールドを追加し、好きな名前を付けて、ドロップダウンから「用語参照」タイプを選択してください。
  3. プルする正しい語彙を選択していることを確認してください
  4. 残りの 2 つの語彙について、この手順を繰り返します (さらに 2 つのフィールドを追加します)。
  5. admin/structure/types/manage/article/display に移動し、これらの新しいフィールドをノードに表示するか非表示にするかを変更します

=============== 追加 ==================

Drupal 7 では、用語は他のフィールドとまったく同じであるため、情報を格納する新しく作成されたテーブルに、DB 内の関係が表示されます (もちろん、適切な用語参照フィールドをコンテンツ タイプに追加した場合のみ)。その分野について。たとえば、デフォルトで Drupal 7 に付属する標準の「タグ」ボキャブラリの場合は、field_data_field_tags と呼ばれる場合があります。そのテーブルには、entity_id (ノードの ID) 列field_tags_id (用語の ID) 列が表示されますが、その列は特定の用語に対して異なる名前を持つ場合があります。Drupal 7 では 3 つの個別のフィールドになるため、用語とノードの関係ごとに 3 つの個別のテーブルを持つことになります。

それはもう少し役立ちますか?

于 2012-08-07T13:28:40.800 に答える