2016-09-28 102 views
2

我正在使用文章顯示頁面來顯示我的網頁內容Liferay 6.2。我試圖找出如何在/-/之後編輯我友好的URL的路徑。更改Liferay中網頁內容的友好URL

當前網址:siteName/-/articleName

所需的URL:siteName/-/topicSection/articleName

回答

2

你所談論的屬性JournalArticle.urlTitle。問題是,Liferay中沒有UI,它允許您更改該屬性(至少不是開箱即用)。

你有兩個選擇:

  • 如果你只是想改變現有的文章,你可以更改數據庫屬性(我猜的額外/是沒有問題的):

    UPDATE JournalArticle 
        SET urlTitle = 'topicSection/articleName' 
        WHERE urlTitle = 'articleName' 
    
  • 如果您想提供用於編輯該屬性的UI,您可以編寫一個鉤子。

這裏一個簡短的總結如何寫這樣一個鉤:

  1. 此行添加到您的liferay-hook.xml

    <portal-properties>portal.properties</portal-properties> 
    <language-properties>Language.properties</language-properties> 
    <custom-jsp-dir>/WEB-INF/custom_jsps</custom-jsp-dir> 
    
  2. 在Java源代碼目錄創建一個文件portal.properties和添加此行:

    journal.article.form.update = urlTitle 
    
  3. 在Java源代碼目錄創建一個文件Language.properties,並加入這一行:

    urlTitle = Friendly URL 
    
  4. 添加文件WEB-INF/custom_jsps/html/portlet/journal/article/urlTitle.jsp到Web內容文件夾:

    <%@ include file="/html/portlet/journal/init.jsp" %> 
    <% JournalArticle article = (JournalArticle)request.getAttribute(WebKeys.JOURNAL_ARTICLE); %> 
    <aui:model-context bean="<%= article %>" model="<%= JournalArticle.class %>" /> 
    
    <h3>Friendly URL</h3> 
    
    <aui:input name="urlTitle" /> 
    
+2

我不能相信這答案沒有任何upvote或評論。這個棒極了!!最後是一個很好解釋的更改網頁內容網址標題的方法。我使用「更新數據庫」醜陋模式,但現在我用你的鉤子終於能夠修改網址標題。最後,我可以通過複製他人或使用稍後可以更改的愚蠢標題來創建網頁內容,並更改其網址標題。沒有人想要這些東西,或者每個人都放棄了,轉移到liferay 7左右? –

+0

4中的小錯字你需要關閉這個JSP標記<%JournalArticle ... – Endre

+0

修復 - 謝謝你的評論 –