Jak umieścić dzienniki w Wordpress

20

Czy jest jakiś sposób, że mogę zalogować cokolwiek w wordpress podobnym do logów, możemy to zrobić w Magento.

Integruję niestandardową wtyczkę, ponieważ dodałem kilka funkcji za pomocą haków, więc muszę coś w niej debugować. Potrzebuję, jeśli mogę wprowadzić dowolny tekst lub dane do dzienników WordPress.

Jeśli tak, daj mi znać procedurę generowania logowania do wordpress.

Pratik Bhatt
źródło

Odpowiedzi:

30

Możesz włączyć rejestrowanie WordPress dodając to do wp-config.php:

 // Enable WP_DEBUG mode
define( 'WP_DEBUG', true );

// Enable Debug logging to the /wp-content/debug.log file
define( 'WP_DEBUG_LOG', true );

możesz zapisać do pliku dziennika za pomocą error_log()funkcji, jest to bardzo przydatne opakowanie funkcji, udostępnij go we wtyczce:

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('THIS IS THE START OF MY CUSTOM DEBUG');
//i can log data like objects
write_log($whatever_you_want_to_log);

jeśli nie możesz znaleźć debug.logpliku, spróbuj wygenerować coś dla niego, ponieważ nie zostanie utworzony, jeśli go nie ma errors, również na niektórych hostowanych serwerach może być konieczne sprawdzenie, gdzie znajduje się dziennik błędów, przy użyciu informacji php.

David Lee
źródło
Dla łatwego użycia funkcji write_log stworzyłem go jako wtyczkę github.com/manchumahara/cbxwpwritelog, jeśli to pomaga. Używam go codziennie do celów programistycznych.
Manchumahara,
5

WordPress może rejestrować! Sprawdź stronę debugowania WordPress tutaj https://codex.wordpress.org/Debugging_in_WordPress

Zazwyczaj lubię ustawiać lokalne witryny programistyczne tak, aby rejestrowały błędy w pliku debugowania, zamiast wyświetlać je na ekranie.

Przejdź do pliku wp_config i przewiń w dół, w którym definiuje WP_DEBUG.

Tak wygląda moja typowa konfiguracja:

define('WP_DEBUG', true); // To enable debugging. Leave things just like this to output errors, warnings, notices to the screen:
define( 'WP_DEBUG_LOG', true ); // To turn on logging
define( 'WP_DEBUG_DISPLAY', false ); // To prevent output of errors, warnings, notices to the screen (which I personally find SUPER annoying):

Przy tych ustawieniach WordPress będzie teraz rejestrować błędy, ostrzeżenia i powiadomienia w debug.logpliku znajdującym się w/wp-content/debug.log

Pliki dziennika w środowiskach produkcyjnych są zagrożeniami bezpieczeństwa, więc JEŻELI zdecydujesz się na logowanie do środowiska produkcyjnego, dobrym pomysłem byłoby ustawienie pliku .htaccess tak, aby odmawiał dostępu do pliku dziennika (lub podobnie użyj wtyczki bezpieczeństwa, aby go zablokować) . W ten sposób nadal otrzymujesz dzienniki, ale nie musisz się martwić, że hakerzy również uzyskają wszystkie te informacje.

Ian
źródło
Czy mogę dodać dowolny niestandardowy tekst? Na przykład w pętli Aby uzyskać potwierdzenie, która się nazywa Chcę wprowadzić liczby takie jak 1,2,3 itd. Jak to zrobić
Pratik bhatt
2
Możesz. Sprawdź odpowiedź @ Davida, jak to zrobić :) Oto dobry artykuł na temat elegantthemes.com/blog/tips-tricks/…
Ian