{"id":25803,"date":"2026-06-05T10:00:00","date_gmt":"2026-06-05T08:00:00","guid":{"rendered":"https:\/\/soccorsowp.it\/blog\/?p=25803"},"modified":"2026-06-05T10:00:00","modified_gmt":"2026-06-05T08:00:00","slug":"wp-cli-gestire-wordpress-riga-comando","status":"publish","type":"post","link":"https:\/\/soccorsowp.it\/blog\/wp-cli-gestire-wordpress-riga-comando\/","title":{"rendered":"Come usare WP-CLI per gestire WordPress da riga di comando"},"content":{"rendered":"<h1>Come usare WP-CLI per gestire WordPress da riga di comando<\/h1>\n<p><strong>WP-CLI<\/strong> \u00e8 lo strumento ufficiale per gestire <a href=\"https:\/\/soccorsowp.it\/blog\/blocco-di-contenuti-opt-in-per-wordpress\/\">WordPress<\/a> dalla riga di comando. Ti permette di aggiornare plugin, gestire utenti, eseguire operazioni sul database e molto altro senza mai aprire il browser. Per chi gestisce pi\u00f9 siti o vuole automatizzare le operazioni di manutenzione, WP-CLI \u00e8 indispensabile. In questa guida ti spiego come installarlo e usare i comandi pi\u00f9 utili.<\/p>\n<h2>Perch\u00e9 usare WP-CLI<\/h2>\n<p>La bacheca di WordPress funziona bene per le operazioni quotidiane, ma ha dei limiti. Aggiornare 20 plugin uno alla volta dal browser \u00e8 lento e soggetto a timeout. Eseguire operazioni in blocco sul database richiede phpMyAdmin. Gestire pi\u00f9 siti significa fare login su ogni bacheca separatamente. <strong>WP-CLI<\/strong> risolve tutti questi problemi: un singolo comando aggiorna tutti i plugin, un altro esegue operazioni sul database in millisecondi, e puoi gestire decine di siti dallo stesso terminale.<\/p>\n<h2>Installare WP-CLI<\/h2>\n<p>L&#8217;installazione \u00e8 semplice se hai accesso SSH al server. Esegui questi comandi:<\/p>\n<pre>curl -O https:\/\/raw.githubusercontent.com\/wp-cli\/builds\/gh-pages\/phar\/wp-cli.phar\nchmod +x wp-cli.phar\nmv wp-cli.phar \/usr\/local\/bin\/wp<\/pre>\n<p>Verifica l&#8217;installazione con <span style=\"font-family: monospace\">wp &#8211;version<\/span>. Se tutto \u00e8 corretto, vedrai la versione di WP-CLI. Molti hosting provider hanno WP-CLI gi\u00e0 preinstallato: prova a digitare <span style=\"font-family: monospace\">wp &#8211;version<\/span> prima di installarlo manualmente.<\/p>\n<h2>Comandi essenziali per la gestione dei plugin<\/h2>\n<p>La gestione dei plugin \u00e8 una delle funzionalit\u00e0 pi\u00f9 usate di WP-CLI:<\/p>\n<pre># Elencare tutti i plugin con il loro stato\nwp plugin list\n\n# Aggiornare tutti i plugin\nwp plugin update --all\n\n# Aggiornare un plugin specifico\nwp plugin update woocommerce\n\n# Installare e attivare un plugin\nwp plugin install <a href=\"https:\/\/soccorsowp.it\/blog\/i-migliori-plugin-di-sicurezza-per-wordpress-proteggi-il-tuo-sito-da-malware-e-attacchi-hacker\/\">wordfence<\/a> --activate\n\n# Disattivare un plugin\nwp plugin deactivate contact-form-7\n\n# Eliminare un plugin\nwp plugin delete hello-dolly<\/pre>\n<p>L&#8217;aggiornamento via WP-CLI \u00e8 pi\u00f9 affidabile di quello via browser perch\u00e9 non dipende dai timeout HTTP. Per siti con molti plugin, un singolo <span style=\"font-family: monospace\">wp plugin update &#8211;all<\/span> risparmia minuti di clic manuali.<\/p>\n<h2>Gestire temi e aggiornamenti del core<\/h2>\n<p>WP-CLI gestisce anche i temi e il core di WordPress con la stessa semplicit\u00e0:<\/p>\n<pre># Aggiornare il core di WordPress\nwp core update\n\n# Aggiornare il database dopo un aggiornamento del core\nwp core update-db\n\n# Elencare i temi installati\nwp theme list\n\n# Attivare un tema\nwp theme activate twentytwentyfive\n\n# Verificare la versione di WordPress\nwp core version<\/pre>\n<h2>Operazioni sul database<\/h2>\n<p>WP-CLI \u00e8 particolarmente potente per le operazioni sul database. Il comando <span style=\"font-family: monospace\">wp search-replace<\/span> \u00e8 forse il pi\u00f9 utile: esegue una ricerca e sostituzione su tutto il database, gestendo correttamente anche i dati serializzati (cosa impossibile con una semplice query SQL):<\/p>\n<pre># Cambiare URL del sito (es. dopo migrazione)\nwp search-replace 'http:\/\/vecchiodominio.com' 'https:\/\/nuovodominio.com'\n\n# Simulare senza modificare (dry-run)\nwp search-replace 'http:\/\/vecchiodominio.com' 'https:\/\/nuovodominio.com' --dry-run\n\n# Esportare il database\nwp db export backup.sql\n\n# Importare un database\nwp db import backup.sql\n\n# Ottimizzare le tabelle del database\nwp db optimize\n\n# Riparare le tabelle del database\nwp db repair<\/pre>\n<p>Il <span style=\"font-family: monospace\">search-replace<\/span> con gestione dei dati serializzati \u00e8 fondamentale durante le migrazioni: senza WP-CLI dovresti usare strumenti esterni come Better Search Replace o script personalizzati.<\/p>\n<h2>Gestire gli utenti<\/h2>\n<p>WP-CLI semplifica la gestione degli utenti, specialmente per operazioni in blocco o di emergenza:<\/p>\n<pre># Elencare gli utenti\nwp user list\n\n# Creare un nuovo utente admin\nwp user create mario mario@esempio.com --role=administrator --user_pass=PasswordSicura123\n\n# Cambiare la password di un utente\nwp user update 1 --user_pass=NuovaPassword456\n\n# Eliminare un utente (riassegnare i contenuti all'utente ID 1)\nwp user delete 5 --reassign=1<\/pre>\n<p>Il comando per creare un utente admin \u00e8 particolarmente utile quando sei bloccato fuori dalla bacheca: puoi creare un nuovo admin via SSH e usarlo per accedere al sito.<\/p>\n<h2>Svuotare la cache e gestire i transient<\/h2>\n<p>WP-CLI offre comandi dedicati per la gestione della cache e dei transient, dati temporanei che i plugin accumulano nel database:<\/p>\n<pre># Svuotare la object cache\nwp cache flush\n\n# Eliminare tutti i transient scaduti\nwp transient delete --expired\n\n# Eliminare tutti i transient (anche non scaduti)\nwp transient delete --all\n\n# Rigenerare i permalink\nwp rewrite flush<\/pre>\n<p>La pulizia dei transient \u00e8 importante per le prestazioni: plugin mal programmati possono accumulare migliaia di transient nella tabella <span style=\"font-family: monospace\">wp_options<\/span>, rallentando il database. Con un singolo comando puoi eliminarli tutti.<\/p>\n<h2>Automatizzare con script e cron<\/h2>\n<p>La vera potenza di WP-CLI sta nell&#8217;automazione. Puoi creare script bash che eseguono operazioni di manutenzione programmate:<\/p>\n<pre>#!\/bin\/bash\n# Script di manutenzione settimanale\ncd \/var\/www\/html\n\n# Aggiornare tutti i plugin\nwp plugin update --all\n\n# Aggiornare il core\nwp core update\nwp core update-db\n\n# Pulire i transient\nwp transient delete --expired\n\n# Ottimizzare il database\nwp db optimize\n\necho \"Manutenzione completata: $(date)\"<\/pre>\n<p>Aggiungi questo script al crontab per eseguirlo automaticamente ogni settimana. Ricorda di specificare il percorso completo dell&#8217;eseguibile <span style=\"font-family: monospace\">wp<\/span> nel crontab e di usare il flag <span style=\"font-family: monospace\">&#8211;path<\/span> se necessario.<\/p>\n<h2>Serve aiuto con la gestione del sito?<\/h2>\n<p>Se vuoi automatizzare la manutenzione del tuo sito WordPress o hai bisogno di operazioni avanzate sul database, il team di <strong><a href=\"https:\/\/soccorsowp.it\/blog\/i-migliori-plugin-woocommerce-per-dominare-il-black-friday\/\">SoccorsoWP<\/a><\/strong> pu\u00f2 configurare script di manutenzione personalizzati per il tuo sito. <a href=\"https:\/\/soccorsowp.it\/ticket\/\">Apri un ticket<\/a> e semplifica la gestione del tuo WordPress.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Come usare WP-CLI per gestire WordPress da riga di comando WP-CLI \u00e8 lo strumento ufficiale per gestire WordPress dalla riga di comando. Ti permette di&#8230;<\/p>\n","protected":false},"author":1,"featured_media":25804,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_seopress_titles_title":"WP-CLI: gestire WordPress da riga di comando","_seopress_titles_desc":"Guida completa a WP-CLI per gestire WordPress da terminale. Comandi per plugin, temi, database, utenti e automazione della manutenzione.","_seopress_robots_index":"","_seopress_robots_follow":"","_seopress_robots_imageindex":"","_seopress_robots_snippet":"","_seopress_robots_primary_cat":"","_seopress_robots_breadcrumbs":"","_seopress_robots_freeze_modified_date":"","_seopress_robots_custom_modified_date":"","_seopress_robots_canonical":"","_seopress_social_fb_title":"","_seopress_social_fb_desc":"","_seopress_social_fb_img":"","_seopress_social_fb_img_attachment_id":0,"_seopress_social_fb_img_width":0,"_seopress_social_fb_img_height":0,"_seopress_social_twitter_title":"","_seopress_social_twitter_desc":"","_seopress_social_twitter_img":"","_seopress_social_twitter_img_attachment_id":0,"_seopress_social_twitter_img_width":0,"_seopress_social_twitter_img_height":0,"_seopress_redirections_value":"","_seopress_redirections_enabled":"","_seopress_redirections_enabled_regex":"","_seopress_redirections_logged_status":"","_seopress_redirections_param":"","_seopress_redirections_type":0,"_seopress_analysis_target_kw":"","footnotes":""},"categories":[741],"tags":[],"class_list":["post-25803","post","type-post","status-publish","format-standard","has-post-thumbnail","category-plugin"],"_links":{"self":[{"href":"https:\/\/soccorsowp.it\/blog\/wp-json\/wp\/v2\/posts\/25803","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/soccorsowp.it\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/soccorsowp.it\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/soccorsowp.it\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/soccorsowp.it\/blog\/wp-json\/wp\/v2\/comments?post=25803"}],"version-history":[{"count":0,"href":"https:\/\/soccorsowp.it\/blog\/wp-json\/wp\/v2\/posts\/25803\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/soccorsowp.it\/blog\/wp-json\/wp\/v2\/media\/25804"}],"wp:attachment":[{"href":"https:\/\/soccorsowp.it\/blog\/wp-json\/wp\/v2\/media?parent=25803"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/soccorsowp.it\/blog\/wp-json\/wp\/v2\/categories?post=25803"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/soccorsowp.it\/blog\/wp-json\/wp\/v2\/tags?post=25803"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}