If you can't read please download the document
Upload
joomladays-netherlands
View
3.219
Download
1
Embed Size (px)
Citation preview
Slide 1
How to get your extension 1.6 ready
By Hannes PapenbergJoomla! Release Manager
Do I need to change my extension?
Depends on the extension
All extensions need to update their language files
All extensions need to update their XML files
Extensions dependent on the old access system need to update
Language Changes
Why did we change this?MASSIVE speed-improvement (50% faster)
What do you need to change?
Quote all values in the INIs
Keys should only contain Aa-Zz & 0-9
Quotes are escaped with _QQ_
XML Changes
Why did we change this?JParameter is deprecated, JForm is the future
What do you need to change?
Replace all with
Replace all with
Use
Access System Changes
Why 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 extension
Use JForm for forms
Use JDatabaseQuery
Change your component entry file
Use JCategories for your category system
Move your assets to the /media folder
Create semantic, table-less output
Forms with JForm
Used to create dynamic forms
Provides easy way to create and extend forms
Good example: Backend of com_weblinks
JDatabaseQuery
SQL Querybuilding class
Database abstraction layer
Be one step ahead, be 1.7 compatible
Syntax:$query = $database->getQuery(true);
$query->select('*');
$query->from('#__table');
$query->where('id = 1');
$database->setQuery($query);
Component entry file
All classes used and invoked in the core are overrideable except the component controllers
Instead of require_once(JPATH_COMPONENT.'/controller.php')
use jimport('joomla.application.component.controller') and
$controller = JController::getInstance('Componentname')
JCategories
Class to simply handle your components categories
Create a /helpers/categories.php file with the configuration options
Syntax:$categories = Jcategories::getInstance('com_component');
$category = $categories->get($id);
$category->getChildren();
$category->getParent();
Assets in /media folder
Make it possible to move your extension from the webroot
Use -tag in install file
Use API-functions to access them:JHTML::image()
JHTML::stylesheet()
JHTML::script()
Semantic, table-less output
Ask Angie! ;-)
Questions?
05/27/09