Materiały z warsztatów: Wprowadzenie do wp-cli
Kolejne warsztaty na WordCampie za mną. Z tego miejsca chciałbym bardzo podziękować wszystkim uczestnikom za obecność, zadawanie pytań i czynny udział. Mam nadzieję, że wiedza zdobyta podczas warsztatów pozwoli Wam wejść na wyższy poziom jeśli chodzi o zarządzanie WordPressem. Lista materiałów i notatek poniżej.
Pliki do pobrania: https://krzeminski.net/wp-content/uploads/2022/06/pliki.zip
Skrypty bash: https://krzeminski.net/wp-content/uploads/2022/06/wp-cli-bash-scripts.zip
Pod powyższymi linkami znajdują się przykładowe pliki do zaimportowania oraz skrypty do instalacji, aktualizacji i nie tylko. Skrypty najlepiej wrzucić sobie do folderu z instalacją WordPressa i odpalać z poziomu wiersza poleceń. Przykładowo, aby uruchomić skrypt aktualizacjii wykonaj polecenie:sh scripts/update.sh
Notatki
Poniżej notatki oraz polecenie, z których korzystałem w trakcie warsztatów.
Podstawowe polecenia ułatwiające poruszanie się w terminalu
ls # wyświetla listę plików i katalogów (ang. list) ls -alh # wyświetla plików i katalogów (w tym ukrytych) w formie listy mkdir katalog # stworzenie katalogu (ang. make directory) cd katalog # przejście do katalogu o nazwie katalog (ang. change directory) cd .. # przejście do katalogu nadrzędnego cd - # przejście do ostatnio odwiedzone katalogu cd ~ # przejście do katalogu domowego pwd # wyświetlenie aktualnej lokalizacji (ang. print working directory) cp # kopiowanie plików i folderów (ang. copy) mv # zmiany nazwy lub przenoszenie plików i folderów (ang. move) rm # usunięcie plików i folderów (ang. remove) cat plik # wyświetlenie zawartości pliku na ekranie (ang. concatenate)
? Skrót klawiaturowy CTRL+R
→ wyszukiwanie w historii terminala
Zanim zaczniemy
# potwierdzenie poprawnej instalacji wp --info # lista wszystkich modułow wp # pomoc wp help theme wp theme --help
Instalacja WordPressa w 90 sekund
wp core download --locale=pl_PL wp config create --dbname=wpcli --dbuser=root --dbpass=root wp db create wp core install --url=http://localhost:8080 --title="wp-cli" --admin_user=marcin --admin_email=marcin@krzeminski.net wp server
wp core
wp help core wp core download --locale=pl_PL wp core download --locale=pl_PL --skip-content ## one liner wp core install --url=http://localhost:8080 --title="wp-cli" --admin_user=marcin --admin_email=marcin@krzeminski.net # --prompt wp core install --prompt wp core check-update wp core update wp core update-db wp core verify-checksum slug wp core download --locale=pl_PL --version=5.9.2 --force wp core version
wp config
wp help config wp config create --dbname=wpcli --dbuser=root --dbpass=root
wp db
wp help db wp db optimize wp db export wp db export db.sql wp db import db.sql wp db search "fraza" wp db prefix
wp plugin
wp help plugin wp plugin list wp plugin update slug wp plugin activate slug wp plugin uninstall slug --deactivate # lepiej po angielsku wp plugin search "poszukiwana fraza" wp plugin install slug --activate wp plugin install slug slug slug --acitvate wp plugin update --all wp plugin activate --all wp plugin deactivate --all wp plugin verify-checksums slug wp plugin install --version=X.X.X --force
wp theme
wp theme list wp theme update slug wp theme activate slug wp theme delete alug wp theme install slug wp theme install slug slug wp theme isntall slug --activate # lepiej po angielsku wp theme search "poszukiwana fraza"
wp user
wp user list wp user get 1 wp user get email wp user get username wp user update 1 --user_pass=marcin wp user update email --user_pass=marcin wp user update username --user_pass=marcin wp user update 1 --prompt wp user delete 1 wp user delete email wp user delete username wp user reset-password
wp post
wp help post wp post list wp post list --post_type=page wp post generate wp post generate --count=5 wp post generate --post_type=page --count=5 wp plugin install any-ipsum --activate wp any-ipsum generate-posts 5 wp post create --prompt wp post get 2 wp post update 2 --prompt
wp media
wp help media wp media image-size wp media regenerate --yes wp media import nazwa-pliku.jpg wp media import folder/* wp media import folder/*.zip
wp search-replace
wp search-replace https://produkcja.com http://lokalny-adres.test wp search-replace https://produkcja.com http://lokalny-adres.test --all-tables --skip-columns=guid --dry-run wp search-replace https://produkcja.com http://lokalny-adres.test --all-tables --skip-columns=guid --export=db.sql
wp package
# wp-cli-login-command wp package install aaemnnosttv/wp-cli-login-command wp login install --activate wp login create marcin wp login email marcin # wp-cli-faker wp plugin install https://github.com/Yoast/wp-cli-faker/archive/refs/heads/master.zip --activate cd wp-content/plugins/wp-cli-faker/ php composer.phar install wp faker core content # wp-cli-rename-db-prefix wp package install iandunn/wp-cli-rename-db-prefix wp rename-db-prefix warszawa_ cat wp-config.php | grep table_prefix wp config list | grep table_prefix # wp-cli-size wp package install petenelson/wp-cli-size wp size database wp size tables # wp-sec wget https://github.com/markri/wp-sec/archive/refs/heads/master.zip wp package install wp-sec-master.zip # rejestracja na <https://wpscan.com/> aby uzyskac token wp wp-sec check --token=TWOJ_TOKEN
Pozostałe
wp site empty wp site empty --yes wp rewrite flush --hard wp maintenance-mode activate wp maintenance-mode deactivate wp maintenance-mode status wp term list category wp term get category 1 wp term create category 'nazwa kategorii' wp term generate category --count=5 wp term delete category 4 wp comment list wp comment approve 1 wp comment get 1 wp comment spam 1 wp comment delete $(wp comment list --status=spam --format=ids) wp comment trash 1 wp comment delete $(wp comment list --status=trash --format=ids) wp option set blog_public 0
Jeszcze raz dzięki za obecność.
Na koniec gratulacje także dla zwycięzców w konkursie i podziękowania dla seohost.pl oraz devzilla.pl za ufundowanie nagród.
1 komentarz do wpisu “Materiały z warsztatów: Wprowadzenie do wp-cli”
Na prawdę duża dawka wiedzy!
Warsztaty poprowadzone w bardzo przystępny sposób.
Polecam zakup e-booka (sam posiadam), jest tam wszystko zawarte co potrzeba i opisane bardzo prosto!