{"id":652,"date":"2014-07-17T03:28:41","date_gmt":"2014-07-17T03:28:41","guid":{"rendered":"http:\/\/www.siriinnovations.com\/blog\/?p=652"},"modified":"2019-04-10T14:44:26","modified_gmt":"2019-04-10T09:14:26","slug":"create-module-yii-framework","status":"publish","type":"post","link":"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/","title":{"rendered":"How to create module in YII framework?"},"content":{"rendered":"<p>A module is a self-contained unit which contains models, views, controllers and other supporting components. It is same like an application, but the difference is module can\u2019t be deployed alone.<\/p>\n<p>Modules are useful units in large applications. We can easily develop and maintain the large application by dividing it into several modules and we can use the common modules for several applications.<\/p>\n<p>Creating module: Every module should have unique name in one application and the module should be organized as a folder. The typical directory structure of a module will be like:<\/p>\n<p>For example our module name is &#8216;abc&#8217;, the folder structure is as follows:<\/p>\n<table cellspacing=\"0\" cellpadding=\"0\">\n<tbody>\n<tr>\n<td>abc<\/td>\n<td><\/td>\n<\/tr>\n<tr>\n<td>AbcModule.php<\/td>\n<td>the module class file<\/td>\n<\/tr>\n<tr>\n<td>components<\/td>\n<td>containing reusable user components<\/td>\n<\/tr>\n<tr>\n<td>views<\/td>\n<td>containing view files for widgets<\/td>\n<\/tr>\n<tr>\n<td>controllers<\/td>\n<td>containing controller class files<\/td>\n<\/tr>\n<tr>\n<td>DefaultController.php<\/td>\n<td>the default controller class file<\/td>\n<\/tr>\n<tr>\n<td>extensions<\/td>\n<td>containing third-party extensions<\/td>\n<\/tr>\n<tr>\n<td>models<\/td>\n<td>containing model class files<\/td>\n<\/tr>\n<tr>\n<td>views<\/td>\n<td>containing controller view and layout files<\/td>\n<\/tr>\n<tr>\n<td>layouts<\/td>\n<td>containing layout view files<\/td>\n<\/tr>\n<tr>\n<td>default<\/td>\n<td>containing view files for DefaultController<\/td>\n<\/tr>\n<tr>\n<td>index.php<\/td>\n<td>the index view file<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>A module should have module class which extends from CWebModule.<\/p>\n<p>Using Module:<\/p>\n<p>Place the module directory under the modules folder,then declare the module id in the modules property of the application.<\/p>\n<pre class=\"code\" lang=\"php\">\u00a0return array(\r\n......\r\n'modules'=&gt;array('abc',...),\r\n......\r\n);\r\n<\/pre>\n<p>&nbsp;<\/p>\n<p>The module instance may be accessed via the module property of the currently active controller.<\/p>\n<p>A controller action in a module can be accessed using the route moduleID\/controllerID\/actionID. For example, assuming the above abc module has a controller named PostController, we can use the route abc\/post\/create to refer to the create action in this controller. The corresponding URL for this route would be http:\/\/www.example.com\/index.php?r=abc\/post\/create.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A module is a self-contained unit which contains models, views, controllers and other supporting components. It is same like an application, but the difference is module can\u2019t be deployed alone. Modules are useful units in large applications. We can easily develop and maintain the large application by dividing it into several modules and we can [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":1070,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[9,49],"tags":[92,91,55,90],"class_list":["post-652","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-development","category-php-tutorials","tag-how-to-create-modules-in-yii-framework","tag-modules-in-yii-framework","tag-yii-framework","tag-yii-framework-modules"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>How to create module in YII framework?<\/title>\n<meta name=\"description\" content=\"A module is a self-contained unit which contains models, views, controllers and other supporting components.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to create module in YII framework?\" \/>\n<meta property=\"og:description\" content=\"A module is a self-contained unit which contains models, views, controllers and other supporting components.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/\" \/>\n<meta property=\"og:site_name\" content=\"Siri Innovations\" \/>\n<meta property=\"article:published_time\" content=\"2014-07-17T03:28:41+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-04-10T09:14:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/siriinnovations.com\/blog\/wp-content\/uploads\/2014\/07\/13.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"540\" \/>\n\t<meta property=\"og:image:height\" content=\"241\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Shilpa Buddha\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Shilpa Buddha\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/\"},\"author\":{\"name\":\"Shilpa Buddha\",\"@id\":\"https:\/\/siriinnovations.com\/blog\/#\/schema\/person\/e8e1f72a882fe505ca12b49a7d1d8f5d\"},\"headline\":\"How to create module in YII framework?\",\"datePublished\":\"2014-07-17T03:28:41+00:00\",\"dateModified\":\"2019-04-10T09:14:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/\"},\"wordCount\":287,\"commentCount\":1,\"image\":{\"@id\":\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/siriinnovations.com\/blog\/wp-content\/uploads\/2014\/07\/13.jpg\",\"keywords\":[\"How to create modules in YII framework\",\"Modules in YII framework\",\"yii framework\",\"YII framework Modules\"],\"articleSection\":[\"Development\",\"PHP Tutorials\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/\",\"url\":\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/\",\"name\":\"How to create module in YII framework?\",\"isPartOf\":{\"@id\":\"https:\/\/siriinnovations.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/siriinnovations.com\/blog\/wp-content\/uploads\/2014\/07\/13.jpg\",\"datePublished\":\"2014-07-17T03:28:41+00:00\",\"dateModified\":\"2019-04-10T09:14:26+00:00\",\"author\":{\"@id\":\"https:\/\/siriinnovations.com\/blog\/#\/schema\/person\/e8e1f72a882fe505ca12b49a7d1d8f5d\"},\"description\":\"A module is a self-contained unit which contains models, views, controllers and other supporting components.\",\"breadcrumb\":{\"@id\":\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#primaryimage\",\"url\":\"https:\/\/siriinnovations.com\/blog\/wp-content\/uploads\/2014\/07\/13.jpg\",\"contentUrl\":\"https:\/\/siriinnovations.com\/blog\/wp-content\/uploads\/2014\/07\/13.jpg\",\"width\":540,\"height\":241,\"caption\":\"Yii Framework\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/siriinnovations.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to create module in YII framework?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/siriinnovations.com\/blog\/#website\",\"url\":\"https:\/\/siriinnovations.com\/blog\/\",\"name\":\"Technical blog from Siri Innovations\",\"description\":\"Innovative like no other\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/siriinnovations.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/siriinnovations.com\/blog\/#\/schema\/person\/e8e1f72a882fe505ca12b49a7d1d8f5d\",\"name\":\"Shilpa Buddha\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/siriinnovations.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c4d3d50337b9882c866fe638d3af530f0503e9e499ee77e4e53f9e34605abbe5?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c4d3d50337b9882c866fe638d3af530f0503e9e499ee77e4e53f9e34605abbe5?s=96&d=mm&r=g\",\"caption\":\"Shilpa Buddha\"},\"url\":\"https:\/\/siriinnovations.com\/blog\/author\/shilpa-buddha\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to create module in YII framework?","description":"A module is a self-contained unit which contains models, views, controllers and other supporting components.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/","og_locale":"en_US","og_type":"article","og_title":"How to create module in YII framework?","og_description":"A module is a self-contained unit which contains models, views, controllers and other supporting components.","og_url":"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/","og_site_name":"Siri Innovations","article_published_time":"2014-07-17T03:28:41+00:00","article_modified_time":"2019-04-10T09:14:26+00:00","og_image":[{"width":540,"height":241,"url":"https:\/\/siriinnovations.com\/blog\/wp-content\/uploads\/2014\/07\/13.jpg","type":"image\/jpeg"}],"author":"Shilpa Buddha","twitter_misc":{"Written by":"Shilpa Buddha","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#article","isPartOf":{"@id":"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/"},"author":{"name":"Shilpa Buddha","@id":"https:\/\/siriinnovations.com\/blog\/#\/schema\/person\/e8e1f72a882fe505ca12b49a7d1d8f5d"},"headline":"How to create module in YII framework?","datePublished":"2014-07-17T03:28:41+00:00","dateModified":"2019-04-10T09:14:26+00:00","mainEntityOfPage":{"@id":"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/"},"wordCount":287,"commentCount":1,"image":{"@id":"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#primaryimage"},"thumbnailUrl":"https:\/\/siriinnovations.com\/blog\/wp-content\/uploads\/2014\/07\/13.jpg","keywords":["How to create modules in YII framework","Modules in YII framework","yii framework","YII framework Modules"],"articleSection":["Development","PHP Tutorials"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/","url":"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/","name":"How to create module in YII framework?","isPartOf":{"@id":"https:\/\/siriinnovations.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#primaryimage"},"image":{"@id":"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#primaryimage"},"thumbnailUrl":"https:\/\/siriinnovations.com\/blog\/wp-content\/uploads\/2014\/07\/13.jpg","datePublished":"2014-07-17T03:28:41+00:00","dateModified":"2019-04-10T09:14:26+00:00","author":{"@id":"https:\/\/siriinnovations.com\/blog\/#\/schema\/person\/e8e1f72a882fe505ca12b49a7d1d8f5d"},"description":"A module is a self-contained unit which contains models, views, controllers and other supporting components.","breadcrumb":{"@id":"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#primaryimage","url":"https:\/\/siriinnovations.com\/blog\/wp-content\/uploads\/2014\/07\/13.jpg","contentUrl":"https:\/\/siriinnovations.com\/blog\/wp-content\/uploads\/2014\/07\/13.jpg","width":540,"height":241,"caption":"Yii Framework"},{"@type":"BreadcrumbList","@id":"https:\/\/siriinnovations.com\/blog\/create-module-yii-framework\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/siriinnovations.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to create module in YII framework?"}]},{"@type":"WebSite","@id":"https:\/\/siriinnovations.com\/blog\/#website","url":"https:\/\/siriinnovations.com\/blog\/","name":"Technical blog from Siri Innovations","description":"Innovative like no other","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/siriinnovations.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/siriinnovations.com\/blog\/#\/schema\/person\/e8e1f72a882fe505ca12b49a7d1d8f5d","name":"Shilpa Buddha","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/siriinnovations.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/c4d3d50337b9882c866fe638d3af530f0503e9e499ee77e4e53f9e34605abbe5?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c4d3d50337b9882c866fe638d3af530f0503e9e499ee77e4e53f9e34605abbe5?s=96&d=mm&r=g","caption":"Shilpa Buddha"},"url":"https:\/\/siriinnovations.com\/blog\/author\/shilpa-buddha\/"}]}},"jetpack_featured_media_url":"https:\/\/siriinnovations.com\/blog\/wp-content\/uploads\/2014\/07\/13.jpg","_links":{"self":[{"href":"https:\/\/siriinnovations.com\/blog\/wp-json\/wp\/v2\/posts\/652","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/siriinnovations.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/siriinnovations.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/siriinnovations.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/siriinnovations.com\/blog\/wp-json\/wp\/v2\/comments?post=652"}],"version-history":[{"count":12,"href":"https:\/\/siriinnovations.com\/blog\/wp-json\/wp\/v2\/posts\/652\/revisions"}],"predecessor-version":[{"id":1059,"href":"https:\/\/siriinnovations.com\/blog\/wp-json\/wp\/v2\/posts\/652\/revisions\/1059"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/siriinnovations.com\/blog\/wp-json\/wp\/v2\/media\/1070"}],"wp:attachment":[{"href":"https:\/\/siriinnovations.com\/blog\/wp-json\/wp\/v2\/media?parent=652"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/siriinnovations.com\/blog\/wp-json\/wp\/v2\/categories?post=652"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/siriinnovations.com\/blog\/wp-json\/wp\/v2\/tags?post=652"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}