Joomla

From Elvanör's Technical Wiki
Jump to navigation Jump to search

Concepts

  • There can be only one component per page (it generally forms the "content area" of the template), but there can be a lot of modules.
  • A plugin is even more advanced and can modify very low level functionality.

Configuration

  • Joomla saves some of the settings (the one accessibles via the back office at Site -> Global configuration) to the configuration file and not to the database.

Choosing a template

  • A correct template should have in its XML description file the different positions that can be used to insert modules:
 	<positions>
		<position>left</position>
		<position>right</position>
		<position>debug</position>
		<position>syndicate</position>
	</positions>

Overriding modules outputs

  • Joomla 1.5 has a very powerful mechanism to override (customize) the output of modules. Any module output can be changed, you have to create in your current template directory the following structure:
html/module_name/file.php
  • Be careful that inside the module_name directory, the files copied must *exactly* match the ones used by the modules.

Modules

  • You can specify which menus (sections, or categories) a module appears in, which allows you to only have modules for certain pages.

Front Page

  • The link (menu item) to the front page has to be marked with the "Default" attribute. You can only have one such link. After that, in the menu item you can change the layout of the front page. Usually it will use the special front page blog layout where you get abstracts of items.

RSS feeds

  • To create your *own* RSS feed you need mod_syndicate.
  • To display other feeds you can use both the mod_feeds module, or the News Feed component. The component will allow you to create an entire web page where you have feeds.
  • The Simple RSS Feed Reader is a good module and allows much more control over the feeds (you can disable images, titles etc). Recommended install.

Using JoomFish for i18n

  • This plugin is not bad, but has a really annoying problem: the original content (managed by Joomla) is not synced to its corresponding translation in JoomFish. So if you create in English and in Joomla a new article (default language being English), the corresponding JoomFish english translation is not automatically created. You have to manually copy it. If you later update the original via Joomla, the update is not synced to the JoomFish translation. Very painful.
  • Once installed, all content served come from JoomFish translations (but you can define a fallback language for translations that don't exist). However, be careful: if some article in the default language is set as not published in the Joomla translation, the content will actually come from the original Joomla article. This is very, very confusing.
  • It does not seem possible to have articles not published in certain languages.

Bugs

  • If the Read More horizontal ruler HTML element has a justified alignment (eg, it has a style attribute), Joomla won't recognize it. Thus be careful not to style this element or justify it.