Drupal: как передать аргументы форме на странице в HOOK_menu()
Опубликовано: 21.10.2017
Прежде всего я отмечу, — все, что будет описано далее актуально исключительно для Drupal 7.xx.
Итак, передать кастомные, т.е. свои пользовательские аргументы, помимо стандартных $form и $form_state в форму, сделанную на Form API можно с помощью хука HOOK_menu() к примеру вот так:
<?php // HOOK_menu(): function RedBookCms_menu() { // ... $items['base/words/%'] = array( 'title' => 'Пример страницы с аргументами', 'page callback' => 'drupal_get_form', 'page arguments' => array('RedBookCms_WordsBase_form', 2), 'access arguments' => array('edit translations'), ); // ... return $items; } // HOOK_form(): function RedBookCms_WordsBase_form($form, &$form_state, $lang = 'tur') { // И вот здесь уже обрабатываете вашу // кастомную переменную, в примере это $lang. // ... return $form; } // Form submit: function RedBookCms_WordsBase_form_submit($form, &$form_state) { // ... } ?>Обратите внимание, что третий входной параметр добавился лишь к собственно функции, где задаются элементы формы. Сабмит остается прежним. По крайней мере у меня.
Получается некая замена GET-параметрам PHP: вместо http://example.com/base/words?lang=tur пишем и используем http://example.com/base/words/lang/tur.
Опубликовано 7-02-2014 в 16:59
Курсы обмена валют ЦБ РФ
Сегодня | Завтра | ||
USD | 32.62 | 32.50 | |
EUR | 39.90 | 39.92 |
Новости
Виджет для Opera
ТОП-5 обменников
Обменник | Переходов |
Wmchanger | 6 |
E-Market | 5 |
WMtoCash.com | 4 |
Str-Money | 3 |
Hot-Change | 3 |
Наш бонус WebMoney
Получить бонус
Вы можете получить WMR-бонус в размере 0,01-0,10 WMR на свой кошелек 1 раз в сутки | |
Кошелек
|
|
Код
|
|
Обмен Webmoney |