如何在Drupal的其它页面中嵌入内容类型表单
1个回答
推荐于2016-06-14
展开全部
在Drupal中,我们创建一个内容时,通常使用这样的路径node/add/article,或者node/add/page,这里面的article和page,就是相应的内容类型,对应的页面,就是article和page这两个内容类型的表单页面。
现在,如果我想在别的Drupal页面中输出,article内容类型的表单(content type form),该怎么办呢?
在drupal 7中,我们使用这样的代码:
$form['title'] = array(
'#type' => 'textfield',
'#title' => t('Title'),
'#required' => TRUE,
);
$node = (object) array(
'uid' => $user->uid,
'name' => (isset($user->name) ? $user->name : ''),
'type' => 'article',
'language' => LANGUAGE_NONE
);
//$form = drupal_get_form('node_form',$node);
field_attach_form('node', $node, $form, $form_state);
这里使用了field_attach_form,同时将表单的标题,也加入了进来,这是一种办法,也是我比较喜欢的办法。此外,还有别的办法。Drupal中解决问题的方式很多,通常都是有多种办法的。后面有机会介绍另一种办法。
field_attach_form在think in Drupal第4集的实体API(Entity API)一章有介绍。
现在,如果我想在别的Drupal页面中输出,article内容类型的表单(content type form),该怎么办呢?
在drupal 7中,我们使用这样的代码:
$form['title'] = array(
'#type' => 'textfield',
'#title' => t('Title'),
'#required' => TRUE,
);
$node = (object) array(
'uid' => $user->uid,
'name' => (isset($user->name) ? $user->name : ''),
'type' => 'article',
'language' => LANGUAGE_NONE
);
//$form = drupal_get_form('node_form',$node);
field_attach_form('node', $node, $form, $form_state);
这里使用了field_attach_form,同时将表单的标题,也加入了进来,这是一种办法,也是我比较喜欢的办法。此外,还有别的办法。Drupal中解决问题的方式很多,通常都是有多种办法的。后面有机会介绍另一种办法。
field_attach_form在think in Drupal第4集的实体API(Entity API)一章有介绍。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询