WP-CLI is de command line interface voor WordPress. Het maakt taken die normaal via de admin veel clicks kosten snel en efficiënt. Bij Theory7 hebben we WP-CLI standaard beschikbaar op servers met SSH toegang. In deze handleiding leer je de kracht van WP-CLI voor WordPress beheer.

Waarom WP-CLI?

WP-CLI biedt grote voordelen:

  • Snelheid - Updates in seconden in plaats van minuten klikken. Dit is vooral handig voor ontwikkelaars en beheerders die meerdere sites beheren.
  • Automatisering - Scriptbare taken voor meerdere sites. Dit kan tijd besparen bij het uitvoeren van routinematige onderhoudstaken.
  • Bulk operaties - Alle plugins tegelijk updaten. Dit is een must voor sites met veel plugins, omdat het de kans op incompatibiliteit vermindert.
  • Toegang bij problemen - Werkt ook als wp-admin niet laadt. Dit kan cruciaal zijn tijdens een noodsituatie waarbij de frontend of backend van de site niet toegankelijk is.
  • Database bewerkingen - Direct SQL queries uitvoeren. Dit biedt meer controle en flexibiliteit bij het beheren van je database.

WP-CLI beschikbaarheid checken

Controleer of WP-CLI geïnstalleerd is:

wp --version

Op Theory7 servers is WP-CLI standaard beschikbaar. Als je WP-CLI niet kunt vinden, neem dan contact op met je hostingprovider voor ondersteuning.

Basis WP-CLI gebruik

Alle WP-CLI commando's moeten vanuit de WordPress root draaien:

cd /var/www/html/wordpress

Of specificeer het pad:

wp --path=/var/www/html/wordpress core version

WordPress versie checken

wp core version

Dit commando geeft je de huidige versie van WordPress weer, wat handig is om te weten voordat je updates uitvoert.

Database info

wp db cli

Dit opent de MySQL command line interface, waar je direct SQL-commando's kunt uitvoeren. Dit kan handig zijn voor geavanceerde databasebewerkingen.

WordPress updaten

Core updaten

Check beschikbare update:

wp core check-update

Update uitvoeren:

wp core update

Na update de database bijwerken:

wp core update-db

Plugins updaten

Alle plugins updaten:

wp plugin update --all

Specifieke plugin:

wp plugin update woocommerce

Dit is handig als je weet dat een specifieke plugin een belangrijke update heeft ontvangen.

Themes updaten

wp theme update --all

Het updaten van thema's is net zo belangrijk als het updaten van plugins, omdat verouderde thema's ook beveiligingsrisico's kunnen vormen.

Plugin beheer

Plugins bekijken

wp plugin list

Alleen actieve plugins:

wp plugin list --status=active

Plugin installeren

wp plugin install wordpress-seo

Installeren en activeren:

wp plugin install wordpress-seo --activate

Dit is een handige manier om snel nieuwe functionaliteit aan je site toe te voegen.

Plugin activeren/deactiveren

wp plugin activate plugin-naam
wp plugin deactivate plugin-naam

Plugin verwijderen

wp plugin delete plugin-naam

Dit is een snelle manier om ongebruikte plugins te verwijderen en je site opgeruimd te houden.

Theme beheer

Themes bekijken

wp theme list

Theme activeren

wp theme activate theme-naam

Theme installeren

wp theme install flavflavor --activate

Het is belangrijk om te zorgen dat je thema's up-to-date zijn om compatibiliteit met plugins en beveiliging te waarborgen.

Gebruikersbeheer

Gebruikers bekijken

wp user list

Nieuwe gebruiker maken

wp user create john john@example.com --role=administrator

Met wachtwoord:

wp user create john john@example.com --role=editor --user_pass=wachtwoord123

Wachtwoord resetten

wp user update admin --user_pass=nieuwwachtwoord

Gebruiker verwijderen

wp user delete 123 --reassign=1

Reassign wijst content toe aan gebruiker met ID 1. Dit is handig om ervoor te zorgen dat geen inhoud verloren gaat bij het verwijderen van een gebruiker.

Database operaties

Database exporteren

wp db export backup.sql

Dit is cruciaal voor het maken van back-ups voordat je grote wijzigingen aanbrengt.

Database importeren

wp db import backup.sql

Dit kan nuttig zijn na een migratie of als je een eerdere versie van je database wilt herstellen.

Search and replace

Perfect voor migraties:

wp search-replace 'http://oud.domein.nl' 'https://nieuw.domein.nl'

Dry run eerst:

wp search-replace 'oud' 'nieuw' --dry-run

Dit voorkomt ongewenste wijzigingen en helpt je om te zien wat er gaat veranderen.

Database optimaliseren

wp db optimize

Dit helpt om de prestaties van je database te verbeteren door ongebruikte ruimte vrij te maken.

Cache beheer

Cache legen

wp cache flush

Dit kan helpen bij het oplossen van problemen met verouderde inhoud die nog steeds wordt weergegeven.

Transients verwijderen

wp transient delete --all

Transients zijn tijdelijke gegevens die kunnen worden verwijderd om de database schoon te houden.

Object cache

wp cache flush
wp rewrite flush

Dit kan nuttig zijn na het aanbrengen van wijzigingen in je permalinkstructuur.

WordPress opties

Optie bekijken

wp option get siteurl
wp option get blogname

Optie wijzigen

wp option update blogname "Mijn Nieuwe Sitetitel"

Site URL wijzigen

wp option update siteurl 'https://nieuwdomein.nl'
wp option update home 'https://nieuwdomein.nl'

Dit is belangrijk bij het verhuizen van een site naar een nieuw domein.

Onderhoud en reparatie

Checksums verifieren

Controleer of core bestanden intact zijn:

wp core verify-checksums

Core herinstalleren

wp core download --force

Dit kan nuttig zijn als je denkt dat er bestanden zijn beschadigd of verloren zijn gegaan.

Database repareren

wp db repair

Dit kan helpen bij het oplossen van problemen met de database.

WP-CLI voor meerdere sites

WordPress Multisite

wp site list
wp plugin activate plugin-naam --network

Dit maakt het beheren van meerdere sites binnen een netwerk veel eenvoudiger.

Loop door alle sites

for site in $(wp site list --field=url); do
    wp --url=$site plugin update --all
done

Dit is een krachtige manier om updates voor alle sites in een multisite-installatie uit te voeren.

Handige one-liners

Complete update

wp core update && wp core update-db && wp plugin update --all && wp theme update --all && wp cache flush

Dit is een handige manier om alles in één keer bij te werken.

Alle inactive plugins verwijderen

wp plugin delete $(wp plugin list --status=inactive --field=name)

Dit helpt om je WordPress-installatie schoon en overzichtelijk te houden.

Spam comments verwijderen

wp comment delete $(wp comment list --status=spam --format=ids)

Dit kan helpen om de prestaties van je site te verbeteren door ongewenste gegevens te verwijderen.

Troubleshooting

Error: MySQL server has gone away

Database connectie timeout. Probeer opnieuw of check database server.

Error: This does not seem to be a WordPress installation

Zorg dat je in de WordPress root directory bent.

Out of memory

wp --memory_limit=512M plugin update --all

Dit kan helpen als je tegen geheugenlimieten aanloopt tijdens het uitvoeren van commando's.

Gerelateerde artikelen

Meer informatie over WordPress hosting bij Theory7

Hulp nodig?

We staan voor je klaar! Loop je ergens tegenaan of heb je vragen? Ons supportteam helpt je graag persoonlijk verder. Stuur ons een berichtje via het ticketsysteem - we reageren meestal binnen een paar uur en denken graag met je mee.