Download the PHP package terminal42/contao-namespace-class-loader without Composer
On this page you can find all versions of the php package terminal42/contao-namespace-class-loader. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download terminal42/contao-namespace-class-loader
More information about terminal42/contao-namespace-class-loader
Files in terminal42/contao-namespace-class-loader
Package contao-namespace-class-loader
Short Description Namespace class loader for Contao Open Source CMS
License LGPL-3.0+
Informations about the package contao-namespace-class-loader
Namespace Class Loader for Contao 3
This extension implements a valid PSR-0 class loader for Contao 3.
The implementation is based on the Composer\Autoload\ClassLoader
.
This extension is outdated, see the Upgrade information!
Usage
Place all files in system/modules/_autoload
in your Contao installation.
Usage works similar to the Contao class loader, except that you do not
need to include every class file if you follow PSR-0 standards. Use the
following example to implement the class loader in your config/autoload.php
:
Upgrade to Contao 4
In Contao 4, the only way to install extensions is using Composer. Therefore, you will not need this extension but should use Composer's class loader.
To be compatible with Contao 3 extension repository and Contao 4, you will need to require at least Contao 3.3 and set it up as follow:
- Define your namespaces or classes in
composer.json
. - Remove the dependency for
terminal42/contao-namespace-class-loader
from yourcomposer.json
- Keep the dependency in the old Extension Repository
-
Make
_autoload
an optional dependency in yourautoload.ini
like so:requires[] = "*_autoload"
-
Only call
NamespaceClassLoader
in yourautoload.php
if the class is actually available:if (class_exists('NamespaceClassLoader')) { NamespaceClassLoader::add( ... ); }
If the extension is installed via Composer, the classes will be loaded
by the Composer autoloader. When installed using the old extension
repository, the _autoload
extension will be added and the classes
will work like before.
See our commit on how we accomplished this in Isotope eCommerce.
All versions of contao-namespace-class-loader with dependencies
contao/core Version >=3.2,<4
contao-community-alliance/composer-plugin Version 2.*