How to use custom and overridden content elements
Since version 6.10 of FaLang, you can add your own custom content elements or override existing ones, without modifying the files that come with the component.
Create or override content elements
- Place your own XML files in the custom subdirectory:
administrator/components/com_falang/contentelements/custom/
- Custom/ files are loaded after native files. If a custom file declares the same table as a native element, it replaces it entirely. There is no field-by-field merge.
- The custom/ directory hosts your XML files:
- To override a native element, use the same file name as the original
- To add the element of a custom component, create a new XML file.
- The custom directory is created when you install version 6.10
- Make sure that your XML is well-formed and follows the expected structure (<falang type="contentelement">). An invalid file in custom/ is ignored, and the native element is then used in its place. See the documentation on creating content elements
Example
Here's an example of overriding the content item in the articles table, to add a field to the translation tab.
1. Copy the content item (content.xml) file from the directory:
administrator/components/com_falang/contentelements/
2. Paste it into the directory (to be created if necessary):
administrator/components/com_falang/contentelements/custom/
Keep the same file name as the native file. This is how FaLang finds your overload.
The original file declares the fields translatable:
<field type="titletext" name="title" translate="1">Title</field>
<field type="text" name="alias" translate="1">Alias</field>
In this example, the metakey field should be added to the FaLang translation tab:
<field type="titletext" name="title" translate="1">Title</field>
<field type="text" name="alias" translate="1">Alias</field>
<field type="text" name="created_by_alias" length="50" maxlength="255" translate="1">Author Alias</field>
The result of these changes can be seen in the translation tab of FaLang.

Good to know
- Updates : The custom directory is not part of the package, so it is not overwritten during a FaLang update. After an update, compare your overload with the new native file, as you might miss the new fields added by the update.
- Backup : Keep a copy of your custom directory though, since that's the only place that contains your changes.