Liferay页面友好URL代URL

Liferay page friendly URL generation URL

当我在 Liferay 中创建一个页面(我使用的是 6.2)时,它会收到一个自动生成的友好 URL,遵循几个内部规则。

因此,例如,如果我创建一个名为 aaa 的页面,它将自动接收 /aaa 友好 URL。

此外,如果我创建页面 "aaa" 作为页面 xxx, 的子页面,它将收到相同的 /aaa 友好 URL。

对于 SEO 问题,我需要按照不同的模式创建:parent_friendlyURL + page_friendlyURL

这意味着,如果 xxx 父页面有 /xxx 友好 URL,它的子页面 aaa 应该有 /xxx/aaa 友好 URL , 而不仅仅是 /aaa.

我搜索了 portal.properties 个选项,但没有找到解决问题的方法。 您认为是否存在实现此目的的快速方法,或者我必须通过钩子来完成?

谢谢

我查看了 LayoutLocalServiceImpl.java,如果用户不传入 friendlyURL.

,它会从 LayoutLocalServiceHelper.java 获取自动生成的链接

所以您可以采用两种方法。

  1. 您可以通过管理页面简单地编辑页面的友好 URL。
  2. 您可以编写一个挂钩来包装 LayoutLocalService class,如果 friendlyURL 参数为 null 或空字符串,请编写您自己的逻辑来生成 friendlyURL。如果您不确定如何操作,请参阅以下问题:How to replace a function on a Liferay native portlet.