Tôi đã tìm thấy cách nhúng WebContent trong chủ đề Liferay 6.2 bằng phương thức journalContentUtil.getContent
. Câu hỏi của tôi là làm thế nào để làm điều tương tự trong Liferay 7?Làm thế nào để nhúng WebContent trong freemarker Liferay 7 chủ đề?
Trả lời
Lớp học gần nhất với journalContentUtil
là JournalContentImpl
và nó có hầu hết các phương pháp tương tự liên quan đến getContent
. Bạn có thể xem mã tại đây JournalContentImpl
Để nhúng WebContent trong Liferay 7, trước hết, bạn phải bật serviceLocator trong Pa-nen điều khiển -> Cấu hình -> Cài đặt hệ thống -> Foundation -> FreeMarker Engine -> Biến hạn chế. Ở đó bạn có thể loại bỏ serviceLocator
Bây giờ bạn có thể sử dụng nó ví dụ như trong Mẫu đơn đăng ký hiển thị (Freemarker):
<#assign liferay_ui = taglibLiferayHash["/META-INF/liferay-ui.tld"] />
<#assign journalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") />
và sau đó sử dụng journalArticleLocalService để lấy WebContent làm
getArticleContent(long groupId, String articleId, double version, String viewMode, String ddmTemplateKey, String languageId, ThemeDisplay themeDisplay)
Về mặt kỹ thuật, tôi nghĩ câu trả lời này chính xác hơn tuy nhiên tôi thích câu trả lời từ @ abhishek-suthar vì nội dung sẽ được thêm vào với các điều khiển portlet và nó dễ dàng hơn cho quản trị viên chỉnh sửa. Nếu bạn chỉ muốn thêm html, phương pháp này hoạt động tốt nhất. Chỉ để bổ sung dòng cuối cùng của mã, đây là một ví dụ về cách gọi phương thức '' '<#assign article = journalArticleLocalService.fetchArticle (group_id," FOOTER ")>' '' sau đó '' '$ {journalArticleLocalService.getArticleContent (article, article.getDDMTemplateKey(), "VIEW", locale, themeDisplay)} '' ' – gus3001
tôi đã tìm ra cách sửa nội dung web thông qua mẫu ftl tùy chỉnh trong Liferay 7/DXP.
Dưới đây là đoạn code mẫu,
<#assign VOID = freeMarkerPortletPreferences.setValue("portletSetupPortletDecoratorId", "barebone") />
<#assign theme_groupID = htmlUtil.escape(theme_display.getCompanyGroupId()?string) />
<#assign VOID = freeMarkerPortletPreferences.setValue("groupId", '${group_id}') />
<#assign VOID = freeMarkerPortletPreferences.setValue("articleId", "yourarticleid") />
<@liferay_portlet["runtime"]
defaultPreferences="${freeMarkerPortletPreferences}"
portletProviderAction=portletProviderAction.VIEW
instanceId="footercontent"
portletName="com_liferay_journal_content_web_portlet_JournalContentPortlet" />
${freeMarkerPortletPreferences.reset()}
Hãy chắc chắn rằng ArticleID mà bạn đang cung cấp trong tùy chọn là dưới groupId.Means nhóm/trang web nên chứa WebContent.
Điều này thật tuyệt vời, phù hợp với tôi! Câu hỏi của tôi là, làm thế nào bạn tìm ra cách để làm điều này? Tôi không thể tìm thấy bất kỳ tài liệu nào về cách sử dụng @liferay_portlet ["runtime"] – gus3001
- 1. Làm thế nào để tạo chủ đề mới trong drupal 7
- 2. Làm cách nào để sử dụng chủ đề ánh sáng trong Windows Phone 7?
- 3. Làm thế nào để tạo chủ đề trong apache kafka?
- 4. Làm thế nào để thêm jstl vào một portlet Liferay?
- 5. Làm thế nào để chụp toàn bộ WebContent bên trong CurrentWindow
- 6. Python nhúng với chủ đề - tránh deadlocks?
- 7. Làm thế nào để vô hiệu hóa bộ nhớ đệm trong liferay?
- 8. Làm thế nào để thực hiện hook_theme trong drupal 7?
- 9. Thay đổi chủ đề trong Vaadin 7 qua mã
- 10. Làm thế nào để nhúng Ruby trong C++?
- 11. Theo dõi chủ đề Java. Làm thế nào để tìm ra chủ đề không daemon sống?
- 12. Làm thế nào để tiêu diệt một Chủ đề MFC?
- 13. Tomcat-Jaas - Làm thế nào để lấy chủ đề?
- 14. Làm thế nào để AppDomain.Unload() hủy bỏ các chủ đề?
- 15. Đối với pthread, Làm thế nào để giết chủ đề con từ chủ đề chính
- 16. Làm thế nào để giữ cho chủ đề nghe Alive
- 17. làm thế nào để swtich extjs chủ đề?
- 18. Làm thế nào để nhúng Tomcat 6?
- 19. Làm thế nào để đếm số lượng các chủ đề đồng thời trong ứng dụng .NET?
- 20. Các chủ đề ghi đè trong Windows Phone 7
- 21. Làm thế nào để nhúng LLVM?
- 22. Làm thế nào để ẩn Hiển thị văn bản kết quả trong Liferay Search Container?
- 23. Freemarker thoát freemarker
- 24. Làm cách nào để tắt máy chủ JBoss AS 7?
- 25. Làm thế nào để hiển thị UTF8 trong Netbeans 7?
- 26. Scala: làm thế nào để nhúng một máy chủ web nhỏ vào một ứng dụng scala?
- 27. Làm thế nào để sử dụng HTML5 trong IE 7?
- 28. làm thế nào để nhúng video trong ứng dụng elm
- 29. Làm thế nào để nhúng một UITableView trong một UIScrollView
- 30. Làm thế nào để nhúng hình ảnh trong gorilla-repl?
'JournalContentImpl' không phải là dịch vụ truy cập trong ngữ cảnh freemarker/vận tốc –
Bạn đã thử với lớp dịch vụ' JournalContent', đúng không ?! – KLajdPaja