2008-09-18 49 views

回答

5

如果您不是开发人员(或者您想快速开发过程),另一种可能的解决方案是使用auto_nodetitle模块。自动节点标题将允许您创建生成节点标题的规则。这些可以是编程规则,被替换的令牌或简单的静态文本。值得一看,如果没有别的。

3

要删除身体编辑类型,请展开“提交表单设置”并将其放在身体字段标签的空白处。对于标题,您可以将其重命名为另一个文本字段。如果你真的不需要任何文本字段,你可以创建一个名为foo的自定义模块,并创建一个函数foo_form_alter(),当$ form ['type'] ['#'替换$ form ['title']为#value时,值']是您的节点类型。

+0

这对Body字段非常有效,但我更喜欢使用auto_nodetitle模块来删除名称字段。 谢谢! – 2008-09-18 13:04:52

2

如果您不是开发(或要 到快捷的开发过程), 另一种可能的解决方案是 利用auto_nodetitle模块。 自动节点标题可让您创建 规则来生成 节点的标题。这些可以是编程规则, 替换的令牌或简单地 静态文本。值得一看,如果没有其他 。

而要添加到William OConnor's解决方案...

模块不幸不良记录。如果你在我看来使用PHP,它确实是非常有效的。勾选了“评估PHP的模式”,并输入进“模式的标题”字段是这样的:

<?php echo $node->field_staff_email[0]['email']; ?> 

或:

<?php echo $node->field_staff_name[0]['value'] . '-' . gmdate('YmdHis'); ?> 

...在那里我有一个字段与内部“field_staff_email”的名称,并使用CCK电子邮件模块 - 因此使用了“电子邮件”类型。或者,我有一个内部名称为“field_staff_name”的字段,只是一个普通的文本字段 - 因此使用了“值”类型。最后的gmdate()调用是为了确保唯一性,因为您可能有两个或多个名为同一事物的工作人员。

我发现这一切都是通过先用实验的方式:

<?php print_r($node); ?> 

...当然这给了疯狂的结果,但至少我能够解析输出,并找出如何使用$节点对象在这里正确。

请注意,如果您使用这些PHP例程中的任意一个,那么您最终将在Drupal Admin中的内容列表中显示与您对PHP编码完全相同的条目。这就是为什么我不只是单独使用gmdate(),因为可能很难找到我的记录进行编辑。

请注意,您也许可以在gmdate()上使用Base-36转换,以减小输出的大小,因为gmdate('YmdHis')相当长。

3

无需安装任何东西:
编辑内容类型,按“编辑”
时(编辑菜单上的|管理领域|显示字段)
点击提交表单设置

上Body字段标签:
将其留空,它将删除Body字段。

0

最初的答案都很好。就像标题部分的另一个想法一样......如何为cck节点类型创建自定义模板文件。您将复制node.tpl.php到node-TYPE.tpl.php,然后编辑新文件并删除标题的呈现位置。 (不要忘记清除缓存)。

这样做意味着每个节点仍然有一个标题,因此对于内容管理,您不会留下空白标题或类似的东西。

HTH!

相关问题