Выбрать новости (story) с меткой

Главные вкладки

Аватар пользователя BorisVlasenko BorisVlasenko 19 апреля 2009 в 17:52

Всем привет.
Вопрос: как получить список нод по типу и метке?

Пояснения:
Создаю городской образовательный портал, на котором будут все школы (и не только школы) : ozedu.ru

Задача:
1. новости каждой школы поместить на главную. (решил)
2. новости каждой школы сделать доступными на странице школы (т.е. вывести новости не на главной, а на другой странице).

Искал. Нашел вот что:
http://www.drupal.ru/node/14320
http://www.drupal.ru/node/23978
http://www.drupal.ru/node/24560

Из чего сделал вывод что новости на главную и на другую странице можно сделать, используя таксономию (категории).
Для это мне придется создать словарь, содержащий все школы, прикрепить его к типу "Новости" и сделать обязательным.
И по ссылке на основную страницу школы выводить документы с соответствующей меткой этого словаря.

Всё бы ничего, но у меня уже есть словарь "Учреждения", где все школы перечислены. И этот словарь назначен всем типам материала, чтобы потом легче было построить список всего, что относиться к конкретной школе.

Мой опыт использования SQL подсказывает простое решение: выбрать (тип материала = новость) и (по метке из словаря "учреждения").
Но я не смог понять и найти, как можно выбрать построить список по типу материала и метке.
Views не ставил. Хочу выжать максимум из стандартных модулей, потому что только начал Drupal осваивать.

Правильно ли я понял, или что-то упустил?

С уважением, Борис.

Комментарии

Аватар пользователя edhel edhel 19 апреля 2009 в 18:02

Или юзать views или писать ручками select: создать страницу, включить фильтр PHP и сделать выборку примерно так: $q = db_query("select distinct(nid) from node n join term_node tn where n.type='story' and n.status=1 and tn.tid=id_школы order by n.created desc"); потом вывести в цикле эти новости примерно так: while ($n = db_fetch_object($q)) print node_view(node_load($n));

У функции node_view еще параметры надо указать, чтобы тизер выводился (см. api.drupal.org).

Аватар пользователя BorisVlasenko BorisVlasenko 20 апреля 2009 в 8:57

Понял. Пошел смотреть на views. Как сделаю, так отпишусь.
Меня только смущает то, что до сих пор это никто не спрашивал (или я искать не умею?).
Может быть я чего-то не того хочу?

Столько возможностей, что сложно выбрать, как делать.

А что если вообще отказаться от story и тип материала указывать меткой (тегом)?
Тогда вопрос сведется к выводу документов с двумя метками.

Решил продолжение вопроса по типу документов задать в другом вопросе Smile

Аватар пользователя edhel edhel 20 апреля 2009 в 15:52

"BorisVlasenko" wrote:
Меня только смущает то, что до сих пор это никто не спрашивал (или я искать не умею?).

на этот вопрос всегда отвечают - "см. views", таких вопросов миллионнннннннннннныыыыыыы

Аватар пользователя BorisVlasenko BorisVlasenko 28 сентября 2009 в 11:52

На текущий момент проблему решил добавлением тега "Новость", т.е. исходная задача "список нод по типу и метке" сменилась на "список нод по двум меткам", что решается довольно просто: taxonomy/term/1,2.