WordPress jest jednym z najpopularniejszych systemów zarządzania treścią na świecie, używanym przez miliony stron internetowych. Jednakże, z biegiem lat, jego podstawowa architektura nie uległa znaczącej zmianie, co sprawia, że nie zawsze spełnia on współczesne wymagania programistyczne i nie stosuje najlepszych praktyk. W odpowiedzi na te wyzwania pojawiło się wiele innowacyjnych narzędzi, a jednym z nich jest Bedrock od roots.io.
Bedrock od roots.io – co to jest?
Bedrock to reimplementacja WordPressa, stworzona przez zespół roots.io, który ma na celu unowocześnienie i ustandaryzowanie procesu tworzenia stron opartych na WordPressie. Głównym celem projektu Bedrock jest dostarczenie środowiska, które jest bardziej zgodne z nowoczesnymi technikami programistycznymi oraz spełnia wytyczne takie jak PSR (PHP Standard Recommendation).
Główne funkcje i zalety Bedrock
Struktura katalogów
Tradycyjna instalacja WordPressa ma dość płaską strukturę katalogów, co może sprawiać problemy z zarządzaniem kodem w większych projektach. Bedrock wprowadza bardziej hierarchiczną strukturę katalogów, co ułatwia organizację kodu.
Oryginalna struktura:
├── index.php
├── license.txt
├── readme.html
├── wp-activate.php
├── wp-admin
├── wp-blog-header.php
├── wp-comments-post.php
├── wp-config-sample.php
├── wp-content
│ ├── index.php
│ ├── plugins
│ └── themes
├── wp-cron.php
├── wp-includes
├── wp-links-opml.php
├── wp-load.php
├── wp-login.php
├── wp-mail.php
├── wp-settings.php
├── wp-signup.php
├── wp-trackback.php
└── xmlrpc.php
Nowa struktura:
├── composer.json
├── config
│ ├── application.php # Primary wp-config
│ └── environments
│ ├── development.php
│ ├── staging.php
│ └── production.php
├── vendor # Composer dependencies
└── web # Public document root
├── app # WordPress content dir
│ ├── mu-plugins
│ ├── plugins
│ ├── themes
│ └── uploads
├── wp-config.php
├── index.php
└── wp # WordPress core
Zależności
Bedrock wykorzystuje Composer, popularny menedżer pakietów PHP, do zarządzania zależnościami. Dzięki temu deweloperzy mogą łatwo dodawać i aktualizować biblioteki oraz narzędzia zewnętrzne.
Wykorzystanie standardu PSR-4 dla ładowania klas automatycznie pozwala na bardziej przejrzysty kod i unika problemów związanymi z konfliktami nazw.
Łatwiejsza konfiguracja i zwiększone bezpieczeństwo
Bedrock oddziela konfigurację od samej aplikacji, co pozwala na łatwe dostosowywanie ustawień w różnych środowiskach (np. lokalnym, testowym, produkcyjnym).
Domyślna konfiguracja Bedrock zawiera kilka zabezpieczeń, takich jak unikalne klucze salts do szyfrowania ciasteczek, co poprawia bezpieczeństwo instalacji WordPressa.
Dzięki narzędziu Dotenv, Bedrock umożliwia konfigurację różnych ustawień dla różnych środowisk (np. bazy danych, URL).
Bedrock jest projektem open-source, co oznacza, że jest dostępny dla każdego do pobrania, modyfikacji i użytku, co czyni go elastycznym rozwiązaniem dla różnych potrzeb.
Jak zacząć?
Na początek warto posiadać środowisko PHP i zainstalowanego Composera (narzędzie do zarządzania paczkami). Następnie wykonujemy prostą komendę:
composer create-project roots/bedrock
W ten prosty sposób rozpoczęliśmy naszą pracę. Teraz czas na konfigurację:
Na początek utwórz plik .env zawierający następujące zmienne środowiskowe (zobacz .env.example jako przykład):
DB_NAME
– Nazwa bazy danychDB_USER
– Użytkownik bazy danychDB_PASSWORD
– Hasło bazy danychDB_HOST
– Host bazy danych- Opcjonalnie, możesz zdefiniować
DATABASE_URL
do użycia połączenia do bazy w formacie DSN zamiast używania powyższych zmiennych (np.mysql://użytkownik:hasł[email protected]:3306/nazwa_bazy_danych
) WP_ENV
– Ustaw na środowisko (development
,staging
,production
)WP_HOME
– Pełny adres URL strony głównej WordPressa (https://czarnaowca.it)WP_SITEURL
– Pełny adres URL WordPressa, włącznie z podkatalogiem (https://czarnaowca.it/wp
)- Sole i inne klucze do generowania sekretów:
AUTH_KEY
,SECURE_AUTH_KEY
,LOGGED_IN_KEY
,NONCE_KEY
,AUTH_SALT
,SECURE_AUTH_SALT
,LOGGED_IN_SALT
,NONCE_SALT
- Generuj za pomocą wp-cli-dotenv-command
- Generuj za pomocą generatora soli WordPressa
- Dodaj motyw(y) w
web/wp-content/themes/
tak jak dla normalnej strony WordPressa - Ustaw główny folder dokumentów na swoim serwerze WWW na folder
web
Bedrocka - Dostęp do panelu administracyjnego WordPressa pod adresem
https://czarnaowca.it/wp/wp-admin/
Gotowe! Teraz możesz pracować jak na tradycyjnym WordPress, a jeśli jesteś bardziej programistą niż klepaczem stronek na WordPress to teraz będziesz miał prościej zarządzać np.: zależnościami z composera, czy bardziej zaawansowaną strukturą.
Bedrock – podsumowanie
Bedrock od roots.io to innowacyjne podejście do tworzenia stron internetowych opartych na WordPressie. Poprzez wykorzystanie nowoczesnych technik programistycznych, takich jak PSR i Composer, Bedrock zapewnia bardziej przejrzystą, bezpieczną i skalowalną strukturę dla projektów WordPress. Dla deweloperów, którzy szukają sposobu na unowocześnienie swoich prac związanych z WordPress, więc stanowi doskonałą opcję, która otwiera nowe możliwości i ułatwia proces tworzenia i zarządzania stronami internetowymi.