Come inserire i log in WordPress
Esiste un modo per registrare qualsiasi cosa in WordPress in modo simile ai log che possiamo creare in Magento?
Sto integrando un plugin personalizzato in cui ho aggiunto alcune funzioni con l'aiuto degli hook, quindi ho bisogno di fare debug. In questo caso, vorrei sapere se posso inserire del testo o dei dati nei log di WordPress.
Se è possibile, vi prego di farmi sapere la procedura per generare i log in WordPress.

Puoi abilitare il logging in WordPress aggiungendo questo al file wp-config.php
:
// Abilita la modalità WP_DEBUG
define( 'WP_DEBUG', true );
// Abilita il logging degli errori nel file /wp-content/debug.log
define( 'WP_DEBUG_LOG', true );
Puoi scrivere nel file di log utilizzando la funzione error_log()
fornita da PHP.
Il seguente snippet di codice è un'utile funzione wrapper per essa, rendila disponibile nel tuo plugin:
if (!function_exists('write_log')) {
function write_log($log) {
if (true === WP_DEBUG) {
if (is_array($log) || is_object($log)) {
error_log(print_r($log, true));
} else {
error_log($log);
}
}
}
}
write_log('QUESTO È L\'INIZIO DEL MIO DEBUG PERSONALIZZATO');
//posso loggare dati come oggetti
write_log($qualunque_cosa_tu_voglia_loggare);
Se non riesci a trovare il file debug.log
, prova a generare qualcosa per esso, poiché non verrà creato se non ci sono errori
, inoltre in alcuni server ospitati potresti dover controllare dove si trova il log degli errori utilizzando php info.

Per un utilizzo semplificato della funzione write_log ho creato un plugin https://github.com/manchumahara/cbxwpwritelog nel caso possa essere utile. Lo utilizzo quotidianamente per scopi di sviluppo.

WordPress può fare logging! Dai un'occhiata alla pagina di debug di WordPress qui https://codex.wordpress.org/Debugging_in_WordPress
Di solito preferisco configurare i miei siti di sviluppo locali per registrare gli errori in un file di debug, piuttosto che visualizzarli a schermo.
Vai nel tuo file wp_config e scorri fino in fondo dove viene definito WP_DEBUG.
Ecco come appare la mia configurazione tipica:
define('WP_DEBUG', true); // Per abilitare il debug. Lascia così per mostrare errori, warning e notice a schermo:
define( 'WP_DEBUG_LOG', true ); // Per attivare il logging
define( 'WP_DEBUG_DISPLAY', false ); // Per evitare che errori, warning e notice vengano mostrati a schermo (cosa che personalmente trovo MOLTO fastidiosa):
Con queste impostazioni, WordPress registrerà ora errori, warning e notice in un file debug.log
situato in /wp-content/debug.log
I file di log negli ambienti di produzione rappresentano una minaccia per la sicurezza, quindi SE decidi di attivare il logging in un ambiente di produzione, sarebbe una buona idea configurare il tuo file .htaccess per negare l'accesso al file di log (o usare in modo simile un plugin di sicurezza per bloccarlo). In questo modo potrai comunque ottenere i tuoi log, senza doverti preoccupare che gli hacker possano accedere a tutte quelle informazioni.

Posso aggiungere del testo personalizzato? Ad esempio in un ciclo per confermare quale viene chiamato. Vorrei inserire numeri come 1,2,3 ecc. Come posso farlo?

Puoi farlo. Controlla la risposta di @david per vedere come fare :) Ecco un buon articolo sull'argomento https://www.elegantthemes.com/blog/tips-tricks/using-the-wordpress-debug-log
