Drupal 7 开发内部培训资料, 分头诗人

这种情况下又应该用什么 HOOK 来传值?!

赞成!
0
否决!

如 我在浏览 node A  时  点击指定的 create new node   后   如何把 刚才 浏览的 node A 的 uid 保存下来 放到 新node 表单的 feild(或者标题 内容等) 里?

5 个回答

赞成!
0
否决!

create new node 是一个表单,表单是可以通过hook_form_alter() 来进行改写,通过它改写数据保存方式,把刚才 浏览的 node A 的 uid 保存下来 放到 新node 表单的 feild(或者标题 内容等) 里

赞成!
0
否决!

    这个 还是没有研究出来  能够 给我个例子?

赞成!
0
否决!

首先需要知道 添加node 的form 的id是什么,然后通过hook_form_alter()把这个id 的form 改写。

http://api.drupal.org/api/drupal/modules!system!system.api.php/function/... 下面有很多例子的。你看看。

赞成!
0
否决!
//根据$form_id可以同时修改多个表单
function myuser_form_alter(&$form,&$form_state,$form_id){
  if($form_id=='user_login_block' || $form_id=='user_login'){
    $form['warning'] = array(
       '#value' => '所有的登陆事件都会记录到日志中',
       '#weight' => -5,
    );
    $form['submit']['#value'] = '登陆';
  }
}

 

//修改特定的表单
function myuser_form_user_login_alter(&$form,&$form_state){
  $form['warning'] = array(
       '#value' => '所有的登陆事件都会记录到日志中',
       '#weight' => -5,
    );
    $form['submit']['#value'] = '登陆';
}
赞成!
0
否决!

好的 谢谢我看看