Composer
PHP függőségkezelő eszköz WordPress projektekhez - pluginok, témák és könyvtárak kezelése.
This content is not available in your language yet.
A Composer a PHP ökoszisztéma szabványos függőségkezelő eszköze. Lehetővé teszi, hogy deklaráld a projekted által igényelt függvénykönyvtárakat, és automatikusan telepíti azokat a projektedbe.
Miért használj Composert?
Szekció neve “Miért használj Composert?”- Függőségkezelés - Automatikusan kezeli a csomagok közötti függőségeket
- Verziókezelés - Pontos verziómegkötésekkel garantálhatod a kompatibilitást
- Autoloading - PSR-4 autoloading támogatás egyetlen
requiresorral - Reprodukálhatóság - A
composer.lockbiztosítja, hogy minden környezetben ugyanazok a verziók legyenek
Telepítés
Szekció neve “Telepítés”macOS (Homebrew)
Szekció neve “macOS (Homebrew)”brew install composerLinux
Szekció neve “Linux”php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"php composer-setup.php --install-dir=/usr/local/bin --filename=composerphp -r "unlink('composer-setup.php');"Windows
Szekció neve “Windows”Töltsd le és futtasd a Composer-Setup.exe telepítőt.
Alapvető parancsok
Szekció neve “Alapvető parancsok”# Új projekt inicializálásacomposer init
# Függőségek telepítése (composer.lock alapján)composer install
# Függőségek frissítésecomposer update
# Új csomag hozzáadásacomposer require vendor/package
# Csomag eltávolításacomposer remove vendor/package
# Elérhető frissítések listázásacomposer outdated
# Autoloader újragenerálásacomposer dump-autoloadComposer és WordPress
Szekció neve “Composer és WordPress”A Composer különösen hasznos WordPress fejlesztéshez:
Ingyenes pluginok és témák
Szekció neve “Ingyenes pluginok és témák”A WPackagist repository lehetővé teszi, hogy a wordpress.org-on elérhető összes ingyenes plugint és témát Composerrel telepítsd.
Prémium pluginok és témák
Szekció neve “Prémium pluginok és témák”A HelloPack saját Composer repository-t biztosít a prémium bővítmények és témák telepítéséhez.
Modern WordPress boilerplate-ek
Szekció neve “Modern WordPress boilerplate-ek”Számos modern WordPress fejlesztői keretrendszer épül Composerre:
Példa composer.json
Szekció neve “Példa composer.json”{ "name": "my-company/wordpress-site", "description": "WordPress projekt Composerrel", "type": "project", "require": { "php": ">=8.1", "composer/installers": "^2.0", "wpackagist-plugin/wordpress-seo": "^22.0", "wpackagist-plugin/contact-form-7": "^5.8" }, "repositories": [ { "type": "composer", "url": "https://wpackagist.org", "only": [ "wpackagist-plugin/*", "wpackagist-theme/*" ] } ], "extra": { "installer-paths": { "wp-content/plugins/{$name}/": [ "type:wordpress-plugin" ], "wp-content/themes/{$name}/": [ "type:wordpress-theme" ] } }, "config": { "allow-plugins": { "composer/installers": true } }}Verziókezelési szintaxis
Szekció neve “Verziókezelési szintaxis”| Szintaxis | Jelentés |
|---|---|
1.2.3 |
Pontosan ez a verzió |
>=1.2.3 |
Minimum verzió |
^1.2.3 |
Kompatibilis verziók (1.x.x, de nem 2.0) |
~1.2.3 |
Következő jelentős verzióig (1.2.x) |
1.2.* |
Bármely 1.2.x verzió |
* |
Bármely verzió |
dev-main |
Fejlesztői branch |
Tippek és best practice-ek
Szekció neve “Tippek és best practice-ek”composer.lock commitolása
Szekció neve “composer.lock commitolása”A composer.lock fájlt mindig commitold a verziókezelőbe. Ez garantálja, hogy minden fejlesztő és a production környezet is pontosan ugyanazokat a verziókat használja.
Production telepítés
Szekció neve “Production telepítés”composer install --no-dev --optimize-autoloaderA --no-dev kihagyja a fejlesztői függőségeket, az --optimize-autoloader pedig gyorsabb autoloadinget eredményez.
Privát repository hitelesítés
Szekció neve “Privát repository hitelesítés”# Globális hitelesítés beállításacomposer config -g http-basic.example.com username password
# Vagy auth.json fájllal (ne commitold!){ "http-basic": { "example.com": { "username": "user", "password": "token" } }}