это мой первый вопрос здесь!
Я делаю модуль drupal 7, который создает новые узлы на основе пользовательской формы в пакетном режиме.Все работает хорошо, за исключением одной вещи, которую я считаю очень глупой, но у меня есть 2 дня на исследования, и теперь я разочарован.
Я не могу получить входные данные 'nombre_del_producto' из формы, чтобы использовать их в моей функции отправки узла в качестве заголовка (лол).
Вот функция создания формы:
function producto_qr_batch_form($form, &$form_state) {
$form = array();
$form['number_of_nodes'] = array(
'#type' => 'textfield',
'#title' => 'Ingresa el número de códigos a generar:',
'#required' => TRUE,
'#element_validate' => array('element_validate_integer_positive'),
);
//This is the form input i cannot get:
$form['nombre_del_producto'] = array(
'#type' => 'textfield',
'#title' => 'Ingresa el nombre del producto del que vas a generar los códigos:',
'#required' => TRUE,
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => 'Generar',
);
return $form;
}
А вот функция отправки:
function producto_qr_create_nodes($number_of_nodes, $form, &$form_state) {
global $user;
$node = new stdClass();
$node->title = $titulo; //Here is when i want it
$node->type = "codigo_qr";
node_object_prepare($node);
$node->language = LANGUAGE_NONE;
$node->uid = $user->uid;
$node->status = 1;
$node->promote = 0;
$node->comment = 0;
$node->field_qr[$node->language][]['value'] = "SOME TEXT HERE";
$node = node_submit($node);
node_save($node);
}
Результат: узел имеет пустой заголовок.Как получить поле 'nombre_del_producto' из формы в узел отправить заголовок?
Спасибо!
РЕДАКТИРОВАТЬ:
Я забыл поставить функцию, где я получаю форму:
function producto_qr_batch_form_submit($form, &$form_state) {
$number_of_nodes = $form_state['values']['number_of_nodes'];
$titulo = $form_state['values']['nombre_del_producto']; //This is correct?
$operations = array();
for ($i = 1; $i <= $number_of_nodes; $i++) {
$operations[] = array('producto_qr_create_nodes',array($i));
}
$batch = array(
'title' => t('Generando Códigos'),
'operations' => $operations,
'finished' => 'producto_qr_batch_finished',
'init_message' => t('La creación de códigos está empezando.'),
'progress_message' => t('Procesados @current de @total.'),
'error_message' => t('Ha sucedido un error. Intenta generar códigos en cantidades menores.'),
);
batch_set($batch);
}
Еще раз спасибо!