{"id":37635,"date":"2014-01-09T05:55:26","date_gmt":"2014-01-09T13:55:26","guid":{"rendered":"http:\/\/localhost\/exoblog\/?p=6352"},"modified":"2023-06-05T16:43:50","modified_gmt":"2023-06-05T14:43:50","slug":"customize-exo-platform-without-coding-thanks-extension-generator","status":"publish","type":"post","link":"https:\/\/www.exoplatform.com\/blog\/customize-exo-platform-without-coding-thanks-extension-generator\/","title":{"rendered":"Customize eXo Platform without coding thanks to the Extension Generator"},"content":{"rendered":"<p>The Extension Generator is an application designed to simplify the life of developers. It generates the source code of an extension project based on customizations done via the UI. There is no need to deal with the complexity of the numerous XML configuration files: they are generated automatically in a few clicks!<\/p>\n<p><!--more--><\/p>\n<h2>What extensions can I create in eXo?<\/h2>\n<p>Currently the Extension Generator is able to export the following kinds of customizations:<\/p>\n<ul>\n<li><a href=\"http:\/\/docs.exoplatform.com\/public\/index.jsp?topic=%2FPLF40%2FPLFDevGuide.CustomizingYourPortal.CreatingNewSite.html&amp;cp=1_3_2_1\" target=\"_blank\" rel=\"noopener\" class=\"broken_link\">Site layout<\/a><\/li>\n<li><a href=\"http:\/\/docs.exoplatform.com\/public\/index.jsp?topic=%2FPLF40%2FPLFDevGuide.CustomizingYourPortal.DefiningSiteStructure.html&amp;resultof=%22pages%2exml%22\" target=\"_blank\" rel=\"noopener\" class=\"broken_link\">Pages and menu<\/a><\/li>\n<li><a href=\"http:\/\/docs.exoplatform.com\/public\/index.jsp?topic=%2FPLF40%2FJCR.NodeTypes.html&amp;resultof=%22add%2enodetype%22\" target=\"_blank\" rel=\"noopener\" class=\"broken_link\">Content types<\/a><\/li>\n<li><a href=\"http:\/\/docs.exoplatform.com\/public\/index.jsp?topic=%2FPLF40%2FPLFDevGuide.WorkingWithContent.ContentTemplates.html&amp;resultof=%22content%22%20%22templates%22%20%22templat%22\" target=\"_blank\" rel=\"noopener\" class=\"broken_link\">Content templates (view and form)<\/a><\/li>\n<li><a href=\"http:\/\/docs.exoplatform.org\/public\/index.jsp?topic=%2FPLF40%2FPLFRefGuide.Configurations.ExternalComponentPlugins.Content.XMLdeploymentPlugin.html&amp;resultof=%22XMLDeploymentPlugin%22%20%22xmldeploymentplugin%22\" target=\"_blank\" rel=\"noopener\" class=\"broken_link\">Contents<\/a><\/li>\n<\/ul>\n<h2>How can I customize the portal using the UI?<\/h2>\n<p>While the Extension Generator will save you the burden of learning some XML syntax upfront, you still need to create the customization via the UI. Here are a few pointers to get you started:<\/p>\n<ul>\n<li><a href=\"http:\/\/docs.exoplatform.com\/public\/index.jsp?topic=%2FPLF40%2FPLFUserGuide.AdministeringeXoPlatform.ManagingSites.EditingSite.html&amp;resultof=%22layout%22\" target=\"_blank\" rel=\"noopener\" class=\"broken_link\">Create new site<\/a><\/li>\n<li><a href=\"http:\/\/docs.exoplatform.com\/public\/index.jsp?topic=%2FPLF40%2FPLFUserGuide.AdministeringeXoPlatform.ManagingSites.EditingSite.html&amp;resultof=%22layout%22\" target=\"_blank\" rel=\"noopener\" class=\"broken_link\">Site layout editor<\/a><\/li>\n<li><a href=\"http:\/\/docs.exoplatform.com\/public\/index.jsp?topic=%2FPLF40%2FPLFUserGuide.AdministeringeXoPlatform.ManagingPages.AddingNewPage.html&amp;resultof=%22layout%22\" target=\"_blank\" rel=\"noopener\" class=\"broken_link\">Add pages<\/a><\/li>\n<li><a href=\"http:\/\/docs.exoplatform.com\/public\/index.jsp?topic=%2FPLF40%2FPLFUserGuide.AdministeringeXoPlatform.ManagingPages.EditingPage.html&amp;cp=1_1_10_6_1\" target=\"_blank\" rel=\"noopener\" class=\"broken_link\">Edit pages<\/a><\/li>\n<li><a href=\"http:\/\/docs.exoplatform.com\/public\/index.jsp?topic=%2FPLF40%2FPLFRefGuide.Configurations.ExternalComponentPlugins.Content.TaxonomyPlugin.html&amp;resultof=%22taxonomies%22%20%22taxonomi%22\" target=\"_blank\" rel=\"noopener\" class=\"broken_link\">Working with dynamic and static content<\/a><\/li>\n<li><a href=\"http:\/\/docs.exoplatform.com\/public\/index.jsp?topic=%2FPLF40%2FPLFUserGuide.ManagingYourWebsites.ManagingCategories.html\" target=\"_blank\" rel=\"noopener\" class=\"broken_link\">Taxonomies<\/a><\/li>\n<\/ul>\n<p>And there are other customizations, especially in the <a href=\"http:\/\/docs.exoplatform.com\/public\/index.jsp?topic=%2FPLF40%2FPLFUserGuide.AdministeringeXoPlatform.ContentAdministration.html&amp;resultof=%22Content%22%20%22content%22%20%22Administration%22%20%22administr%22\" target=\"_blank\" rel=\"noopener\" class=\"broken_link\">Content administrator<\/a> UI.<\/p>\n<h2>So, how do I export my customizations?<\/h2>\n<p>1. <a href=\"https:\/\/community.exoplatform.com\/portal\/intranet\/addon-detail?content-id=\/repository\/collaboration\/sites\/intranet\/web%20contents\/Contributions\/configuration-extension-generator\" target=\"_blank\" rel=\"noopener\">Download<\/a><\/p>\n<p>2. <a href=\"https:\/\/community.exoplatform.com\/portal\/intranet\/wiki\/group\/spaces\/configuration_generator\/Installation\" target=\"_blank\" rel=\"noopener\">Install<\/a><\/p>\n<p>3. Start eXo Platform server<\/p>\n<p>4. Go to the Extension Generator page<\/p>\n<p><a href=\"https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/01-Extension-Manager.png\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-6353\" src=\"https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/01-Extension-Manager.png\" alt=\"01-Extension-Manager\" width=\"349\" height=\"566\" \/><\/a><\/p>\n<p>You&#8217;ll get access to the application if you are authenticated as an administrator.<\/p>\n<p><a href=\"https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/02-Extension-Manager.png\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-medium wp-image-6354\" src=\"https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/02-Extension-Manager.png\" alt=\"02-Extension-Manager\" width=\"300\" height=\"187\" \/><\/a><\/p>\n<p>In the left panel, select what customizations you want to generate. You can use the search field to filter the list of results:<\/p>\n<p><a href=\"https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/03-Extension-Manager.png\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-medium wp-image-6355\" src=\"https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/03-Extension-Manager.png\" alt=\"03-Extension-Manager\" width=\"170\" height=\"300\" srcset=\"https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/03-Extension-Manager.png 360w, https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/03-Extension-Manager-269x473.png 269w, https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/03-Extension-Manager-134x236.png 134w, https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/03-Extension-Manager-75x131.png 75w, https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/03-Extension-Manager-51x90.png 51w, https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/03-Extension-Manager-17x30.png 17w\" sizes=\"(max-width: 170px) 100vw, 170px\" \/><\/a><\/p>\n<p>What you select will be summarized on the right-hand side.<\/p>\n<p><a href=\"https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/04-Extension-Manager.png\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-medium wp-image-6356\" src=\"https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/04-Extension-Manager.png\" alt=\"04-Extension-Manager\" width=\"300\" height=\"261\" srcset=\"https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/04-Extension-Manager.png 759w, https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/04-Extension-Manager-300x261.png 300w, https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/04-Extension-Manager-543x473.png 543w, https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/04-Extension-Manager-377x328.png 377w, https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/04-Extension-Manager-271x236.png 271w, https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/04-Extension-Manager-150x131.png 150w, https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/04-Extension-Manager-100x87.png 100w, https:\/\/www.exoplatform.com\/blog\/wp-content\/uploads\/2014\/01\/04-Extension-Manager-34x30.png 34w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>Enter the name of your extension, choose the format for your project and finally click on the &#8220;Export&#8221; button.<\/p>\n<p>Your extension is now ready to use. You can run &#8220;mvn install&#8221; if you exported your extension as a Maven project. Alternatively, if you want an extension in binary form, you can directly generate a war file or an ear file.<\/p>\n<p>Here is a screencast showing how the Extension Generator can be used:<\/p>\n<p>For more details:<\/p>\n<ul>\n<li><a href=\"https:\/\/community.exoplatform.com\/portal\/g\/:spaces:configuration_generator\/dev_kit_extension_generator\" target=\"_blank\" rel=\"noopener\">Join the &#8220;Dev Kit Extension Generator&#8221; space<\/a><\/li>\n<li><a href=\"https:\/\/community.exoplatform.com\/portal\/g\/:spaces:configuration_generator\/dev_kit_extension_generator\/wiki\" target=\"_blank\" rel=\"noopener\">Read the Wiki<\/a><\/li>\n<li><a href=\"https:\/\/community.exoplatform.com\/portal\/g\/:spaces:configuration_generator\/dev_kit_extension_generator\/forum\" target=\"_blank\" rel=\"noopener\">Use the forum<\/a> if you have questions<\/li>\n<li><a href=\"https:\/\/community.exoplatform.com\/portal\/dw\/\" target=\"_blank\" rel=\"noopener\">Chat with me on the eXo Community site<\/a><\/li>\n<\/ul>\n<p>See you there \ud83d\ude09<\/p>\n","protected":false},"excerpt":{"rendered":"The Extension Generator is an application designed to simplify the life of developers. It generates the source code of an extension project based on customizations done via the UI. There is no need to deal with the complexity of the numerous XML configuration files: they are generated automatically in a few clicks!","protected":false},"author":7,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[699],"tags":[],"lang":"en","translations":{"en":37635},"pll_sync_post":[],"_links":{"self":[{"href":"https:\/\/www.exoplatform.com\/blog\/wp-json\/wp\/v2\/posts\/37635"}],"collection":[{"href":"https:\/\/www.exoplatform.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.exoplatform.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.exoplatform.com\/blog\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.exoplatform.com\/blog\/wp-json\/wp\/v2\/comments?post=37635"}],"version-history":[{"count":0,"href":"https:\/\/www.exoplatform.com\/blog\/wp-json\/wp\/v2\/posts\/37635\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.exoplatform.com\/blog\/wp-json\/wp\/v2\/media?parent=37635"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.exoplatform.com\/blog\/wp-json\/wp\/v2\/categories?post=37635"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.exoplatform.com\/blog\/wp-json\/wp\/v2\/tags?post=37635"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}