Each extension needs to be activated, which means that it is being registered for eZ Publish to be available from within the eZ Publish framework. Every extension can either be activated in the eZ Publish administration interface or in a configuration file. Furthermore, the activation can be done either for the whole eZ Publish installation or for only certain site accesses.
Note: As of the 4.4 release of eZ Publish we have implemented a feature for automatic loading of extensions in the required sequence. Please go to Extension load ordering for more information on how to do this. If you are running on releases prior to 4.4, please continue reading below.
Administration interface
Log in to your eZ Publish administration interface, click on the "Setup" tab, and then click "Extensions" on the left. You will see the list of available extensions with check-boxes. Simply select the ones you need as shown in the screenshot below and click the "Apply changes" button.
Extension Activation
This will activate the extension for all siteaccesses of your eZ Publish installation.
Configuration file
Alternatively, an extension can be enabled manually in the site.ini configuration file.
Activating for the whole installation
To enable the sample extension for all of your site accesses, edit the "site.ini.append.php
" file located in the "
" directory of your eZ Publish installation. Add the following line under the "<eZ_Publish_root_folder>/ezpublish_legacy/
settings/override[ExtensionSettings]
" configuration block:
ActiveExtensions[]=ezfoo
Multiple extensions can be present within the "[ExtensionSettings]
" block. You'll have to manually create the file and/or the section if they do not exist.
Activating for certain siteaccesses
To enable the sample extension for only a single site access called "example", edit the "site.ini.append.php
" file located in the "
" directory of your eZ Publish installation. Add the following line under the "<eZ_Publish_root_folder>/ezpublish_legacy/
settings/siteaccess/example[ExtensionSettings]
" configuration block:
ActiveAccessExtensions[]=ezfoo
Note that the line registering the extension is not called "ActiveExtensions
", but "ActiveAccessExtensions
". You'll have to manually create the file and/or the section if they do not exist.
Updating the autoload arrays
After updating the configuration file(s), you need to run the "ezpgenerateautoloads.php
" script, in order to add the information about all PHP class definitions of this extension to the "
" file, otherwise eZ Publish might not be able to execute the PHP code of the newly added extension. The following example shows how to run the script.<eZ_Publish_root_folder>/ezpublish_legacy/
autoload/ezp_extension.php
- Navigate into
ezpublish_legacy/
directory. Run the script using the following shell command:
bin/php/ezpgenerateautoloads.php --extension
The script will look for class definitions in the "extensions" directory and update the "
" file accordingly.<eZ_Publish_root_folder>/ezpublish_legacy/
autoload/ezp_extension.php