Most of initial and default settings can be provided in configuration file. This files will be process on extension installation and configuration reset steps. Bellow is the description of all items that are available in configuration file
<?xml version="1.0"?> <extension> <id>discount</id> <version>0.1.0</version> <cartversions> <item>1.0</item> </cartversions> <phpmodules> <item>curl</item> </phpmodules> <layout></layout> <priority>10</priority> <type>template</type> <category>template</category> <dependencies> <item prior_version="0.9" version="1.0">slideshow</item> <item prior_version="0.9" version="1.0">product_slider</item> <item required="true" prior_version="0.9" version="1.0">default_cod</item> </dependencies> <settings> <item id="discount_status"> <type>selectbox</type> <default_value>0</default_value> <variants> <item>0</item> <item>1</item> </variants> </item> <item id="discount_percent"> <type>input</type> <default_value>10</default_value> </item> <item id="discount_message"> <type>input</type> <default_value>We are pleased to annouce september discounts</default_value> </item> <item id="discount_product_message"> <type>input</type> <default_value>Old price: %s, You save: %s</default_value> </item> </settings> <additional_settings><![CDATA[setting/setting&active=store]]></additional_settings> <note>true</note> <preview> <item>preview.jpg</item> <item>preview1.jpg</item> <item>preview2.jpg</item> </preview> <help_link><![CDATA[http://google.com]]></help_link> <install> <sql>install.sql</sql> <trigger>install.php</trigger> </install> <uninstall> <sql>uninstall.sql</sql> <trigger>uninstall.php</trigger> </uninstall> </extension>
More details about each extension config item
<id>discount</id> - extension unique named identifier ( should be unique among all other extensions )
<version>0.1.0</version> - current extension version
<cartversions>
<item>1.0</item>
</cartversions> - supported cart versions by the extension
<dependencies>...</dependencies> - if given extension depends on other extension(s) be installed, this item can be used. See examples:
Optional extension dependency. original extension can work without dependant extension installed. ( use only 0.9 - 1.0 versions of extension )
<dependencies> <item prior_version="0.9" version="1.0">slideshow</item> </dependencies>
Required extension. Current extension can not work without dependant extension installed.
<dependencies> <item required="true" prior_version="0.9" version="1.0">default_cod</item> - extension. </dependencies> <phpmodules> <item>gd</item> </phpmodules> - Given extension depends on following php modules