php - 在 Drupal 中隐藏选择
问题描述
我向我的用户实体和另一个实体(活动)添加了语言自定义字段(分类术语)。
该字段可以有 2 个值,英语和法语。(用户可以同时拥有,活动只能拥有一个)
在活动视图中,我添加了一个公开的过滤器(选择),以便用户可以过滤法语或英语活动。
结果 :
如果用户只有 1 种语言,我想隐藏(或禁用)此选择。
如何正确实现这一点?我尝试了 pre_render 钩子,但我猜我找不到合适的钩子。
谢谢你。
解决方案
你应该试试这个钩子:
function themename_form_alter(&$form, FormStateInterface $form_state, $form_id) {
if (in_array($form_id, ['views_exposed_form'])) {
if ($form['#id'] == "views-exposed-form-custom-search-page-1") { // your form id
// your filter logic and return filter form value like
// $form["langugae"]["#options"] = $options;
}
}
}
推荐阅读
- python - 使用嵌套的 for 循环更新 dict
- python - 在 django webapp 中使用 jquery 和 AJAX 自动完成搜索
- python - 返回所有值包含python字典中的特定文本
- git - 从服务器端目录恢复 GitLab 存储库
- c++ - SIMD __m256i 到 __m256d 转换结果
- java - 从 Java 字符串中提取值
- mysql - 如果密钥对存在于另一个表中,则选择列为真/假
- c++ - Boost 1.69 中的某些库是否与 MacOS 不兼容?
- python-3.x - PyQt5 & PySide2 / 无法在“”中加载 Qt 平台插件“windows”,即使它被发现
- python - 在 Matplotlib 中为 Boxplot 提供自定义四分位数范围