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)
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)
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)
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