WP-CLI non riconosce gli aggiornamenti dei plug-in commerciali


11

Sto riscontrando un problema che non ho riscontrato prima in cui WP-CLI non riconosce gli aggiornamenti dei plugin per i plugin commerciali.

Gli aggiornamenti del plug-in vengono visualizzati nella dashboard di WordPress, ma l'esecuzione ../wp-cli.phar plugin update --allnon li aggiorna. Se ../wp-cli.phar plugin listlo eseguo non mostra loro di avere aggiornamenti.

Ho eseguito aggiornamenti tramite WP-CLI per gli stessi plugin commerciali su altri server senza alcun problema. L'unica cosa diversa su questo server è che non ho sudoaccesso, quindi, come puoi vedere, sto chiamando wp-cli.phardirettamente invece che tramite il wpcomando.

WP-CLI sta elaborando gli aggiornamenti dei plug-in dal repository .org senza problemi in questa installazione.


1
Ciao Nate, non sono in grado di replicare questa chiamata wp-cli.phardirettamente con la versione pro di Advanced Custom Fields. È disponibile un aggiornamento, che viene mostrato come disponibile nell'output di wp-cli. Con quali plugin stai provando questo? È possibile che stiano scavalcando le normali routine di WP per questo e quindi non vengano rilevati da wp-cli?
Tim Malone,

Grazie per la risposta Tim. Nel corso dei mesi ho scoperto che è piuttosto sporadico, ma tende ad accadere con i plugin che utilizzano le licenze software EDD, che credo utilizzino le normali tecniche di WP per gli aggiornamenti. È successo ovunque ho usato WP-CLI (sviluppatore locale, alcuni server diversi).
NateWr

Hmm. Dovrò verificare se anche i plugin commerciali che ho usato EDD. Hai registrato un problema con wp-cli?
Tim Malone,

No, non ho registrato un problema perché è così sporadico. Non riesco a riprodurlo in modo affidabile (mi chiedevo se si tratta di un problema con i transitori). Ma Daniel ha esaminato questa domanda SE e ha detto che non aveva sentito parlare di un problema e non riusciva a pensare a nulla che potesse causarlo.
NateWr

1
Nate Mi sono imbattuto in un problema simile solo il mese scorso, dopo alcune ore che mi sono grattato la testa ho scoperto che il mio problema era direttamente correlato a un problema del resolver DNS sull'host. Alla fine l'host stava scadendo durante la risoluzione del DNS, quindi non è mai stato in grado di connettersi alla fonte dell'aggiornamento per eseguire il controllo. La natura sporadica del tuo problema suggerirebbe di avere un problema simile. Vorrei qualche minuto per verificare la risoluzione DNS e le connessioni in uscita dall'host.
Steve,

Risposte:


1

Quello che hai riscontrato potrebbe essere un problema a livello di rete o qualcuno ha rimosso temporaneamente le risorse di download. Ad esempio prima dell'aggiornamento.

La maggior parte dei dettagli che puoi ottenere dal codice sorgente https://github.com/wp-cli/wp-cli.

La funzione di aggiornamento del plug-in è simile a questa.

function update( $args, $assoc_args ) {
        if ( isset( $assoc_args['version'] ) ) {
            foreach ( $this->fetcher->get_many( $args ) as $plugin ) {
                $assoc_args['force'] = 1;
                $this->install( array( $plugin->name ), $assoc_args );
            }
        } else {
            parent::update_many( $args, $assoc_args );
        }
    }

E quando lo specifichi wp plugin update --alleffettivamente passa attraverso la parent::update_manyfunzione, in cui il genitore è effettivamente CommandWithUpgradeclasse.

In conclusione, wp-cliutilizza le risorse fornite da plugin come questo:

# Install from a remote zip file
wp plugin install http://s3.amazonaws.com/bucketname/my-plugin.zip?AWSAccessKeyId=123&Expires=456&Signature=abcdef

Ma lì puoi vedere le informazioni che non dovresti vedere.

Nota a margine

Si noti che alcuni plugin premium non supportano l'aggiornamento tramite WP-CLI. Ad esempio, so che BackupBuddy e Gravity Forms funzionano bene, ma i plugin di Yoast no. Questo potrebbe cambiare.


1

L'utente che esegue wp-cli necessita di autorizzazioni di scrittura su wp-contente sottodirectory - se falliscono solo alcuni plugin, forse le directory di questi plugin sono di sola lettura per quell'utente.

C'è un bug in wp cli che non segnala i permessi dei file mancanti e invece segnala che il plugin è già aggiornato.

I sintomi descritti si applicano a quella situazione, quindi questa sarà una soluzione per alcuni.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.