Создал представление в котором аргументом передается uid текущего пользователя. Как сделать ссылку в меню, по которой будет показываться данное представление? Т.е. для каждого пользователя адрес ссылки свой, типа xxxxxx/uid.
Никак. И насамом деле пихать пользователей без особой надобности в меню нету смысла. Я например тоже ломал над этим голову, написал патч для menu.inc для поддержки хуков изменения дерева меню, но потом пришлось вывести все блоке через view и стилизировать под меню.
Никак. И насамом деле пихать пользователей без особой надобности в меню нету смысла. Я например тоже ломал над этим голову, написал патч для menu.inc для поддержки хуков изменения дерева меню, но потом пришлось вывести все блоке через view и стилизировать под меню.
т.е. Ссылки типа user/[uid], которая присутствует в друпале в меню и показывает профиль текущего пользователя ("мои учетные данные") самому не сделать? Как то в это не верится...
Чем такой вариант может быть плох со всех точек зрения???
Создал пункт меню, в параметре 'page callback' указал название функуии, которая не формирует страницу, а делает перенаправление с нужными аргументами на представление Views.
Примерный текст функции:
<?php global $user; drupal_goto('my_path/'.$user->uid); ?>
??? при помощи аргументов во вьюхе. сам не делал но наверн мона..
С помошью views с аргументами уже делается страница, доступная по пути в конце которого uid пользователя.
Вопрос был как ее к меню прикрутить и показать каждому пользователю именно его выборку.
MaNaX wrote:
Временем загрузки страницы для пользователя + небольшая дополнителаная нагрузка на сервер - ведь в 2 раза больше приходится генерировать страницу...
Не уловил, почему в два раза? "первая" же страница состоит только из перехода. Имхо как Друпал в других случаях использует ресурсы, данным увеличением нагрузки явно можно пренебречь.
Мне самому мой вариант не нравится, но как лучше я пока не понял Вот выше народ вообще говорит, что подобное никак не сделать, а у меня работает...
трррр... в если добавить в представление отображение страница, появляется блок настройки страницы где можно выбрать путь(аргумент заменяется страницы и меню, где отображать эту страницу,
трррр... в если добавить в представление отображение страница, появляется блок настройки страницы где можно выбрать путь(аргумент заменяется страницы и меню, где отображать эту страницу,
"Views cannot create normal menu items for paths with a % in them."
Сейчас разбираюсь с функцией _to_arg но как я понимаю для данного случая без переадресации она тоже не сильно поможет.
А зачем Вам аргумент в пути? Делаете путь одинаковый для всех и настраиваете аргумент. http://screencast.com/t/MmEzMzQ0ZWI
Так как Вы хотите сделать нельзя так как в базе данных должно быть однозначное соответствие mlid(id пункта меню) - путь. Как вариант если Вам очень хочется чтобы был путь xxxx/[uid], создайте свой блок и выведите там такое меню как Вам нужно.
Комментарии
Никак. И насамом деле пихать пользователей без особой надобности в меню нету смысла. Я например тоже ломал над этим голову, написал патч для menu.inc для поддержки хуков изменения дерева меню, но потом пришлось вывести все блоке через view и стилизировать под меню.
т.е. Ссылки типа user/[uid], которая присутствует в друпале в меню и показывает профиль текущего пользователя ("мои учетные данные") самому не сделать? Как то в это не верится...
t3hk0d3:«но потом пришлось вывести все блоке через view и стилизировать под меню.»
Вот и выводите
??? при помощи аргументов во вьюхе. сам не делал но наверн мона..
Сделал через переадресацию.
Чем такой вариант может быть плох со всех точек зрения???
Создал пункт меню, в параметре 'page callback' указал название функуии, которая не формирует страницу, а делает перенаправление с нужными аргументами на представление Views.
Примерный текст функции:
<?php
global $user;
drupal_goto('my_path/'.$user->uid);
?>
Чем такой вариант плох?
Временем загрузки страницы для пользователя + небольшая дополнителаная нагрузка на сервер - ведь в 2 раза больше приходится генерировать страницу...
С помошью views с аргументами уже делается страница, доступная по пути в конце которого uid пользователя.
Вопрос был как ее к меню прикрутить и показать каждому пользователю именно его выборку.
Не уловил, почему в два раза? "первая" же страница состоит только из перехода. Имхо как Друпал в других случаях использует ресурсы, данным увеличением нагрузки явно можно пренебречь.
Мне самому мой вариант не нравится, но как лучше я пока не понял Вот выше народ вообще говорит, что подобное никак не сделать, а у меня работает...
трррр... в если добавить в представление отображение страница, появляется блок настройки страницы где можно выбрать путь(аргумент заменяется страницы и меню, где отображать эту страницу,
"Views cannot create normal menu items for paths with a % in them."
Сейчас разбираюсь с функцией _to_arg но как я понимаю для данного случая без переадресации она тоже не сильно поможет.
А зачем Вам аргумент в пути? Делаете путь одинаковый для всех и настраиваете аргумент.
http://screencast.com/t/MmEzMzQ0ZWI
Так как Вы хотите сделать нельзя так как в базе данных должно быть однозначное соответствие mlid(id пункта меню) - путь. Как вариант если Вам очень хочется чтобы был путь xxxx/[uid], создайте свой блок и выведите там такое меню как Вам нужно.
http://remage.su/content/drupal-urok-chetvertyi-razbiraemsya-s-modulem-v... - сидим и читаем
Спасибо! Вот это действительно решение!