首页 > 解决方案 > AEM 内部重定向和解析嵌套内容

问题描述

我有以下内容结构。

我希望客户使用速记网址。例如; 客户在尝试以下 url 时应获得 blog_about_vegan:https ://www.somedomain.com/site/de/category1/blog_about_vegan 。他不应该担心年份和季度,因为它们只是用于分类。

我在 /etc/map 中配置了 sling 映射以重新映射 url 以在 /content 中搜索内容。但我无法弄清楚如何让 sling 查看特定类别的所有年份和季度文件夹以找到这篇文章。

我正在寻找具有嵌套搜索功能的动态内部重定向之类的东西。你能指教吗

标签: aemslingaem-6

解决方案


Sling RequestResolver 不会进行任何搜索或查询。因此,您需要操纵您的 URL(在网络服务器中),使其与您的 Servlet 匹配。然后您的 Servlet 将查询/解析 URL 的剩余部分并再次将呈现转发给 Sling。

我建议对类别和文章使用 Sling-Suffix。所以 AEM 中的 URL 将是http://localhost:4502/content/site/de.article-search.html/category1/blog_about_vegan. 这很容易在 Web 服务器中完成(例如 mod_rewrite)。然后为“de”-resourceType 和选择器“article-search”注册一个 servlet。

然后request.getRequestPathInfo().getSuffix()你可以找到文章。如果您找到页面/资源,request.getRequestDispatcher(...).forward(...)您可以让 Sling 进行渲染。


推荐阅读