構造的に表示 平面上に表示 ツリー上に表示
スレッド [ 前へ | 次へ ]
toggle
Sampsa Sohlman
Multilingual friendly urls for portal pages
2009/11/18 14:01
答え

Sampsa Sohlman

LIFERAY STAFF

ランク: Regular Member

投稿: 218

参加年月日: 2007/09/27

最近の投稿

Hello all

Because of the Blog of Jorge Ferrer and related comment. I decided to write my suggestion how to make multilingual friendly urls to Liferay portal page.

At "Manage pages" there are fields "Name" and "HTML title" which can have multilingual values, but friendlyurl cannot. ´The case of friendly is little bit more compicated, because url has to be unique, which means that page's friendlyurl should be unique. There is also issue that differnent languages can have same words like Spanish has "flor" and Portuguese has "flor" (which both means flower) and also cases that same word on different languages might have different meaning too. So to solve this locale information should also binded to page's friendly url. So this could be done on following way.

Example 1: page flower on different languages

1http://localhost:8080/web/guest/en_us/flower
2http://localhost:8080/web/guest/es_es/flor
3http://localhost:8080/web/guest/pt_pt/flor


or there might be solution to add that locale to first like current solution, but I believe that it would fit better to Liferay architecture to add locale after the group. So second option would look like.

Example 2:

1http://localhost:8080/en_us/web/guest/flower
2http://localhost:8080/es_es/web/guest/flor
3http://localhost:8080/pt_pt/web/guest/flor

And of course the url http://localhost:8080/web/guest/es_es/flower or http://localhost:8080/es_es/web/guest/flower would not work, because the friendly url is language based.

When using virtual hosting for communities, friendly url would look following.

1http://mysite.local:8080/en_us/flower
2http://mysite.local:8080/es_es/flor
3http://mysite.local:8080/pt_pt/flor


What if the every or some languages would like to have their own virtual host. Example:

1http://us.mysite.local:8080/flower
2http://es.mysite.local:8080/flor
3http://pt.mysite.local:8080/flor


If there is only one language defined then the locale information would not be visible on url.

1http://localhost:8080/web/guest/flower


Tecnically this could be implemented by moving frienldyurl from Layout entity to new FriendlyUrl entity, which would then point to Layout. This way the database index would also look after integrity of url. I have't dug very deep to source to look where else it would effect.

This kind of feature would be very usefull for me and my clients emoticon With current Liferay design the friendly url might be in Finnish but content is Basque, which is not good.

If you have ideas let's discuss at here.

- Sampsa
Lisa Simpson
RE: Multilingual friendly urls for portal pages
2009/11/20 22:59
答え

Lisa Simpson

ランク: Liferay Legend

投稿: 2034

参加年月日: 2009/03/05

最近の投稿

I'm currently having a rant about this very issue myself... You can find it here.... Poor Dimtry... try doing this in Cyrillic characters....
Jorge Ferrer
RE: Multilingual friendly urls for portal pages
2009/11/23 0:29
答え

Jorge Ferrer

LIFERAY STAFF

ランク: Liferay Legend

投稿: 2757

参加年月日: 2006/08/31

最近の投稿

Hi Sampsa,

Thanks a lot for your analysis. Using a locale at the beginning of the URL path is actually already supported in 5.2, and will be added by default for all languages other than the default in 5.3.

Regarding the implementation I can see a few challenges. First, as you say, we would need two new entities: LayoutFriendlyURL and GroupFriendlyURL. They would have the following columns:

GroupFriendlyURL
- companyId (not absolutely needed, but added for performance reasons following the current patterns)
- groupId
- languageId
- friendlyURL

LayoutFriendlyURL
- companyId (not absolutely needed, but added for performance reasons following the current patterns)
- groupId (not absolutely needed, but added for performance reasons following the current patterns)
- plid
- languageId
- friendlyURL

Then, the FriendlyURLServlet would need to be modified so that it's aware of the locale and can search for the appropriate group and layout using the new entities.

In any case, it seems quite doable. Sampsa, if you have the time, it would be very helpful if you could take a deeper look and find out if there are any pending challenges that would need further consideration.
Sampsa Sohlman
RE: Multilingual friendly urls for portal pages
2009/11/23 14:29
答え

Sampsa Sohlman

LIFERAY STAFF

ランク: Regular Member

投稿: 218

参加年月日: 2007/09/27

最近の投稿

Hi Jorge

For sure I will look on to this. It will be usefull feature emoticon

You also did add the multilingual frienlyurl for group, which is good.

So the plain url would then look following.

1http://localhost:8080/<locale>/web|group/<localized name for group>/<localized name for page>

