Wp-cli gebruiken voor plezier en winst

Zie hoe u veelgebruikte WordPress-taken sneller kunt uitvoeren of zelfs automatiseren door de kracht van bash te gebruiken.


Wat is wp-cli?

wp-cli is een hulpmiddel voor het beheren van WordPress via een consolevenster.

Wanneer de WordPress-beheerdersinterface zo mooi en gebruiksvriendelijk is, is de natuurlijke vraag: waarom zou u ooit een opdrachtregelinterface gebruiken?

Er zijn twee belangrijke redenen:

  • Het toetsenbord is sneller dan de muis - Voor hoofdgebruikers kan het typen van een opdracht sneller dan het indrukken van een knop in een webbrowser ordes van grootte zijn.
  • Scripting - U kunt verschillende opdrachten in een tekstbestand plaatsen en deze automatisch laten uitvoeren.

In deze tutorial ga ik je een voorproefje geven van waar wp-cli goed voor is.


Installeren van wp-cli

Voordat je het gebruikt, heb je een paar dingen nodig:

  1. UNIX-achtige schaal - Als u op een Mac of Linux werkt, kunt u wp-cli uitvoeren op uw lokale computer. Als u Windows gebruikt, kunt u zich aanmelden bij uw Linux-server via Putty en wp-cli daar installeren.

  2. PHP 5.3+ en het php-cli-hulpprogramma - U kunt zien of u deze hebt door de volgende opdracht uit te voeren:

    php -v
  3. Git - Dit is wat we zullen gebruiken om wp-cli te installeren en bij te werken.

Het wp-cli-project staat nog in de kinderschoenen, dus de beste manier om op de hoogte te blijven van recente versies is door het vanuit github te klonen:

 git clone --recurse-submodules git: //github.com/andreascreten/wp-cli.git ~ / git / wp-cli cd ~ / git / wp-cli sudo utils / build-dev

~ / Git / wp-cli is de map waar wp-cli zal worden geïnstalleerd. Voel je vrij om het te veranderen naar wat je maar wilt.

Dat is het. Nu de wp commando zou beschikbaar moeten zijn:

 cd / var / www / public_html / wordpress wp

Op multisite

Als u wp-cli wilt gebruiken voor een multisite-installatie, moet u beslissen op welke blog u wilt werken:

 wp --blog = myblog.mynetwork.com

Om te voorkomen dat je de --blog parameter voor elke opdracht, kunt u deze opslaan in een speciaal genoemd bestand:

 echo 'myblog.mynetwork.com'> wp-cli-blog

wp-cli zal dat bestand lezen als er nee is --blog parameter.


Omgaan met Core

Laten we eerst kijken met welke versie van WordPress we te maken hebben:

 wp core-versie - extra

Om een ​​update uit te voeren, hoeft u alleen maar te schrijven:

 wp core-update

Afhandeling van plug-ins

Laten we eens kijken welke plug-ins we hebben geïnstalleerd:

 wp plugin-status

Het lijkt erop dat er een update beschikbaar is voor Akismet. Laten we het installeren:

 wp plugin update akismet

Laten we nu een plug-in van wordpress.org installeren en activeren:

 wp plugin installeer google-sitemap-generator - activeer

U kunt ook de ontwikkelversie van een plug-in installeren:

 wp plugin installeer google-sitemap-generator - activeer --dev

Oh, en kijk, er is nu een nieuwe opdracht beschikbaar:

 wp google-sitemap

We kunnen snel een plug-in van actief naar inactief veranderen en omgekeerd:

 wp plug-in toggle google-sitemap-generator

Dit is een goede manier om activatiehaken te debuggen.

Op dezelfde manier kunt u de verwijderingsprocedure van een plug-in uitvoeren zonder de plug-inbestanden te verwijderen:

 wp plugin verwijderen google-sitemap-generator

En natuurlijk kun je de plug-in ook verwijderen:

 wp plugin delete google-sitemap-generator

Omgaan met thema's

We hebben een paar opdrachten om met thema's te werken:

 wp-thema status

In tegenstelling tot plug-ins, kunt u slechts één thema tegelijkertijd laten werken, dus als u een thema activeert, wordt het vorige thema automatisch "gedeactiveerd":

 wp-thema activeren twintig

En hier is een kleine truc om in de directory van een bepaald thema te gaan:

 cd $ (wp themapad twentyeleven)

Gegevens genereren

Als u een thema aan het schrijven bent en de paginering wilt stylen, zult u veel posts nodig hebben. Dit is de snelste manier om ze te krijgen:

 wp genereert berichten --count = 1000

Als je een lijst met gebruikers wilt stylen, kun je er ook een aantal genereren:

 wp genereer gebruikers --role = auteur

U kunt ook individuele gebruikers maken:

 wp-gebruiker maakt stan [email protected]

Exportbestanden maken

U kunt uw inhoud periodiek exporteren naar een WXR-bestand.

 wp export --path =. / --user = admin

U kunt aanvullende parameters doorgeven om te beperken welke inhoud wordt geëxporteerd, zoals --categorie, --begin datum enz.


Opties on the Fly veranderen

Er zijn eenvoudige commando's voor CRUD bewerkingen op opties:

 wp optie krijg permalink_structure wp optie voeg foo bar toe wp optie delete foo

U wilt dit niet op een regelmatige basis doen, omdat de meeste opties beperkt zijn tot bepaalde waarden. Maar het kan van pas komen in scripts.


Databasebewerkingen

Als u een back-up van de database wilt maken, schrijft u gewoon:

 wp db dump

Of misschien moet u een korte zoekopdracht uitvoeren om te achterhalen wanneer de laatste post is gepubliceerd:

 wp db query "SELECT MAX (post_date) van wp_posts WHERE post_type = 'post' AND post_status = 'publish'"

Het openen van een interactieve MySQL-sessie om wat diagnostiek te doen is net zo eenvoudig:

 wp db cli

Arbitraire code uitvoeren

Soms is de enige manier om wp-cli te vertellen wat je wilt, door het te beschrijven in PHP-code:

 wp eval-file do-my-laundry.php

Met de opdracht hierboven laadt wp-cli eerst WordPress en laadt en voert het je PHP-bestand uit.

Dit is handig in implementatiescripts of voor andere complexe acties die niet kunnen worden bereikt met ingebouwde opdrachten.

Je kunt ook inline PHP-code doorgeven:

 wp eval 'echo WP_CONTENT_DIR;'

Je eigen commando's maken

Geloof het of niet, wp-cli is meestal geschreven in PHP. Elke opdracht is een klasse, waarbij elke methode een subopdracht vertegenwoordigt.

Het leuke is dat je je eigen klasse kunt maken, deze in een plug-in kunt plaatsen en wp-cli automatisch zal herkennen als een van die van hemzelf. Een gedetailleerde zelfstudie voor het maken van opdrachten is beschikbaar in de projectwiki.


Conclusie

Ik hoop dat ik je heb overtuigd om Wp-Cli op zijn minst eens te proberen. Als je een bug hebt gevonden of een functieverzoek hebt, overweeg dan om een ​​probleem te openen.

Heeft u een interessant gebruik van wp-cli? Deel het alsjeblieft in de comments hieronder.