2010-06-17 60 views
3

我想要一个内容类型,即引用CCK。但引号通常没有标题。但由于标题是必填字段,因此如何避免在创建新节点时放置标题。Drupal中没有标题节点

回答

8

检查出Automatic Nodetitles module,这应该有助于你想要做的事情。

+0

借调。我已经做到了。 (aribtrary name)在这种情况下,我倾向于使用node_id。 – Kevin 2010-06-17 12:45:38

0

另一种选择是更改ID为YOUR_CONTENT_TYPE_node_form的表单。例如,假设您的内容类型为报价为,那么您想要更改的表单ID为quote_node_form。下面是

我们将其命名模块quotetitlenotrequired(一个完整的模块,这将使标题文本字段,你通常看到

  • 不是必需的,
  • 隐藏可能看起来有点笨重,但你应该总是尽量避免在命名模块时使用下划线)。

    1. 充分利用sites/all/modules称为quotetitlenotrequired

    2. 里面的sites/all/modules/quotetitlenotrequired目录中的文件夹(目录),创建一个名为quotetitlenotrequired.info一个文件,quotetitlenotrequired.module

    3. 命名为另一个文件粘贴quotetitlenotrequired.info内将以下代码文件:

      ; $Id$ 
      name = Quote Title Not Required 
      description = Makes node titles not required for quotes. 
      core = 6.x
    4. 下面的代码粘贴到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'; 
          } 
      } 
      
    5. 您保存这两个文件后,转到www.yoursite.com/?q=admin/build/modules

    6. 向下滚动,然后勾选的报价标题不要求模块(应该在“其他”下面列出)

    7. 向下滚动一下,然后点击保存配置

    现在,当你去创建一个新的报价,应该不再需要称号。如果你离开那条说$form['title']['#type'] = 'hidden';的那一行,整个标题部分就不应该出现在表单上。

    希望帮助...

    :)