Go Joomla 1.6 with your extension - Joomla!Days NL 2010 #jd10nl

  • Published on

  • View

  • Download


Slide 1How to get your extension 1.6 readyBy Hannes PapenbergJoomla! Release ManagerDo I need to change my extension?Depends on the extensionAll extensions need to update their language filesAll extensions need to update their XML filesExtensions dependent on the old access system need to updateLanguage ChangesWhy did we change this?MASSIVE speed-improvement (50% faster)What do you need to change?Quote all values in the INIsKeys should only contain Aa-Zz & 0-9Quotes are escaped with _QQ_XML ChangesWhy did we change this?JParameter is deprecated, JForm is the futureWhat do you need to change?Replace all with Replace all with Use Access System ChangesWhy did we change this?Isn't that obvious? ;-)What do you need to change?Change your queries from 'access < '.$gid to 'access IN ('.implode(',',$user->authorisedLevels()).')'Implement access.xml and $user->authorise()Make a native 1.6 extensionUse JForm for formsUse JDatabaseQueryChange your component entry fileUse JCategories for your category systemMove your assets to the /media folderCreate semantic, table-less outputForms with JFormUsed to create dynamic formsProvides easy way to create and extend formsGood example: Backend of com_weblinksJDatabaseQuerySQL Querybuilding classDatabase abstraction layerBe one step ahead, be 1.7 compatibleSyntax:$query = $database->getQuery(true);$query->select('*');$query->from('#__table');$query->where('id = 1');$database->setQuery($query);Component entry fileAll classes used and invoked in the core are overrideable except the component controllersInstead of require_once(JPATH_COMPONENT.'/controller.php')use jimport('joomla.application.component.controller') and $controller = JController::getInstance('Componentname')JCategoriesClass to simply handle your components categoriesCreate a /helpers/categories.php file with the configuration optionsSyntax:$categories = Jcategories::getInstance('com_component');$category = $categories->get($id);$category->getChildren();$category->getParent();Assets in /media folderMake it possible to move your extension from the webrootUse -tag in install fileUse API-functions to access them:JHTML::image()JHTML::stylesheet()JHTML::script()Semantic, table-less outputAsk Angie! ;-)Questions?05/27/09