Download the PHP package griiv/prestashop-module-contracts without Composer

On this page you can find all versions of the php package griiv/prestashop-module-contracts. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package prestashop-module-contracts

PrestaShop Module Contracts

Bibliothèque PHP fournissant des interfaces et une classe abstraite pour faciliter le développement de modules PrestaShop modernes avec une gestion automatique des hooks et l'intégration de Symfony.

Description

Ce package propose une architecture structurée pour créer des modules PrestaShop en utilisant les bonnes pratiques de développement PHP moderne. Il simplifie la gestion des hooks PrestaShop en automatisant leur résolution et en permettant une organisation claire du code basée sur des interfaces.

Fonctionnalités

Prérequis

Note : Les fonctionnalités basées sur les attributs PHP (#[AsPrestaShopHook] et PrestaShopHookCompilerPass) nécessitent PHP 8.0+. Sur PHP 7.2 à 7.4, le reste de la bibliothèque fonctionne normalement.

Compatibilité PrestaShop 1.6

Cette bibliothèque peut également être utilisée avec PrestaShop 1.6 en installant en complément la bibliothèque prestashop/module-lib-service-container qui fournit un conteneur de services compatible.

Installation

Pour PrestaShop 1.7.6+

Pour PrestaShop 1.6

Utilisation

1. Créer votre module

Créez votre classe de module en étendant ModuleAbstract :

2. Créer des handlers de hooks

Hook d'affichage (Display)

Hook d'action (Action)

3. Utiliser les Concerns (Traits)

4. Attribut AsPrestaShopHook (PHP 8.0+)

Sur PHP 8.0+, vous pouvez déclarer vos hooks de manière déclarative avec l'attribut #[AsPrestaShopHook] :

Couplé au PrestaShopHookCompilerPass, les hooks sont automatiquement enregistrés dans le conteneur Symfony.

5. Convention de nommage

Le système de résolution automatique des hooks suit ces conventions :

Important : la résolution se fait sur le préfixe du nom du hook, pas sur sa sémantique. Tout hook dont le nom ne commence pas par Action, Filter, Additional ou Validate retombe sur le bucket Display.

Type de retour des hooks additionnels

Les hooks PrestaShop commençant par additional (additionalCustomerFormFields, additionalCustomerAddressFields) sont exécutés avec agrégation des retours (Hook::exec(..., $array_return = true)), et le coeur itère la valeur retournée pour collecter les champs. AdditionalHookInterface::additional() retourne donc array : un retour vide ou void ferait disparaître silencieusement les champs ajoutés.

Hooks de validation

Les hooks validate* reçoivent les instances de FormField créées par le module. Le coeur matérialise les erreurs à partir de ces objets, pas de la valeur de retour : signalez donc les erreurs en appelant FormField::addError() sur les objets reçus.

6. Accès aux services Symfony

Structure du projet

Licence

MIT License - voir le fichier LICENSE

Auteur

Arnaud Scoté - [email protected]


All versions of prestashop-module-contracts with dependencies

PHP Build Version
Package Version
Requires php Version >=7.2
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package griiv/prestashop-module-contracts contains the following files

Loading the files please wait ...