Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/274.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在Drupal中,您能否根据URL部分的数量来控制块显示?_Php_Drupal - Fatal编程技术网

Php 在Drupal中,您能否根据URL部分的数量来控制块显示?

Php 在Drupal中,您能否根据URL部分的数量来控制块显示?,php,drupal,Php,Drupal,我在Drupal中控制特定于页面的块显示时遇到了一些问题 我的URL将采用以下典型结构: “节名”实际上是固定的,但会有许多子页(太多而无法明确引用) 我需要以某种方式控制块显示,如下所示: 一个块将显示在URL包含“节名/子页”的所有页面上,但不显示在“节名/子页/子页”页面上 相反,另一个块将显示在URL包含“节名/子页/子子页”的所有页面上,但不显示在“节名/子页”页面上 我唯一的想法是使用PHP查找字符串“section name”,然后计算URL部分(甚至是斜杠的数量)。但不确定如何

我在Drupal中控制特定于页面的块显示时遇到了一些问题

我的URL将采用以下典型结构:

“节名”实际上是固定的,但会有许多子页(太多而无法明确引用)

我需要以某种方式控制块显示,如下所示:

一个块将显示在URL包含“节名/子页”的所有页面上,但不显示在“节名/子页/子页”页面上

相反,另一个块将显示在URL包含“节名/子页/子子页”的所有页面上,但不显示在“节名/子页”页面上

我唯一的想法是使用PHP查找字符串“section name”,然后计算URL部分(甚至是斜杠的数量)。但不确定如何实现:)


谢谢你的帮助

您可以使用星号和斜杠作为层次结构级别的通配符。例如,若要在3层深度的页面上仅显示块,请执行以下操作:

/*/*/*/
或者您可以在此之前添加节名,如:

section-name/*/*/

可以使用星号和斜杠作为层次结构级别的通配符。例如,若要在3层深度的页面上仅显示块,请执行以下操作:

/*/*/*/
或者您可以在此之前添加节名,如:

section-name/*/*/

作为附录,我发现这仍然需要一些PHP来允许您同时包含和排除页面。我在

中找到了这段代码,作为一个附录,我发现这仍然需要一些PHP来允许同时包含和排除页面。我在

Woah找到了这段代码,我确实想知道这是否可行,但我找不到任何迹象表明这是可行的。酷,谢谢!!!哇,我确实想知道这是否可能,但我找不到任何迹象表明这是可能的。酷,谢谢!!!