Аргумент в начале (hook_menu)
10 сентября 2013 в 16:44
Всем привет. Возникла проблема и может быть кто-то сталкивался с ней и как-то решил?
Нужно сделать так, чтобы аргумент был в начале адреса. Т.е. url был вида %/check
Я так понимаю, что просто так этого не сделать, так как аргумент не может быть первым? Но как решить проблему...сделал тупо через hook_preprocess_page, разбирая урл и если он нужного вида, то тогда выводим нужный views. Но это мне совсем не нравится...но ничего лучше никак не могу придумать.
Спасибо, если кто поможет.
- Блог
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
Комментарии
Сначала прочитал, потом увидел
во вьюсе также можно пилить урлы с %. Зачем hook_menu() для этого спрашивается?
а какая разница во вьюсе или в хуке
все равно "Note that wildcards may not be used as the first component."
в том то и дело, что что ни хук ни вьюс не поможет и делать это нету смысла
"и делать это нету смысла"
А как решить тогда проблему? Если надо, чтобы в начале был аргумент...
Не берите в голову, не могу мыслю передать) Я имел ввиду другое
делай вьюху check/% а ссылки выводи как %/chek
и потом hook_url_inbound_alter и hook_url_outbound_alter
drupby, а я так понимаю, адрес в строке изменится?... Что-то не совсем понял, как работают эти хуки.
Но проблему вроде как решил так: создал тип материала (типа checkdisplay), синхронизовал его с основным (удаление, создание и обновление) через модуль, настроил синонимы [title]/check ну и как нужно подретактировал шаблон мата. Может не самый лаконичный способ, но вроде как устраивает
url_inbound_alter берет ссылку и меняет ее на нужную нам и отдает друпалу
а потом уже url_outbound_alter возвращает в адресную строку то что и было
то есть получается в ссылке и в адресной строке то что нам нужно ,а друпал обрабатывает совсем другой путь
Аааааа, круто Спасибо большое. Запомню на будущее, не знал.