WP-CLI je vmesnik ukazne vrstice za WordPress. Vse, kar bi običajno naredili prek skrbniškega vmesnika WP (spreminjanje nastavitev, posodabljanje vtičnikov, brisanje neželenih komentarjev, izvoz baze podatkov), lahko naredite v nekaj sekundah prek SSH. Za eno spletno mesto je to luksuz; za 5+ spletnih mest je to razlika med "To počnem ves dan" in "Rešil sem to pri kosilu".
Ta priročnik zajema: kako namestiti WP-CLI na cPanel, kako ga uporabljati brez root dostopa in 20 ukazov, ki vam bodo v trenutku prihranili čas.
Ali sploh potrebuješ WP-CLI?
Posegnite po njem, če se ponovi vsaj ena od teh situacij:
- Vtičnike morate posodobiti na več spletnih mestih hkrati (npr. na 10 odjemalskih spletnih mestih).
- Skrbniška plošča je prepočasna (preobremenjena, stara strojna oprema) ali nedostopna (napačno geslo, sesutje baze podatkov).
- Narediti moraš nekaj, česar administrator WP ne dovoljuje zlahka: množično posodabljanje URL-jev, brisanje 50.000 neželenih komentarjev, regeneriranje sličic, filtriranje uporabniških vlog.
- Izvajate avtomatizacijo uvajanja (CI/CD, od pripravljalne do produkcijske faze).
- Varnostno kopiranje/obnovitev izvedete s skripto, ki jo pokliče cron.
Namestitev WP-CLI na cPanel (brez root dostopa)
Pri gostovanju pri WMD je WP-CLI običajno že na voljo, če pa ni ali če uporabljate drugega ponudnika, ki ga ne ponuja, namestitev v vaš uporabniški račun cPanel traja 30 sekund.
1. korak – Dostop do SSH. V nadzorni plošči cPanel odprite SSH Access , ustvarite ključ, prenesite zasebni ključ in se povežite:
ssh -i ~/.ssh/wmd_key korisnik@server.wmd.hr -p 222. korak – prenos datoteke wp-cli.phar:
cd ~ curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar3. korak – preverite, ali deluje:
php wp-cli.phar --infoVideti bi morali različico PHP, različico WP-CLI in informacije o poti.
4. korak – premaknite ga v mapo ~/bin in ustvarite vzdevek:
mkdir -p ~/bin mv wp-cli.phar ~/bin/wp chmod +x ~/bin/wp echo 'export PATH=$HOME/bin:$PATH' >> ~/.bashrc source ~/.bashrc Zdaj lahko preprosto vnesete wp namesto php wp-cli.phar .
Prvi korak – položaj
Vsi ukazi WP-CLI se izvajajo v korenskem imeniku namestitve WP (kjer je wp-config.php ). Tipična pot v cPanelu:
cd ~/public_html # ili za addon domain: cd ~/sajt2.hr/public_htmlPreverite, ali deluje:
wp core version Pridobiti morate številko različice WP (npr. 6.7.1 ).
20 ukazov, ki jih dejansko uporabljate
Jedro, vtičniki, teme
-
wp core check-update— ali obstaja posodobitev jedra WP -
wp core update— posodobitev jedra WP -
wp plugin list— seznam vseh vtičnikov s statusi in različicami -
wp plugin update --all— posodobi vse vtičnike hkrati -
wp plugin deactivate plugin-slug— deaktiviraj določen vtičnik (uporabno, kadar nimaš dostopa do administratorja, ker ga je pokvaril) -
wp theme list— seznam tem -
wp theme activate twentytwentyfour— preklopi na privzeto temo (ko tema po meri povzroči sesutje spletnega mesta)
Uporabniki
-
wp user list— seznam vseh uporabnikov -
wp user update 1 --user_pass=NoviPass123— spremenite skrbniško geslo (ID 1), če ga pozabite -
wp user create novi novi@email.hr --role=administrator --user_pass=Pass— ustvari novega skrbnika
Osnova
-
wp db export backup.sql– izvoz celotne baze podatkov v datoteko SQL -
wp db import backup.sql— uvozi varnostno kopijo (pozor: prepiše trenutno bazo podatkov) -
wp db query "SELECT COUNT(*) FROM wp_comments WHERE comment_approved='spam'"— število neželenih komentarjev -
wp comment delete $(wp comment list --status=spam --field=ID) --force— izbriši vse neželene komentarje -
wp search-replace 'http://staro.hr' 'https://novo.hr' --skip-columns=guid— množična zamenjava URL-jev (npr. po migraciji)
Predpomnilnik in nastavitve
-
wp cache flush— čiščenje predpomnilnika objektov (Redis/Memcached) -
wp transient delete --all— počisti ves prehodni predpomnilnik (pogosto reši problem "zakaj se WP ne posodablja") -
wp option get siteurl— preveri trenutni siteurl -
wp option update home 'https://novo.hr'— sprememba domačega URL-ja
Bonus – regeneracija medijev
-
wp media regenerate --yes— regeneriraj vse sličice (npr. po spremembi teme, ki zahteva nove dimenzije)
WP-CLI za več spletnih mest hkrati
Če upravljate več spletnih mest v istem računu cPanel, jih preprost bash skript posodobi vse hkrati:
#!/bin/bash for site in ~/public_html ~/sajt2.hr/public_html ~/sajt3.hr/public_html; do echo "=== Updating $site ===" cd "$site" wp core update wp plugin update --all wp theme update --all done Shrani kot ~/bin/update-all.sh , chmod +x ~/bin/update-all.sh , dodaj v cron za nočne samodejne posodobitve (s predhodno varnostno kopijo!).
WP-CLI + cron za avtomatizirane rutine
V opravilih Cron v cPanelu:
# Svaku noć u 3:00, backup i ažuriraj pluginove 0 3 * * * cd ~/public_html && /home/user/bin/wp db export ~/backups/$(date +\%F).sql && /home/user/bin/wp plugin update --all Pozor: pot cron ne podeduje vaših vzdevkov ~/.bashrc . V opravilu cron uporabite celotno pot /home/user/bin/wp .
Varnost – na kaj morate biti pozorni
- WP-CLI ima poln dostop do baze podatkov. Vsakdo z dostopom SSH do vašega uporabnika cPanel lahko počne karkoli. Ne delite svojega SSH ključa.
- Pred množično posodobitvijo vedno naredite varnostno kopijo.
wp db exporttraja 5 sekund, vtičniki pa lahko spletno mesto uničijo v eni uri. - Test na pripravljalni fazi pred produkcijo. Ukazi WP-CLI nimajo možnosti »razveljavi«.
- Ne vstavljajte gesel v opravila cron. Če morate avtomatizirati ustvarjanje uporabnikov, uporabite
--promptali preberite iz datoteke skrivnosti.
Alternative WP-CLI, ko nimate SSH
Če deljeno gostovanje ne ponuja SSH (redko, ampak se zgodi), obstajajo ovojniki GUI:
- WP-CLI iz cPanel Terminala – nekatere različice cPanela imajo vgrajen terminalski modul, ki omogoča dostop do lupine prek brskalnika. Preverite z iskanjem v cPanelu.
- Aplikacija WP-CLI bash — vtičnik WP, ki prek skrbnika WP ponuja podmnožico ukazov WP-CLI.
Ampak pravi WP-CLI iz prave SSH seje je daleč najhitrejši potek dela.
Pogosto zastavljena vprašanja
Ali lahko uporabljam WP-CLI na večstranskem WP?
To. Vsak ukaz lahko sprejme zastavico --url=sajt2.tvoj.hr ali --network za operacije na ravni omrežja.
Ali ima WP-CLI omejitve načrta WordPress.com/managed?
Da, mnogi ponudniki upravljanih storitev zaradi varnostnih razlogov omejujejo ukaze WP-CLI. WMD ponuja poln WP-CLI brez omejitev glede gostovanja.
Kaj pa, če moji ukazi WP-CLI vrnejo »PHP Fatal error« (usodno napako PHP)?
Običajno: WP-CLI uporablja sistemsko različico PHP, vaše spletno mesto pa uporablja drugo različico PHP, ki je izbrana v cPanelu. Zaženite wp --info in označite »PHP binary« – morda boste morali prepisati: /opt/cpanel/ea-php83/root/usr/bin/php ~/bin/wp ...
Ali lahko dobim pomoč od podpore WMD z ukazi WP-CLI?
Seveda. Če želite avtomatizacijo za svoja spletna mesta, vendar si ne upate sami pisati skriptov, nam sporočite – cron opravila in rutine WP-CLI nastavimo kot del upravljanega paketa.