在Drupal中添加自定义消息

问题描述:

我想添加一个自定义消息,一旦有人保存了特定的内容类型,告诉他们正在通过审批流程。这将让他们知道,并防止他们重新提交。在Drupal中添加自定义消息

+0

你是什么意思与“重新提交”?如果你担心刷新页面会再次提交表单,不要担心,Drupal已经处理好了。 – marcvangend 2010-03-08 21:16:38

+0

不爽。更像是用户认为他们第一次尝试时没有经历过,所以他们再次填写表单并提交。这就是我重新提交的意思。 – Chetan 2010-03-09 00:50:37

你最好的赌注是一个小的自定义模块,做这样的事情(经过充分测试):

<?php 
function MODULENAME_nodeapi(&$node, $op, $a3 = NULL, $a4 = NULL) { 
    if ($node->type == 'custom_node_type' && $op == 'insert') { 
    drupal_set_message(t('Put your custom message here.')); 
    } 
} 

欲了解更多信息,请参阅该文档为hook_nodeapidrupal_set_message

编辑以反映以下注释。

+1

其实这是一条更好的路线,但我会改变 if($ op =='insert')to if($ node ['type'] =='custom_node_type'&& $ op =='insert') – 2010-03-08 20:23:01

+0

..如果你的消息需要用不同的语言翻译,把它包装在t()函数中:drupal_set_message(t('把你的自定义消息放在这里。')); – marcvangend 2010-03-08 21:18:44

+0

以上都是好点。 – 2010-03-08 21:32:09

没有自定义模块,这很难做到。

我想尝试这样做的一种方法是覆盖post-submit URL

然后在新的页面,使用PHP过滤器和执行以下操作:

drupal_set_message('The submitted content is being approved'); 
drupal_goto('');