Drupal 6: Таксономия распределена по управляемым полям? - PullRequest
0 голосов
/ 20 июня 2009

Таким образом, у вас есть две таксономии, а именно: «Тип бизнеса» и «Местоположение»

Это назначено узлу, названному BUSINESS. Фактически, когда пользователь создает узел BUSINESS, ему необходимо выбрать, например, местоположение «Нью-Йорк» и тип «Информационные службы». Моя проблема когда: а) захват таксономии, и б) Отображение таксономии

Я хочу, чтобы два термина были отделены друг от друга. То есть Я хочу иметь возможность перемещать два термина по отдельным позициям в представлении УПРАВЛЕНИЕ ПОЛЯМИ, чтобы их можно было группировать или размещать отдельно. В настоящее время Drupal допускает только одну запись, называемую «TAXONOMY», которая фактически является двумя терминами рядом друг с другом.

Вот что у меня есть: альтернативный текст http://www.namhost.com/have.jpg

Вот что я хочу: альтернативный текст http://www.namhost.com/want.jpg

Имейте в виду, мне нужно иметь возможность использовать это с иерархическим выбором, что означает, что таксономия контента не является опцией.

Ответы [ 3 ]

1 голос
/ 16 июня 2010

Вам придется разделить вашу проблему на 2 части:

  • Часть заполнения формы, в которой все словари будут вместе с редактором.
  • Часть отображения контента, с помощью которой вы сможете разделить словари.

Я расскажу здесь более подробно о второй части.

Используйте модуль вычисляемых полей CCK и создайте одно поле для каждого словаря, который вы хотите отобразить. Разместите это поле там, где вы хотите.

Настройте каждое поле следующим образом:

  1. На Вычисляемый код введите что-то вроде этого:
    # Get vocabulary ID from its management URL (/admin/content/taxonomy/edit/vocabulary/[VOCABULARY_ID]) and set here:

$node_field[0]['value'] = "5";

# Also, configure this field as 'Raw Text' on Display Fields
  1. Вкл Формат отображения , используйте это:
    $vocabulary_id=$node_field_item['value'];

$terms=taxonomy_node_get_terms_by_vocabulary($element['#node'], $vocabulary_id);

foreach ($terms as $tid => $details) {
      # The taxonomy_get_textual_term_hierarchy_by_id() is implemented on the SolutionHub's theme template.php file
      $textualTerms .= taxonomy_get_textual_term_hierarchy_by_id($tid);
}

if (isset($textualTerms)) {
      $display='';
      $display.=$textualTerms;
      $display.='';
}

Функция taxonomy_get_textual_term_hierarchy_by_id () специфична для моего сайта и определена в DRUPAL_ROOT / sites / default / themes / mytheme / template.php и просто переписывает текст термина таксономии причудливым образом, чтобы показать всю его родословную. Поэтому вместо «яблока» я получу что-то вроде «еда> пустыня> фрукты> яблоко». Я не буду вставлять это здесь, потому что это выходит за рамки.

Если ваша проблема заключается в изменении словарного запаса в форме редактирования, я бы предложил модуль Content Taxonomy.

0 голосов
/ 19 ноября 2009

Может быть, вы могли бы сделать лучше с Cck. включив текст (поставляется с cck), вы можете добавлять текстовые поля. и вы можете легко использовать их отдельно, использовать их с представлениями, шаблонами и т. д.

0 голосов
/ 19 ноября 2009

Вы застряли с двумя таксономиями, появляющимися вместе в форме ввода, они входят в пакет. Таксономия должна использоваться в качестве системы классификации (например, классификации царства животных), чтобы термины объединялись в физическом пространстве.

Но что касается второй половины вашего вопроса, имейте в виду, что ваши пользователи будут видеть метки «Тип бизнеса» и «Местоположение» в форме ввода, а не общую метку «Таксономия», которую вы видите при управлении полями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...