首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Webform消息/自定义模块

问Webform消息/自定义模块
EN

Drupal用户
提问于 2018-05-11 00:55:36
回答 1查看 315关注 0票数 0

我正在尝试创建一个自定义模块,它将在我的webform之后显示一条消息。我知道,为了显示消息,我可以使用以下代码:

代码语言:javascript
复制
$message = "Message here";
drupal_set_message(t($message));

但是,我不想有一个特定的消息,我希望有一个基于PHP语句的条件消息。例如,

代码语言:javascript
复制
    if($class == A) {
    print "Correct!";
}

所以,我的问题是如何在我的webform上显示这个PHP代码的结果?我不熟悉PHP代码,所以我不知道是否可以将$message代码和if语句组合起来。(我尝试过各种不同的方法,但都没有成功。)

谢谢你的帮助。

EN

回答 1

Drupal用户

发布于 2018-05-11 09:40:58

我个人喜欢使用的用于Drupal 8的Webform模块的特性和API之一是支持使用WebformMessage元素的内联消息。

WebformMessage元素支持拒绝消息和#states。

以下是消息元素的YAML版本

代码语言:javascript
复制
message:
  '#type': webform_message 
  '#message_type': warning 
  '#message_close': true,
  '#message_storage': user,
  '#message_message': 'This message can be dismissed by a user'

以下是PHP语法,可以在您的自定义代码中使用。

代码语言:javascript
复制
$build['message'] = [
  '#type' => 'webform_message',
  '#message_id' => 'custom_message_id',
  '#message_type' => 'warning',
  '#message_close' => TRUE,
  '#message_storage' => WebformMessage::STORAGE_USER,
  '#message_message' => $this->t('This message can be dismissed by a user'),
];
票数 3
EN
页面原文内容由Drupal提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://drupal.stackexchange.com/questions/261510

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档