Drupal 6: таксономия разбросана в управляемых полях?

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

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

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

Вот что у меня есть: http://www.namhost.com/have.jpg

Вот что я хочу: http://www.namhost.com/want.jpg

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


person Community    schedule 20.06.2009    source источник
comment
какой модуль вы используете для таксономии CCK?   -  person Jeremy French    schedule 24.06.2009


Ответы (3)


Вам придется разделить вашу проблему на 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.

person avibrazil    schedule 16.06.2010

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

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

person Kirk Hings    schedule 19.11.2009

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

person Capi Etheriel    schedule 19.11.2009