Wprowadzenie
WP-CLI to narzędzie do zarządzania WordPressem z poziomu wiersza poleceń. Pozwala wykonywać zadania szybciej, automatyzować procesy i pracować bardziej efektywnie. Doceniają je administratorzy, developerzy i osoby zarządzające wieloma stronami.
W tym poradniku znajdziesz:
- instalację WP-CLI,
- najważniejsze komendy i ich działanie,
- przykłady praktycznego wykorzystania,
- triki, które przyspieszą Twoją pracę.
Instalacja WP-CLI
Aby skorzystać z WP-CLI potrzebujesz PHP (min. 7.2), dostępu do SSH i zainstalowanego WordPressa.
Instalacja (Linux / macOS)
| Komenda | Opis działania |
|---|---|
curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar |
Pobiera plik instalacyjny WP-CLI. |
php wp-cli.phar --info |
Sprawdza, czy plik działa poprawnie. |
chmod +x wp-cli.phar |
Nadaje plikowi prawa wykonywalne. |
sudo mv wp-cli.phar /usr/local/bin/wp |
Przenosi WP-CLI do katalogu systemowego, aby działał globalnie. |
wp --info |
Wyświetla informacje o WP-CLI i PHP. |
Najważniejsze komendy WP-CLI
wp admin — szybkie otwieranie /wp-admin
Otwiera zaplecze WordPress w przeglądarce bez konieczności ręcznego wpisywania URL. Przydatne na serwerach developerskich i podczas pracy SSH z wieloma instalacjami.
| Komenda | Opis działania |
|---|---|
wp admin |
Otwiera stronę logowania do /wp-admin w domyślnej przeglądarce (jeśli środowisko to wspiera). |
wp cache — operacje na Object Cache
Zarządzanie pamięcią podręczną obiektów (WP Object Cache). Użyteczne po większych importach lub zmianach konfiguracji.
| Komenda | Opis działania |
|---|---|
wp cache flush |
Opróżnia całkowicie pamięć podręczną obiektów. |
wp cache get klucz [grupa] |
Pobiera wartość z cache po kluczu (i opcjonalnej grupie). |
wp cache set klucz "wartość" [grupa] [--expire=60] |
Ustawia wartość w cache z opcjonalnym TTL. |
wp cap — uprawnienia ról
Dodawanie, usuwanie i listowanie capabilities dla ról. Pomocne przy twardych restrykcjach w panelu.
| Komenda | Opis działania |
|---|---|
wp cap list editor |
Listuje wszystkie uprawnienia roli editor. |
wp cap add editor manage_options |
Dodaje uprawnienie do roli. |
wp cap remove editor manage_options |
Usuwa uprawnienie z roli. |
wp cli — meta-informacje o WP-CLI
Sprawdzanie wersji, aktualizacji i aliasów WP-CLI, diagnostyka środowiska CLI.
| Komenda | Opis działania |
|---|---|
wp cli info |
Informacje o wersji WP-CLI, PHP, OS i ścieżkach. |
wp cli update |
Sprawdza i wykonuje aktualizację WP-CLI (jeśli dotyczy instalacji PHAR). |
wp cli alias list |
Listuje zdefiniowane aliasy (np. do zdalnych środowisk). |
wp comment — komentarze
Moderacja, tworzenie, edycja i usuwanie komentarzy wprost z konsoli.
| Komenda | Opis działania |
|---|---|
wp comment list --status=hold |
Lista komentarzy oczekujących na moderację. |
wp comment approve 123 |
Akceptuje komentarz o ID 123. |
wp comment delete 123 --force |
Usuwa komentarz bez kosza. |
wp config — plik wp-config.php
Tworzenie i edycja pliku konfiguracyjnego, zarządzanie stałymi i zmiennymi środowiskowymi.
| Komenda | Opis działania |
|---|---|
wp config create --dbname=db --dbuser=u --dbpass=p --dbhost=localhost |
Generuje wp-config.php z podanymi danymi bazy. |
wp config set WP_DEBUG true --raw |
Ustawia stałą w pliku konfiguracyjnym (bez cudzysłowów dzięki --raw). |
wp core — rdzeń WordPress
Instalacja, aktualizacja i utrzymanie rdzenia, w tym aktualizacje bazy po wersji.
| Komenda | Opis działania |
|---|---|
wp core download [--locale=pl_PL] |
Pobiera świeże pliki WordPressa w danym języku. |
wp core install --url=example.com --title="Tytuł" --admin_user=admin --admin_password=haslo [email protected] |
Instaluje WordPressa w trybie nieinteraktywnym. |
wp core update |
Aktualizuje pliki WordPressa do najnowszej wersji. |
wp core update-db |
Aktualizuje schemat bazy danych po aktualizacji. |
wp cron — harmonogram WP-Cron
Diagnostyka i wywoływanie zadań WP-Cron oraz zarządzanie listą zdarzeń.
| Komenda | Opis działania |
|---|---|
wp cron event list |
Lista zaplanowanych zdarzeń cron. |
wp cron event run hook_nazwa |
Natychmiast uruchamia zdarzenie o danym hooku. |
wp cron schedule list |
Listuje dostępne interwały cron. |
wp db — baza danych
Eksport, import, optymalizacja oraz wykonywanie zapytań SQL z wykorzystaniem danych z wp-config.php.
| Komenda | Opis działania |
|---|---|
wp db export backup.sql |
Eksport bazy do pliku SQL. |
wp db import backup.sql |
Import bazy z pliku SQL. |
wp db optimize |
Optymalizacja tabel bazy. |
wp dist-archive — paczka dystrybucyjna
Tworzenie archiwum projektu z pominięciem plików zdefiniowanych w .distignore. Idealne do publikacji wtyczek/motywów.
| Komenda | Opis działania |
|---|---|
wp dist-archive . build.zip |
Tworzy archiwum ZIP z bieżącego katalogu zgodnie z regułami .distignore. |
wp embed — oEmbed i cache
Przegląd providerów oEmbed oraz czyszczenie cache osadzonych treści.
| Komenda | Opis działania |
|---|---|
wp embed fetch https://youtu.be/ID |
Sprawdza wynik oEmbed dla danego URL. |
wp embed clear |
Czyści cache osadzeń. |
wp eval — jednorazowy PHP
Wykonuje kod PHP przekazany jako argument (na własną odpowiedzialność; przydatne diagnostycznie).
| Komenda | Opis działania |
|---|---|
wp eval 'echo get_bloginfo("name");'
|
Wypisuje tytuł witryny. |
wp eval-file — wykonanie pliku PHP
Ładuje i uruchamia wskazany plik PHP w kontekście WordPressa.
| Komenda | Opis działania |
|---|---|
wp eval-file scripts/naprawa.php |
Uruchamia skrypt z katalogu projektu. |
wp export — eksport treści (WXR)
Tworzy plik WXR (WordPress eXtended RSS) do importu w innych instalacjach.
| Komenda | Opis działania |
|---|---|
wp export --dir=./exports --post_type=post |
Eksportuje wpisy do katalogu exports/. |
wp find — wyszukiwanie instalacji
Skanuje system plików w poszukiwaniu instalacji WordPressa (przydatne na serwerach z wieloma projektami).
| Komenda | Opis działania |
|---|---|
wp find [ścieżka] |
Znajduje instalacje WP w danej ścieżce. |
wp help — pomoc i dokumentacja
Szybka dokumentacja w CLI dla wszystkich komend i podkomend. Używaj tego, gdy szukasz składni lub opcji.
| Komenda | Opis działania |
|---|---|
wp help |
Lista komend głównych. |
wp help plugin install |
Pomoc dla konkretnej podkomendy. |
wp i18n — internacjonalizacja
Narzędzia do pracy z tłumaczeniami w projektach WP (ekstrakcja stringów, generowanie plików POT/PO/MO).
| Komenda | Opis działania |
|---|---|
wp i18n make-pot . languages/plugin.pot |
Generuje plik POT z tekstów w projekcie. |
wp import — import WXR
Wczytywanie treści z pliku WXR (eksport z innej instalacji).
| Komenda | Opis działania |
|---|---|
wp import eksport.xml --authors=create |
Import z automatycznym tworzeniem autorów. |
wp language — pakiety językowe
Instalacja, aktywacja i aktualizacja pakietów językowych WP, motywów i wtyczek.
| Komenda | Opis działania |
|---|---|
wp language core install pl_PL --activate |
Instaluje i aktywuje język polski dla rdzenia. |
wp maintenance-mode — tryb konserwacji
Proste włączanie/wyłączanie maintenance mode podczas aktualizacji/wdrożeń.
| Komenda | Opis działania |
|---|---|
wp maintenance-mode activate |
Włącza tryb konserwacji. |
wp maintenance-mode deactivate |
Wyłącza tryb konserwacji. |
wp media — biblioteka mediów
Masowy import plików, regeneracja miniaturek, lista zarejestrowanych rozmiarów obrazów.
| Komenda | Opis działania |
|---|---|
wp media import ./img/*.jpg --featured_image |
Importuje obrazy i ustawia je jako wyróżnione (gdy użyte z postami). |
wp media regenerate |
Regeneruje miniatury zgodnie z aktualnymi rozmiarami. |
wp menu — nawigacje motywu
Tworzenie, przypisywanie i usuwanie menu w aktywnym motywie.
| Komenda | Opis działania |
|---|---|
wp menu create "Główne" |
Tworzy nowe menu o nazwie „Główne”. |
wp menu location assign główne primary |
Przypisuje menu do lokalizacji primary. |
wp network — operacje sieci (Multisite)
Wywołania obejmujące całą sieć witryn: instalacja multisite, ustawienia i diagnostyka.
| Komenda | Opis działania |
|---|---|
wp network meta list 1 |
Listuje meta sieci o ID 1. |
wp option — opcje witryny
Odczyt i zapis wartości w tabeli wp_options – kluczowe przy migracjach i automatyzacji.
| Komenda | Opis działania |
|---|---|
wp option get siteurl |
Wyświetla aktualny adres strony. |
wp option update blogdescription "Nowy opis" |
Podmienia opis strony. |
wp package — paczki WP-CLI
Instalacja dodatkowych rozszerzeń WP-CLI (np. profilery, narzędzia deweloperskie).
| Komenda | Opis działania |
|---|---|
wp package browse |
Otwiera katalog paczek do przeglądania. |
wp package install wp-cli/profile-command |
Instaluje paczkę z GitHuba/Packagista. |
wp plugin — wtyczki
Komplet operacji na wtyczkach: instalacja, aktywacja, aktualizacje, masowe akcje i diagnostyka.
| Komenda | Opis działania |
|---|---|
wp plugin install classic-editor --activate |
Instaluje i aktywuje wtyczkę z repozytorium WP. |
wp plugin update --all |
Aktualizuje wszystkie zainstalowane wtyczki. |
wp plugin deactivate nazwa-wtyczki |
Dezaktywuje wskazaną wtyczkę. |
wp post — wpisy i meta
Tworzenie, listowanie, usuwanie i edycja treści oraz metadanych (dowolnych typów postów).
| Komenda | Opis działania |
|---|---|
wp post list --post_type=page --fields=ID,post_title,post_status |
Lista stron z wybranymi polami. |
wp post create --post_title="Nowy wpis" --post_status=publish --post_content="Treść" |
Tworzy i publikuje wpis. |
wp post-type — informacje o typach treści
Szybkie sprawdzenie dostępnych typów postów i ich właściwości (np. public, supports).
| Komenda | Opis działania |
|---|---|
wp post-type list |
Wyświetla wszystkie zarejestrowane typy postów. |
wp profile — identyfikacja wąskich gardeł
Profilowanie czasu wczytywania WordPressa: wtyczki, hooki, zapytania – idealne do optymalizacji.
| Komenda | Opis działania |
|---|---|
wp profile stage bootstrap |
Profiluje etap bootstrap (uruchamianie WP). |
wp rewrite — struktura odnośników
Listowanie i flush reguł przepisywania, zmiana permalinków bez panelu administratora.
| Komenda | Opis działania |
|---|---|
wp rewrite structure '/%postname%/' --hard |
Ustawia strukturę linków i przepisuje reguły (--hard aktualizuje .htaccess). |
wp rewrite flush |
Czyści i regeneruje reguły przepisywania. |
wp role — role użytkowników
Tworzenie nowych ról, reset do domyślnych i inspekcja ról w systemie.
| Komenda | Opis działania |
|---|---|
wp role list |
Lista ról z przypisanymi uprawnieniami. |
wp scaffold — generatory szkieletów
Szybkie generowanie pluginu, motywu potomnego, CPT, taksonomii, bloków itp. – solidny start dla deweloperów.
| Komenda | Opis działania |
|---|---|
wp scaffold plugin moja-wtyczka |
Tworzy minimalny szkielet wtyczki. |
wp scaffold child-theme nazwa-child --parent_theme=twentytwentyfour |
Generuje motyw potomny na bazie wybranego motywu. |
wp search-replace — bezpieczna podmiana w bazie
Najważniejsze polecenie przy migracjach: rekursywne podmiany (z serializacją!). Najpierw --dry-run, potem właściwy run.
| Komenda | Opis działania |
|---|---|
wp search-replace 'http://stara' 'https://nowa' --all-tables --dry-run |
Symuluje podmianę w całej bazie (sprawdź wynik!). |
wp search-replace 'http://stara' 'https://nowa' --all-tables |
Wykonuje właściwą podmianę we wszystkich tabelach. |
wp server — wbudowany serwer PHP
Szybki serwer developerski dla bieżącej instalacji (nie używać na produkcji).
| Komenda | Opis działania |
|---|---|
wp server --host=127.0.0.1 --port=8080 |
Uruchamia serwer na porcie 8080. |
wp shell — interaktywny PHP shell
REPL dla WordPressa – testuj snippety w bezpiecznym środowisku CLI.
| Komenda | Opis działania |
|---|---|
wp shell |
Otwiera konsolę interaktywną PHP w kontekście WP. |
wp sidebar — zarejestrowane sidebary
Przegląd dostępnych obszarów widgetów – pomocne przy migracjach motywów.
| Komenda | Opis działania |
|---|---|
wp sidebar list |
Listuje zarejestrowane sidebary (obszary widgetów). |
wp site — zarządzanie witrynami w Multisite
Tworzenie, usuwanie, opróżnianie i moderacja witryn w ramach multisite.
| Komenda | Opis działania |
|---|---|
wp site list |
Lista witryn w sieci. |
wp super-admin — superadministrator sieci
Zarządzanie listą super adminów (tylko multisite).
| Komenda | Opis działania |
|---|---|
wp super-admin list |
Listuje super administratorów. |
wp taxonomy — informacje o taksonomiach
Inspekcja dostępnych taksonomii i ich właściwości (np. category, post_tag, niestandardowe).
| Komenda | Opis działania |
|---|---|
wp taxonomy list |
Wyświetla zarejestrowane taksonomie. |
wp term — terminy i meta
Tworzenie, edycja i usuwanie terminów taksonomii, w tym meta terminów.
| Komenda | Opis działania |
|---|---|
wp term create category "Aktualności" |
Dodaje kategorię „Aktualności”. |
wp term list post_tag |
Listuje tagi wpisów. |
wp theme — motywy
Instalacja, aktywacja, aktualizacja i inspekcja motywów, w tym child theme’y.
| Komenda | Opis działania |
|---|---|
wp theme install twentytwentyfour --activate |
Instaluje i aktywuje wskazany motyw. |
wp theme update --all |
Aktualizuje wszystkie motywy. |
wp transient — cache przejściowy
Dodawanie, odczyt i kasowanie transientów – szybki sposób na odświeżenie danych tymczasowych.
| Komenda | Opis działania |
|---|---|
wp transient delete --all |
Usuwa wszystkie transients (w tym z timeoutami). |
wp user — użytkownicy, role i meta
Tworzenie, listowanie, resetowanie haseł i zarządzanie atrybutami użytkowników, w tym w multisite.
| Komenda | Opis działania |
|---|---|
wp user create jan [email protected] --role=editor --user_pass=Haslo123 |
Dodaje nowego użytkownika z rolą editor. |
wp user list --role=administrator |
Listuje administratorów. |
wp widget — widgety
Dodawanie i przenoszenie widgetów w sidebarach – szybkie porządki po zmianie motywu.
| Komenda | Opis działania |
|---|---|
wp widget list sidebar-1 |
Lista widgetów w sidebarze sidebar-1. |
Najczęstsze zastosowania
- Migracja strony – szybka zmiana domeny w bazie.
- Backup i import – eksport oraz przywracanie bazy.
- Masowe aktualizacje – wtyczek i motywów jednym poleceniem.
- Tworzenie użytkowników – bez wchodzenia w panel.
- Automatyzacja – skrypty Bash + WP-CLI oszczędzają godziny pracy.
Podsumowanie
WP-CLI to „szwajcarski scyzoryk” administratora WordPressa. Pozwala przyspieszyć pracę, automatyzować powtarzalne zadania i wygodnie zarządzać stroną z konsoli. Jeśli jeszcze go nie używasz – najwyższy czas spróbować.