我想要一个内容类型即引用CCK。但引用一般没有标题。但由于标题是必填字段,我如何避免在创建新节点时放置标题。
答案 0 :(得分:8)
查看Automatic Nodetitles module,这应该会促进您的目标。
答案 1 :(得分:0)
另一种选择是更改ID为YOUR_CONTENT_TYPE_node_form
的表单。例如,假设您的内容类型为 quote ,那么您要更改的表单ID将为quote_node_form
。这是一个完整的模块,它将生成您通常会看到的标题文本字段
我们将模块命名为 quotetitlenotrequired (它可能看起来有点笨重,但您应该总是尽量避免在命名模块时使用下划线)。
在名为sites/all/modules
quotetitlenotrequired
内创建一个文件夹(目录)
在sites/all/modules/quotetitlenotrequired
目录中,创建一个名为quotetitlenotrequired.info
的文件和另一个名为quotetitlenotrequired.module
的文件
将以下代码粘贴到quotetitlenotrequired.info
文件中:
; $Id$ name = Quote Title Not Required description = Makes node titles not required for quotes. core = 6.x
将以下代码粘贴到quotetitlenotrequired.module
文件中:
<?php
// $Id$
/**
* @file
* Makes node titles not required for quotes.
*/
/**
* Implements hook_form_alter().
*/
function quotetitlenotrequired_form_alter(&$form, &$form_state, $form_id) {
if ($form_id == 'quote_node_form') {
$form['title']['#required'] = FALSE;
// Remove the next line if you still want the title field to be visible
$form['title']['#type'] = 'hidden';
}
}
保存这两个文件后,请转到www.yoursite.com/?q=admin/build/modules
向下滚动并选中引用标题不需要模块旁边的框(它应列在“其他”下)
完全向下滚动并点击保存配置
现在,当您创建新的引用时,不再需要标题。如果你在那里留下$form['title']['#type'] = 'hidden';
,那么整个标题部分就不应再出现在表格上。
希望有帮助...
:)