Drupal 7:如何限制区块在URL以特定关键词开头的页面显示?
Drupal 7 区块隐藏问题解决方法
为什么你的设置不生效?
你之前写了完整域名example.com/abc*,但Drupal 7的页面可见性规则只认相对站点根目录的路径,不需要带域名,系统识别不了带域名的规则,所以才没效果。
两种有效解决方法
方法1:用路径通配符(简单直接)
- 打开区块的「可见性设置」,选择「仅在特定页面显示 → 除列出页面外全部显示」
- 去掉域名,直接输入
abc*- 这个规则会匹配所有以
abc开头的路径,包括abcd、abcf、abce/xyz这些你提到的页面
- 这个规则会匹配所有以
- 保存设置即可生效
方法2:用PHP代码控制(更灵活)
如果通配符满足不了复杂需求,用PHP代码能精准控制:
- 在区块可见性设置里选择「PHP代码」
- 输入以下代码:
// 判断当前页面路径是否以abc开头,是则隐藏区块,否则显示 return strpos($_GET['q'], 'abc') !== 0;
- 保存设置后,所有路径以
abc开头的页面都会自动隐藏该区块
内容的提问来源于stack exchange,提问作者Deeksha
相关产品推荐
相关产品推荐

