Создано предаствление вывода taxonomy/term/%
при выводе ссылки на комментарий выводится ссылка содержащие обращение к ноде.
это и понятно что используется в коде - <?php print drupal_get_path_alias('node/'.$comment->nid)
Как сделать так, чтобы ссылка на комментарий формировалась из термина и имела вид например .../taxonomy/term/233/#comment-1
Вобщем, вопрос состоит как получить 233 в этом примере...
Комментарии
http://api.drupal.ru
Только я что-то не очень понял нафига на странице термина выводить комментарии. Какгбэ хозяин-барин, но все же... И еще:
#comment-1
Вот тут 1 не везде будет 1. У комментариев внутри друпала сквозная нумерация. Спрашивайте сразу, как в ноде узнать номер первого комментария.да, наверное я несколько коряво вопрос задал... в представлении (на сколько я понял) используется термин, но выводится нода, к которой этот термин привязан. номер комментария я получаю вот так <?php print $comment->cid ?>
так то бы конечно и оставить, но в представлении завязаны блоки относящиеся тоже к этому термину...
может быть я с самого начала что не так делаю?
попробовал руками сделать в адресной строке набрал www.mysite.ru/taxonomy/term/233/#comment-1 и все сработало. значит путь верный
Сейчас ссылка на комментарий вот такая - www.mysite.ru/node/123/#comment-1
Полный код вывода ссылки:
<?php if ($comment->cid): ?>
nid) ?>/#comment-<?php print $comment->cid ?>">#
<?php endif ?>
получилось сделать добавлением вот такого кода:
<?php if ($comment->cid): ?>
/#comment-<?php print $comment->cid ?>">#
<?php endif ?>
но данная конструкция выводит именно ссылку как taxonomy/term/... как сделать подмену на синоним термина таксономии? применение taxonomy_get_term ни к чему не привело (либо используется не для этого)
У терминов нет комментов, поэтому данная ссылка некорректна.
На странице термина выводятся ноды, привязанные к терминам. Вы выводите полные ноды с комментами?
конечно выводится нода. но ссылка на вывод ноды сделана через термин. почему тогда ссылка работает если ее набрать руками либо генерировать выше написанным кодом?
Почему работает - не знаю, у нас в семье телепатией владеет только кошка. Покажите сайт - скажу почему работает.
В чём фишка ссылки на комментарий через термин, на странице, которая выводит ноды я не понимаю, если честно. Допустим у вас выводятся по 10 нод на страницу с термином, у каждой ноды, в среднем, по 100 комментов. На странице получится 1000 комментариев к 10 статьям. Нахрена?!
Лучше опишите задачу глобально.
решил проблему вот таким способом (вставил в comment.tpl.php или же для определенного типа материала comment-тип.tpl.php):
<?php $term = arg(2);
print 'cid.'">#'; ?>
Зачем это надо? нода выводится по ссылке на термин таксономии (много нод не выводится ибо один термин - одна нода, других привязок нет. зачем так сделано - на основе терминов составлено иерархическое меню). поэтому хотелось чтобы ссылка на каменты не ломала глаз совершенно другой ссылкой.
может из меня объясняльщик плохой но тем не менее код работает.
Хотел добиться работы функции taxonomy_get_synonyms или taxonomy_get_synonym_root но что то не получилось. может кто подскажет как всетаки использовать эти функции?
Другими словами, таксономия вам не нужна в принципе.
Что за проблема с меню? Почему нельзя было иерархически сделать на нодах?
каюсь, не про то написал на радостях... на основе терминов составлено hierarhical_select
Hierarhical_select нужен для удобной выборки терминов. Термины нужны для категоризации контента.
Категоризация вам не нужна, следовательно, не нужна и таксономия. Зачем нужен hierarhical_select?
Вы явно выбрали неправильное архитектурное решение, теперь пытаетесь согнуть друпал рогом.
с его помощью юзер создает материалы. если все глобально описать то: есть словарь с терминами; есть ноды которые связаны с терминами - одна нода = одному термину (как бы визуальное отображение термина); юзер создает материал используя hierarhical_select (ну и немного других полей); далее выводится таблица, поля которой заполнены ссылками на термины; при клике на эту ссылку юзер попадает на страницу где - выводится нода соответствующего термина + блоки со ссылками на материалы которые насоздовали юзеры (выводятся в соответствии с термином). вот наверно все.
Я совсем не понимаю, зачем тут таксономия? Зачем создавать сущность, которая ничего не делает?
Ну можно же ещё и по юзеру создать на каждую ноду, например.
Ещё раз - какую роль играет таксономия? Зачем пользователю выбирать термин? Если убрать термины, какой функционал пропадёт?
пользователь с помощью термина определяет к какой категории относится его материал. соответственно при выводе через views выводятся в блоке ссылки на эти материалы. иначе как бы я сделал отбор в блок?
Как можно определять к какой категории относиться материал и одновременно делать, чтобы было один термин -- один материал? Или после того как пользователь указал категории своего материала, данная категория удаляется из списка доступных для других пользователей?
Ясней не стало