1
我需要帮助创建一个if语句,它将以节点的形式打印取消按钮只有。没有if语句,取消按钮会在所有表单上打印出来,包括网站搜索表单。我尝试使用'$ form_id!=',但添加了每个表单ID,其中我不需要想取消按钮似乎并不直观。任何帮助将非常感激。
<?php
/**
* Implements hook_form_alter().
*/
function cancel_button_form_alter(&$form, &$form_state, $form_id) {
// Here is where I'm having trouble. What variable can
// I put that targets ANY content type?
if ($form_id != 'search_block_form') {
// Add a cancel button.
$form['actions']['cancel'] = array(
'#type' => 'submit',
'#value' => t('Cancel'),
'#access' => TRUE,
'#weight' => 15,
'#submit' => array('cancel_button_form_cancel', 'node_form_submit_build_node'),
'#limit_validation_errors' => array(),
);
}
}
/**
* Custom cancel button callback.
*/
function cancel_button_form_cancel($form, &$form_state) {
$url = $_GET['destination'] ? $_GET['destination'] : '';
drupal_goto($url);
}
我不明白,我们应该怎么知道表单是“内容类型”?如果它包含任何指示其“内容类型”表单的任何信息,则必须向我们提供$ form数组。 – Prashank
我很困惑?这只是我正在处理的一个简单模块,它将为任何表单添加一个取消按钮。我想使取消按钮只出现在节点的形式(也许这比说“内容类型”,使用if语句更好),但我不知道我可以使用(或如何)只针对节点使用所述if声明。对不起,你不得不忍受我,因为我不是经验丰富的Drupal人。基本上:如果('我应该怎么把这里只针对节点的表单?'){打印出取消按钮} – user2266174