In this Blog I will describe possible changes to the Joomla 1.0.x system, when backwards compatibility was no issue. Maybe there are some hackers making this true. If not I would appreciate lively discussions.
|
|
Friday, 04 January 2008 |
Have a look at admin components like com_content, com_typedcontent, com_categories, com_sections. There are several components managing one logical component: com_content. I know that other components can share the category table, but most components do not make use of it, so let categories get handled by each component itself and get rid of com_categories and com_sections. com_typedcontent is a special case of com_content, so why sourcing it out?
Another example is com_modules, com_mambots, com_templates, com_installer. These components manage extensions, so why not merging those components that do similar things?
Its a pitty that Joomla 1.5 will continue with this old approach. |
|
|
Thursday, 03 January 2008 |
Joomla needs a clear convention for executing components and modules encapsulated in the core. A typical URL for reading a content item is: index.php?option=com_content&task=view&id=1&Itemid=2
Here we have a controller (option) "com_content" executed which calls a specific action (task) "view" to show a content item. If Joomla could implement a real front controller pattern, the only job a component coder has to do is to write a task within a component as a container. By now a component coder has to write the controller for himself (mapping tasks to function calls). This should be taken over by the Joomla core. |
|
|
Create An Extension Folder |
|
Friday, 21 December 2007 |
Components, modules, plugins, languages, templates are extensions of Joomla, so I would create an extension folder and move all appropriate folders into this folder and protect it with an htaccess deny from all. Furthermore give all modules and plugins their own folder. Templates got their own, why not modules and plugins? So far a module mod_login consists of 2 files mod_login.php and mod_login.xml in the modules folder. Move these files into a mod_login folder and things are organized better, I think. Components are so much complicated, as they are organized in frontend and backend folder. You have to update an xml-install file, that copies every file to its proper place when you install the component. It was much simpler to have frontend and backend files together in one place: extensions/components/com_, so you have only one folder to drop into the components folder. |
|
|
Friday, 21 December 2007 |
First thing, I would change in Joomla 1.0.x is to remove all legacy code regarding old mambo files, backward compatibility files and files that check for older PHP versions. Joomla! Go PHP5 |
|
|