我有一个名为 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/

10-09 21:45