Pandify - porady jak projektować strony internetowe, darmowe materiały, liczne inspiracje web design.

Bedrock – czyli Composer w służbie WordPress

Artykuł pojawił się 19.04.2017, autorem jest Maciek Palmowski i wpadł do kategorii WordPress Workflow

Każda osoba, która próbowała trzymać WordPress w GIT, bardzo szybko zaczynała zadawać sobie wiele pytań – co trzymać, czego nie trzymać, co z pluginami etc. Bedrock jest rozwiązaniem, które pozwala nam odpuścić sobie te filozoficzne pytania i pozwala skupić się na programowaniu.

Czym jest Bedrock?

Najprościej ujmując jest to:

  • połączenie WordPress z Composerem
  • inny układ folderów, który w połączeniu z Composerem pozwala w bardzo prosty sposób trzymać wszystko w GIT
  • wprowadzenie zmiennych środowiskowych

Po co ten Composer?

Żeby uprościć sobie życie – dzięki niemu każda osoba, która bierze udział w projekcie będzie miała dokładnie tego samego WP oraz dokładnie te same pluginy. Z drugiej strony nie będziemy musieli trzymać wszystkich plików od pluginów w repo. Tylko tyle i aż tyle, ale wszyscy, którzy mają na głowie kilka projektów na pewno to docenią.

Instalacja

Instalacja Bedrocka jest bardzo szybkim procesem i ogranicza się do:

  • zainstalować Composera (jednorazowo)
  • odpalenia composer create-project roots/bedrock your-project-folder-name
  • zamiany .env.example w .env i wypełnienia zgodnie z instrukcjami
  • dopisania do VirtualHost DocumentRoot "<PEŁNA_ŚCIEŻKA>/web"

Z góry odpowiem też na pytanie – a co jeśli mamy shared hosting? Wtedy pozostaje nam .htaccess:

Zmienne środowiskowe

Jak zapewne zauważyliście w pliku .env jest zmienna WP_ENV – dzięki niej definiujemy charakter środowiska na jakim pracujemy. Domyślnie mamy do wyboru:

  • development
  • staging
  • production

Z jednej strony przypisane są do nich pewne cechy – wystarczy otworzyć pliki w config/environments. Dodatkowo możemy użyć zmiennej $_ENV w kodzie – gdybyśmy np. chcieli w środowisku developerskim zawsze czyścić transienty wystarczy napisać:

if( $_ENV['WP_ENV'] == 'development' ) {
delete_transient( 'example' );
}

Instalacja pluginów

Po pierwsze – wszystkie pluginy trzymane są https://wpackagist.org/

Po drugie – żeby jakiś zainstalować po prostu piszemy:

composer require wpackagist-plugin/<nazwa_pakietu>
composer update

I to naprawdę wszystko – należy tylko pamiętać, że ten proces nie aktywuje automatycznie plugina.

Podsumowanie

Czy warto? Wg. mnie tak – Bedrock pozwala nam pozbyć się następujących problemów / pytań

  • Na jakim to WP stoi?
  • Dziwne, u mnie (na antycznym WP) działa…
  • Podeślesz mi wszystkie pluginy jakie są na produkcji?

Powoduje też, że cały nasz projekt siedzi sobie w repozytorium.

Wady? Dostrzegam dwie i to naprawdę na siłę:

  • Composer – jak ktoś nie zna i nie używa to musi kolejną rzecz zainstalować i ogarnąć w stopniu podstawowym
  • Układ – na początku może troszkę mylić, ale to znowu kwestia przyzwyczajenia

I na koniec kilka linków, które troszkę bardziej przybliżą temat:

https://roots.io/bedrock/ – oficjalna strona projektu
https://discourse.roots.io/c/bedrock – oficjalne forum o Bedrock
https://css-tricks.com/intro-bedrock-wordpress/
https://smpetrey.com/automating-wordpress-virtualbox-trellis-sage-bedrock/

Maciek Palmowski

Jestem programistą - hobbystycznie i zawodowo (pracuję w In'saneLab). Kiedy jednak odejdę od klawiatury jeżdżę na rowerze, biegam albo gram w gry.

Bądź na bieżąco!

Jeżeli chcesz otrzymywać informacje o najnowszych wpisach na blogu Pandify.pl zapisz się do naszego newslettera za pomocą poniższego formularza. Obiecujemy nie wysyłać nic więcej.