我有一个名为 Kids 的基本页面,其别名路径为:example.com/kids
我还有一个名为 Resources 的内容类型,它带有标签。
我想创建一个块来获取所有带有“kids”标签或任何基本页面别名的资源。我不想为每个基本页面创建一个带有硬编码过滤器的块。
我创建了一个 View ,并将上下文过滤器设置为 URL 的第一个参数,期望它是基本页面的别名。不幸的是,这不起作用,因为上下文过滤器似乎在别名之后启动。example.com/kids
不返回任何结果。example.com/kids/kids
按照我的意愿行事并返回所有标记为 child 的资源。但是,如果我创建嵌套在 Kids 下的第二个基本页面,它会停止工作,因为 kids/kids
现在是有效的别名路径,因此上下文过滤器会忽略它。
tl;博士;
是否有使用基本页面别名作为上下文过滤器的模块或方法?
谢谢!
最佳答案
在上下文过滤器设置中,您可以选择在未通过时设置默认值(这就是您的别名发生的情况)。然后,您可以编写一些 PHP 来返回页面别名的最后一部分。
类似的东西:
return array_pop(explode('/',drupal_get_path_alias()));
因此,现在当您转到“example.com/kids”时,上下文过滤器将包含参数“kids”。
别名路径“example.com/kids/kids”也是如此。
关于drupal - 如何使用基本页面的别名作为上下文过滤器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10217233/