exiguous ecommerce est une bibliothèque de commerce électronique super simple, qui utilise des fichiers plats et adopte une approche très minimaliste.
Exécutez simplement la commande Composer suivante pour télécharger/installer exiguous ecommerce et créer des fichiers de chargement automatique pertinents.
composer require divineomega/exiguous-ecommerce
Si votre framework ne le fait pas déjà, vous devez ajouter require_once "vendor/autoload.php"
à tous les fichiers dans lesquels vous souhaitez utiliser exiguous ecommerce .
exiguous ecommerce stocke toutes ses données dans un répertoire data
. Un exemple de répertoire data
est fourni dans ce package.
Avant utilisation, vous devez ensuite copier le répertoire data
vers un autre emplacement, puis spécifier cet emplacement dans l'environnement de votre projet. Si vous utilisez Laravel, cela peut être fait en définissant une variable EXIGUOUS_ECOMMERCE_DATA_DIRECTORY
dans votre fichier .env
, comme suit.
EXIGUOUS_ECOMMERCE_DATA_DIRECTORY=/var/www/ecommerce-site/path-to-data-directory/
Si vous n'utilisez pas de framework prenant en charge cela, vous pouvez utiliser la fonction PHP standard putenv
pour définir cette variable d'environnement. Vous pouvez également utiliser dotenv-loader pour ajouter la prise en charge des fichiers .env
à votre projet.
Veuillez noter qu'il est important que la variable EXIGUOUS_ECOMMERCE_DATA_DIRECTORY
soit définie avec une barre oblique finale.
Pour des raisons de sécurité, vous devez placer le répertoire data
dans un emplacement non accessible via le Web. Dans le cas où le répertoire de données est placé par accident dans un emplacement accessible sur le Web, un fichier .htaccess
est fourni qui devrait refuser aux utilisateurs Web l'accès au contenu du répertoire dans les configurations de serveur Web les plus courantes.
Obtenir des produits et des catégories :
$ category = DivineOmega ExiguousEcommerce Category:: findBySlug ( " fluffy-things " );
$ products = $ category -> products ();
foreach ( $ products as $ product ) {
echo $ product -> data -> name ;
}
$ product = DivineOmega ExiguousEcommerce Product:: findBySlug ( " teddy-bear " );
$ categories = $ product -> categories ();
$ mainCategoryName = $ categories [ 0 ]-> data -> name ;
Récupérer le panier de l'utilisateur actuel et y ajouter un produit :
$ product = DivineOmega ExiguousEcommerce Product:: findBySlug ( " teddy-bear " );
$ basket = DivineOmega ExiguousEcommerce Basket:: findCurrent ();
$ basket -> addProduct ( $ product ); // Add one Teddy Bear
$ basket -> addProduct ( $ product , 2 ); // Add another two Teddy Bears!
var_dump ( $ basket -> items ); // Outputs an array of, you guessed it, basket items! ^_^
// ^ This would show 1 basket item with a quantity of 3 teddy bears.
Supprimer un produit d'un panier :
$ product = DivineOmega ExiguousEcommerce Product:: findBySlug ( " teddy-bear " );
$ basket = DivineOmega ExiguousEcommerce Basket:: findCurrent ();
$ basket -> removeProduct ( $ product ); // Removes all teddy bears from the basket
Paramétrage/Compensation de la quantité d'un produit dans le panier :
$ product = DivineOmega ExiguousEcommerce Product:: findBySlug ( " teddy-bear " );
$ basket = DivineOmega ExiguousEcommerce Basket:: findCurrent ();
$ basket -> addProduct ( $ product ); // Add one Teddy Bear
$ basket -> setProductQuantity ( $ product , 10 ); // Set the number of Teddy Bears in the basket to ten
$ basket -> offsetProductQuantity ( $ product , 10 ); // Add ten more Teddy Bears
$ basket -> offsetProductQuantity ( $ product , - 5 ); // Remove five of those Teddy Bears
Migrer le panier vers une commande :
$ basket = DivineOmega ExiguousEcommerce Basket:: findCurrent ();
$ basket -> convertToOrder ();
Obtenir et utiliser les paramètres :
// Retrieves settings from the core.json file within the .settings directory
$ coreSettings = DivineOmega ExiguousEcommerce Settings:: find ( ' core ' );
echo $ coreSettings -> data -> primaryCurrency ; // Output the ecommerce's primary currency setting