Вы здесьФорумы / Вопросы по Drupal / Вредная таксономия

Вредная таксономия


By Starche - Posted on 31 Январь 2010

В общем мне нужно вывести ссылки на дочерние термины в области основного контента страницы при щелчке на их родительский термин, отображенный в меню, выпадающие меню отпадают.

Более подробно проблему описывал на оф форуме друпала http://www.drupal.ru/node/39616

К сожалению ответа на вопрос не нашел, теперь вся надежда на этот форум.



Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".
RemaGe аватар

Попробуйте сделать это с помощью Views. Там не так сложно. Делаете вид, который принимает агрумент - родительский термин, и выводит дочерние.
Ну и соответственно Представение-Блок, со списком родительских терминов ссылающихся на первое представление.

Разобрался Views'ом, все оказалось довольно просто, огромное вам спасибо =)

Неизвестный аватар

Сделал такой вид:
Arguments - Таксономия: Vocabulary ID с настройками:
Action to take if argument is not present: Fixed entry = 3 /* нужный словарь со статьями */
Fields - Таксономия: Term с настройками:
Link this field to its taxonomy term page - enabled
Представление - Страница.

Ожидал, что он выведет все ссылки на термины словаря №3. Но вид вывел столько ссылок на термин, сколько статей в него входит, т.е. термин "История" выводится 3 раза подряд, если к нему относятся 3 статьи из этой категории. Как ограничить вывод?

RemaGe аватар

Там есть параметр Distinct, который позволяет выводить только уникальные записи. Попробуйте

Неизвестный аватар

Пробовал уже, не работает. Не могу понять почему.

Неизвестный аватар

Код запроса с включеным Distinct получается следующий:
SELECT DISTINCT(node.nid) AS nid,
term_data.name AS term_data_name,
term_data.vid AS term_data_vid,
term_data.tid AS term_data_tid
FROM myprefix_node node
LEFT JOIN myprefix_term_node term_node ON node.vid = term_node.vid
LEFT JOIN myprefix_term_data term_data ON term_node.tid = term_data.tid
LEFT JOIN myprefix_vocabulary vocabulary ON term_data.vid = vocabulary.vid
WHERE vocabulary.vid = '3'
GROUP BY nid

Мб нужно подключать какие-то дополнительные модули? В данный момент подключены:
Views 6.x-2.8
Views UI 6.x-2.8

И может ли проблема заключаться в самом MySQL? Тестирую в локалке на денвере.

Неизвестный аватар

Ужасно затупил =( При создании вида выбрал тип Node, а не Term, поэтому выборка делалась по node.nid, а не по term_data.tid. Теперь все безупречно заработало! RemaGe, спасибо за доступные уроки по друпал, сэкономил кучу времени, только вот жаль публикуетесь не часто.

RemaGe аватар

Незачто -)

Отправить комментарий

  • Поисковые системы будут индексировать и переходить по ссылкам на разрешённые домены.

  • Строки и параграфы переносятся автоматически.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Доступны HTML теги: <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <p> <br />
  • You may post code using <code>...</code> (generic) or <?php ... ?> (highlighted PHP) tags.

Подробнее о форматировании

CAPTCHA
Этот вопрос проверяет человек ли вы, и предотвращает рассылку спама.
Image CAPTCHA
Copy the characters (respecting upper/lower case) from the image.