Un utente ha chiesto informazioni su WooCommerce di Wordpress

in grado di monitorare la posizione della chiamata errata su “get_product”

Un utente ha chiesto 👇

Ogni volta che eseguo determinate azioni (come l’aggiornamento di un prodotto nell’amministratore di woo) ricevo una notifica PHP:

AVVISO: get_product è deprecato dalla versione 3.0! Utilizza invece wc_get_product.
Tipo: riga di notifica PHP: 3840
File: /var/www/test_html/wp-includes/functions.php

Ma setaccio tutti i plugin ei temi che ho e i posti in cui riesco a trovarli sono DOPO aver controllato una versione di woocommerce che è molto più vecchia di quella che ho installato (3.4):

<?php if ( $woocommerce->version >= '3.0' ) : ?>

Qualcuno può darmi qualche indicazione sul motivo per cui appare questa notifica quando non riesco a trovare da nessuna parte questa funzione sta chiamando? C’è un modo migliore per ottenere il file EFFETTIVO chiamando questo?

Supporto per plugin

(@riaanknoetze)

2 anni, 10 mesi fa

Ciao,

Quella notifica significa semplicemente che uno dei tuoi plugin (o tema) che stai utilizzando utilizza un metodo WooCommerce obsoleto per ottenere prodotti. Per quanto riguarda quale sia, è impossibile per noi dirlo dall’esterno perché non abbiamo accesso al codice che alimenta il tuo sito.

Detto questo, un modo semplice e veloce per ottenere questo metodo è scaricare una copia dell’intero sito e cercare nel sito sulla funzione tramite un editor di testo come https://www.sublimetext.com/

Spero possa essere d’aiuto.

Lanciatore di thread

(@ssuess)

2 anni, 10 mesi fa

Grazie per il consiglio, ma è esattamente quello che ho già fatto come ho detto sopra. Dovrebbe esserci un modo più semplice per trovare il file effettivo che sta facendo una cattiva chiamata in ogni caso. Sono sorpreso che non ci sia alcun plugin o codice in grado di catturare il file originale che ha generato una particolare notifica, a parte l’errore risultante e un riferimento al file che non è la causa originale e quindi di scarsa utilità.

Supporto per plugin

(@kbassart)

Ingegnere automatizzato della felicità

2 anni, 10 mesi fa

Ciao,

L’altro modo è fare un test di conflitto. Il modo migliore per scoprire se un tema e / o un plugin sta causando il problema è cambiare temporaneamente il tema in Storefront (https://woocommerce.com/products/storefront/) e disabilita tutti i plugin tranne WooCommerce. Infine, prova per vedere se il problema è stato risolto.

Per aiutare con la risoluzione dei problemi:
Meks Quick Plugin Disabler (https://wordpress.org/plugins/meks-quick-plugin-disabler/) è un plugin che puoi installare che ricorderà quali plugin hai attualmente in modo che siano facili da disattivare Indietro.

Health Check (https://wordpress.org/plugins/health-check/) è un plug-in che consente di disabilitare temporaneamente altri plug-in e modificare i temi per quella sessione senza influire sugli utenti.

Poiché ciò accade solo su pagine e azioni specifiche, potresti iniziare testando i plug-in relativi a tali azioni per eliminarli prima.

Se questo risolve il problema, uno per uno puoi cambiare il tuo tema e riattivare i tuoi plugin, sperimentando tra di loro, finché non trovi quello che sta causando il conflitto.

Supporto per plugin

(@jessepearson)

Ingegnere automatizzato della felicità

2 anni, 9 mesi fa

@ssuess Hai detto di aver visto get_product chiamando dopo un codice come questo?


<?php if ( $woocommerce->version >= '3.0' ) : ?>

Si sta controllando quanto sopra per assicurarsi che la versione sia maggiore di 3.0, quindi questo potrebbe essere il motivo. Anche, version_compare() dovrebbe essere usato in questo caso poiché il >= l’operatore potrebbe non fornire sempre i risultati corretti.
http://php.net/manual/en/function.version-compare.php

Potrebbe essere il plugin con quel codice che deve essere aggiornato.

Supporto per plugin

(@kbassart)

Ingegnere automatizzato della felicità

2 anni, 9 mesi fa

Non ti rispondiamo da un po ‘, quindi lo contrassegnerò come una soluzione: se hai altre domande, puoi iniziare una nuova discussione.

Was this helpful?

0 / 0

Lascia un commento 0

Your email address will not be published. Required fields are marked *