WordPress existuje od roku 2003 a stal sa predvoleným nástrojom pre väčšinu ľudí, ktorí chcú spustiť webovú stránku. Aj keď prešla dlhú cestu od svojich koreňov ako blogový nástroj, základná technológia neurobila rovnaké skoky ako používateľská skúsenosť.
Vývoj WordPressu sa stále točí okolo mnohých štandardov, ktoré boli prítomné v roku 2003. Aj keď to môže spôsobiť, že bude prístupnejší pre ľudí kvôli nižšiemu požadovanému technickému pochopeniu, znamená to tiež, že mnohé nové vývojové zdroje nie sú kompatibilné s WordPress hneď po vybalení.
Dnes sa pozrieme na jeden z tých novších nástrojov s názvom Skladateľ. Pozrime sa, ako to môže zapadnúť do vášho pracovného postupu WordPress, a prediskutujte, prečo by ste to možno chceli vyskúšať.
Čo je Composer?
Každý kúsok kódu, ktorý napíšete, má závislosti. Ak píšete doplnok WordPress, vašou najväčšou závislosťou je samotný WordPress. Bez základných funkcií, ktoré WordPress poskytuje, je pravdepodobné, že váš doplnok nebude vôbec užitočný. Okrem samotného WordPressu by ste mohli potrebovať moderného klienta SOAP, ako je nusoap na rozhranie s API založenými na SOAP.
V minulosti väčšina ľudí jednoducho skopírovala úložisko pre nusoap do adresára vo svojom plugine a potom zahrnula súbory potrebné na používanie knižnice. Tu môže Composer zasiahnuť a zjednodušiť niektoré správy vašich závislostí.
Composer je správca závislostí. Je špeciálne navrhnutý tak, aby uľahčil inštaláciu a správu závislostí. Toto môže byť obzvlášť dôležité, ak pracujete v tíme a chcete sa uistiť, že každý člen tímu používa rovnaké knižnice ako svoju prácu na vývoji.
Vo svojej podstate je Composer súborom JSON, ktorý podrobne popisuje závislosti, ktoré ste nainštalovali, a ktoré verzie závislostí chcete použiť. Nižšie môžete vidieť základný príklad, ktorý zahŕňa závislosť nusoap.
{
„vyžadovať“: {
„econea/nusoap“: „^0.9.10“
}
}
Keď v mojom doplnku spustím skladateľ vyžadovať econea/nusoap, nainštaluje mi nusoap a uzamkne ho na špecifikovanú verziu. V tomto prípade používam verziu 0.9.10 a budem ju naďalej používať, pokiaľ nepoviem Composerovi, aby upgradoval závislosť.
To má výhodu v porovnaní s jednoduchým sťahovaním a zahrnutím nusoap, pretože môžem použiť aktualizáciu skladateľa na aktualizáciu všetkých mojich závislostí bez toho, aby som musel zisťovať, či existujú aktualizácie, a manuálne ich sťahovať do môjho projektu. Composer preberá správu zdrojov na tejto úrovni.
Začíname s aplikáciou Composer
Inštalácia skladateľa je pomerne jednoduchá.
V systéme Windows
Ak používate systém Windows, existuje poskytnutý inštalátor na zjednodušenie procesu. Nainštaluje najnovšiu verziu aplikácie Composer a sprístupní ju globálne pre vaše projekty.
Linux/Unix/macOS
Na ktorejkoľvek z týchto platforiem máte niekoľko ďalších krokov na nastavenie skladateľa. Ak chcete začať, spustite príkazy potrebné na stiahnutie aplikácie Composer a nastavenie.
php -r “copy(‘https://getcomposer.org/installer’, ‘composer-setup.php’);“
fphp -r “if (hash_file(‘sha384’, ‘composer-setup.php’) === ‘756890a4488ce9024fc62c56153228907f1545c228516cbf63f885e9352d634 181c7d3’) { echo ‘Inštalátor overený’; } else { echo ‘Inštalátor je poškodený’; unlink(‘composer-setup.php’); } echo PHP_EOL;”
php skladateľ-setup.php
php -r “unlink(‘composer-setup.php’);”
Ďalej budete chcieť spustiť Composer globálne pre lokálny vývoj, takže budeme musieť upraviť predvolenú inštaláciu, aby sme zabezpečili, že bude k dispozícii kedykoľvek, keď budeme chcieť Composer použiť. Composer môžete presunúť tak, aby bol globálne dostupný, pomocou nasledujúceho príkazu spusteného z rovnakého adresára, z ktorého ste si práve stiahli Composer.
mv skladateľ.phar /usr/local/bin/composer
Aktualizácia skladateľa
V systéme Windows a macOS stačí na inováciu na najnovšiu verziu aplikácie Composer spustiť samoaktualizáciu skladateľa. Ak používate Linux/Unix, budete musieť spustiť sudo apt update && upgrade, aby váš systém skontroloval najnovšie verzie, potom môžete spustiť samoaktualizáciu skladateľa, aby ste získali najnovšiu verziu.
Teraz, keď ste všetko nastavili, poďme sa pozrieť na používanie nástroja Composer na inštaláciu WordPress.
Nainštalujte WordPress pomocou Composer
Čo ak chcete spravovať celú stránku pomocou aplikácie Composer? Najprv sa musíte rozhodnúť, či je WordPress závislosťou projektu alebo jadrom projektu? Áno, trochu prekrútenie mozgu.
WordPress možno považovať za závislosť projektu, pretože konečným cieľom pre vašich zákazníkov nie je mať nainštalovaný WordPress. Chcú obchod alebo blog a to závisí od toho, či si nainštalujete WordPress. Toto je postoj, ktorý má projekt rád Korene berie so svojím skladateľom Bedrock nastavenie WordPress s názvom Bedrock.
Použitie Bedrock znamená, že nemusíte Composerovi hovoriť o WPackagist, pretože je už nastavený. Ak chcete spravovať celú stránku pomocou aplikácie Composer, odporúčam vám začať.
Ak chcete nainštalovať Bedrock, spustite nasledujúci príkaz.
skladateľ vytvoriť-projektovať korene/podklad
Získate tak nasledujúcu štruktúru súborov.
├── skladateľ.json
├── .env
├── konfigurácia
│ ├── application.php
│ └── prostrediach
│ ├── development.php
│ ├── staging.php
│ └── production.php
├── predajca
└── web
├── aplikácia
│ ├── mu-plugins
│ ├── pluginy
│ ├── témy
│ └── nahrávanie
├── wp-config.php
├── index.php
└── wp
Toto je veľmi odlišné od štandardného nastavenia WordPress. Na začiatok máte súbor skladateľ.json v koreňovom adresári inštalácie. Tu uvidíte svoju konfiguráciu Composer.
Váš súbor .env je miesto, kde môžete uložiť rôzne konfigurácie databázy. Je to potrebné, pretože váš lokálny web a váš aktívny web budú mať odlišné heslá a používateľské mená do databázy. Predvolený súbor wp-config.php bude rozumieť premenným, ktoré vložíte do súboru .env, pretože Bedrock používa tieto premenné namiesto pevného kódovania v informáciách o pripojení k databáze.
Váš súbor .env by ste mali vo svojom úložisku Git ignorovať. Keď konfigurujete novú lokalitu, pridáte do nej nový súbor .env s požadovanými informáciami o konfigurácii databázy.
Existuje niekoľko ďalších premenných, ktoré tu musíte nastaviť, aby ste mohli začať Bedrock, pričom všetky sú podrobne uvedené v nich dokumentáciu.
V konfiguračnom priečinku sú rôzne predvolené konfigurácie pre prostredia, ktoré budete používať. Vo vývoji to zapne hlásenie chýb a vo vašich produkčných prostrediach zabezpečí, že protokolovanie chýb nebude narúšať plynulú prevádzku vašej lokality.
S Bedrock ako základom môžete teraz použiť Composer na inštaláciu doplnkov WordPress cez WPackagist.
WPackagist je zrkadlom úložiska tém a doplnkov WordPress. Je to potrebné, pretože v predvolenom nastavení väčšina doplnkov a tém nie je k dispozícii na inštaláciu pre Composer. Zrkadlo pridá požadované súbory pre každý doplnok, takže Composer možno použiť na správu doplnkov.
Ak ste chceli nainštalovať WooCommerce do svojej inštalácie WordPress založenej na Bedrock, musíte najprv vyžadovať WooCommerce, skladateľ vyžaduje wpackagist-plugin/woocommerce, potom musíte povedať Composerovi, aby nainštaloval závislosti, nainštaloval skladateľ.
Teraz môžete prejsť do oblasti správcu vašej inštalácie WordPress a aktivovať WooCommerce a vytvoriť si svoj web. Ak chcete aktualizovať WooCommerce, keď vyjde nová verzia, alebo aktualizovať WordPress, musíte spustiť aktualizáciu skladateľa.
Tu sa môže projekt založený na skladateľoch dostať do problémov. Ak spustíte aktualizácie prostredníctvom správcu WordPress, budete mať nesúlad medzi tým, čo Composer očakáva, a tým, čo WordPress nainštaloval. Ak sa chystáte použiť Composer, potom ho používajte ako nástroj na aktualizáciu a nepracujte cez správcu WordPress.
Kedy Mali by ste používať Composer?
Som si istý, že mnohí z vás sa pýtajú, prečo je Composer taký skvelý nástroj na vývoj WordPress. WordPress nebol vytvorený s ohľadom na Composer, takže ak chcete s ním pracovať, musíte preskočiť niekoľko obručí, aby fungoval dobre.
Pre vývojárov doplnkov a tém existuje jasný prípad, že Composer môže uľahčiť riešenie závislostí, ktoré potrebujete priniesť zo širšieho ekosystému PHP. Pre vývojárov WordPress je tento argument menej jasný. Niektorí radi používajú Composer na správu celej svojej stránky ako Roots. To vám umožní spravovať Git menej súborov, ale to sa mi nikdy nezdalo ako presvedčivý prípad.
Prípad, ktorý sa mi páči, je, že Composer môže uľahčiť vytváranie rôznych závislostí pre rôzne prostredia. Potom môžete použiť proces nasadenia na nasadenie týchto závislostí vo vašich prostrediach a nemusíte ich manuálne spravovať.
Ako vývojár musíte brať do úvahy aj potreby klienta. Ak nemajú okolo seba vývojový tím na dlhodobú správu stránky, môžu naraziť na problémy s neštandardnou inštaláciou WordPress. V niektorých prípadoch im ich hostitelia môžu povedať, že podpora nie je k dispozícii, pretože nepoužívajú bežný spôsob inštalácie a používania WordPress. Keď obsluhujete klientov, vždy potrebujete vyvážiť skvelú technológiu, ktorú používate, s tým, čo klient dokáže dlhodobo zvládnuť.
Už len z tohto dôvodu nepoužívam Composer vo svojich projektoch celej lokality. Moji klienti ich budú riadiť zo dňa na deň roky a ja im nechcem klásť žiadne ďalšie prekážky. Obaja chceme, aby ich stránky fungovali v nadchádzajúcich rokoch bez problémov.
Ak chcete zlepšiť svoje znalosti PHP pomocou moderných technológií, určite by ste sa mali pozrieť na to, ako môže Composer zapadnúť do vašich pracovných postupov WordPress.