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

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

Аватар пользователя Yusuke Yusuke 15 июля 2010 в 18:51

Можно ли сделать так, чтобы, при установке модуля, эта страница автоматически создавалась, и было бы известно её расположение для того, чтоб в самом модуле сделать на эту страницу ссылку.

Если это возможно, то можно ли также, без участия клиента, устанавливающего модуль, прикрепить к странице также tpl.php файл, описывающий HTML структуру страницы

Заранее спасибо

Комментарии

Аватар пользователя graker graker 15 июля 2010 в 19:12

Неясно, что требуется, но судя по описанию с этим должен вполне справиться обычный hook_menu() - по нему при инсталляции модуля автоматически создастся страница с заданным адресом.

Содержимое страницы надо генерировать через theme('mypage', ...), при этом в описание темизируемого элемента 'mypage' в hook_theme() надо добавить ключ 'template' - тогда страница будет создаваться через шаблон с заданным именем.

Аватар пользователя t1mm1@drupal.org t1mm1@drupal.org 16 июля 2010 в 2:49

можно
копайте сюда
_menu()
там в callback определите функцию с вашей страницей, или форму, или еще чтото. без нее ссылка на страницу созданна будет, но она не будет по факту найдена.
можно обойтись через pre instal модуля (задав структуру создаваемой страницы, ее пути и тд, но головняка много ради одной страницы и т.д.)

а вообще не понятно.
что на той странице будет?

Аватар пользователя romans@softikom.lv romans@softikom.lv 16 июля 2010 в 10:24

(я перелогинился из под Jusuke, но это я же)

Итак, внесу побольше конкретики в выше написанный вопрос.

Есть страница с выводом продуктов (Ubercart module). В общем виде (грид продуктов) под каждым продуктом - чекбокс с лэйблом "Сравнить с другими продуктами".

Отметив сравниваемые продукты, нажимается ссылка "Сравнить", которая и ведёт на ту самую (заранее созданную (как всё-таки лучше?)) страницу, на которой выводится главная показательная информация о этих продуктах, т.е. там должна быть как функциональность, так и HTML структура.

Получается, вопрос сводится к следующему - как при установке модуля инициализировать создание страницы, с заранее предефинированным именем, структурой и функциональностью?

Спасибо

Аватар пользователя romans@softikom.lv romans@softikom.lv 16 июля 2010 в 13:39

Спасибо огромное, всё сразу получилось!

Но возник смежный вопрос:

- я открываю эту страницу в popup'е. Можно ли, создавая страницу с помощью hook_menu каким-либо образом указать, что не надо выводить всю структуру страницы, а только то, что указано в файле в параметре меню 'file'?