Quick guestion?

Why to group's friendlyurl is on Group entity and virtualhost is located at LayoutSet?

The encoding issue that Lisa mentioned has to be also taken account.

- Sampsa
Zsolt Balogh
RE: Multilingual friendly urls for portal pages
2009/11/23 23:23
答え

Zsolt Balogh

LIFERAY STAFF

ランク: Expert

投稿: 459

参加年月日: 2009/03/23

最近の投稿

Sampsa Sohlman:
Why to group's friendlyurl is on Group entity and virtualhost is located at LayoutSet?

There's one friendly URL for the group, but there are 2 layoutSets - the public and the private. This way you can create one virtual host for your public and one for private pages.

The friendlyUrl is the same for the public and private pages because from the /web/ or /group/ portal knows it's a public or a private layoutset, there's no need to have 2 names.
Sampsa Sohlman
RE: Multilingual friendly urls for portal pages
2009/11/24 2:05
答え

Sampsa Sohlman

LIFERAY STAFF

ランク: Regular Member

投稿: 218

参加年月日: 2007/09/27

最近の投稿

Thanks, that is also clearly explained at Control panel's "Edit Pages for Community"

- Sampsa
Charles de Courval
RE: Multilingual friendly urls for portal pages
2010/09/07 12:33
答え

Charles de Courval

ランク: Junior Member

投稿: 55

参加年月日: 2010/07/31

最近の投稿

Hi ,
I'm cuttently having the same problem where I'm trying to have friendly url in both french and english. i'm using Liferay 6.0.5 and I'm wonderring if this issue has been fixed and if so, how to implement it?
thanks
Jorge Ferrer
RE: Multilingual friendly urls for portal pages
2010/09/08 2:56
答え

Jorge Ferrer

LIFERAY STAFF

ランク: Liferay Legend

投稿: 2757

参加年月日: 2006/08/31

最近の投稿

Hi Charles,

Liferay does not support having more than one friendly URL for the same page at once. This thread is a proposal to implement such functionality to allow entering one friendly URL per supported language, but it hasn't been implemented yet.

Jorge
Sampsa Sohlman
RE: Multilingual friendly urls for portal pages
2010/09/17 14:29
答え

Sampsa Sohlman

LIFERAY STAFF

ランク: Regular Member

投稿: 218

参加年月日: 2007/09/27

最近の投稿

As I know nothing has done for this, may be to create improvement issue to Jira.
Denis Signoretto
RE: Multilingual friendly urls for portal pages
2012/12/04 10:05
答え

Denis Signoretto

ランク: Regular Member

投稿: 216

参加年月日: 2009/04/21

最近の投稿

Sampsa Sohlman:
As I know nothing has done for this, may be to create improvement issue to Jira.


Hi Sampsa,

do you know if some improvement about this issue will be available on next release (6.2) ?

Thanks,
Denis.
Mika Koivisto
RE: Multilingual friendly urls for portal pages
2012/12/04 10:18
答え

Mika Koivisto

LIFERAY STAFF

ランク: Liferay Legend

投稿: 1501

参加年月日: 2006/08/07

最近の投稿

Denis, the work has not been started yet so it's hard to say whether it makes 6.2 or not.
Denis Signoretto
RE: Multilingual friendly urls for portal pages
2012/12/05 0:26
答え

Denis Signoretto

ランク: Regular Member

投稿: 216

参加年月日: 2009/04/21

最近の投稿

Thank you Mika.

Do you know if there is an already opened issue I can follow (watch on Jira)?

Thanks,
Denis.
Sampsa Sohlman
RE: Multilingual friendly urls for portal pages
2012/12/12 0:26
答え

Sampsa Sohlman

LIFERAY STAFF

ランク: Regular Member

投稿: 218

参加年月日: 2007/09/27

最近の投稿

Denis Signoretto:
Do you know if there is an already opened issue I can follow (watch on Jira)?


There is clearly need for for this for these kind of feature, but as I know of there is still no jira issue of it. We could continue this thread and make a little specification and put it then through Liferay's product managment and hope that it then would turn up to product.

I have actually made a little proof of consept of the site part of this feature and I call it SiteURL. SiteUrl is to manage url + locale (+ redirect etc.) to site. This you can find out from git hub. https://github.com/sammso/liferay-portal/tree/6.1.1-ga2-siteurl. This is still missign page friendly url, but I think it is doable. Disclaimer: It is partially working and it is not done yet, but you can take a look. If you are running it you have to fill siteurl table from LR database. I'm currently Liferay employee so I have to mention that this feature is my personal experiment there is no guarantee that it will ever come part of the product..