Как поставить логи в WordPress

18

Есть ли способ, что я могу войти в WordPress что-то похожее на журналы, мы можем сделать это в Magento.

Я интегрирую пользовательский плагин в то, что я добавил несколько функций с помощью хуков, поэтому мне нужно что-то отладить в нем. В этом мне нужно, если я могу ввести любой текст или данные в журналах WordPress.

Если так, пожалуйста, дайте мне знать процедуру генерации входа в WordPress.

Пратик Бхатт
источник

Ответы:

28

Вы можете включить ведение журнала WordPress, добавив это в 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 );

Вы можете записать в файл журнала, используя error_log()функцию, это очень полезная функция-обертка для нее, сделайте ее доступной в вашем плагине:

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

если вы не можете найти debug.logфайл, попробуйте сгенерировать что-то для него, так как он не будет создан, если его нет errors, также на некоторых хостинговых серверах вам может понадобиться проверить, где находится журнал ошибок, используя информацию php.

Дэвид Ли
источник
Для удобства использования функции write_log я создал ее как плагин github.com/manchumahara/cbxwpwritelog, если это поможет. Я использую это каждый день для целей развития.
Маньчумахара
4

WordPress может делать логи! Проверьте страницу отладки WordPress здесь https://codex.wordpress.org/Debugging_in_WordPress

Обычно я предпочитаю настраивать свои локальные веб-сайты разработки для регистрации ошибок в файле отладки, а не выводить их на экран.

Перейдите к своему файлу wp_config и прокрутите вниз, где он определяет WP_DEBUG.

Вот как выглядит моя типичная установка:

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

С этими настройками WordPress теперь будет регистрировать ошибки, предупреждения и уведомления в debug.logфайле, расположенном в/wp-content/debug.log

Файлы журналов в производственных средах представляют собой угрозу безопасности, поэтому, если вы решите вести журнал в производственной среде, было бы неплохо настроить файл .htaccess таким образом, чтобы он запрещал доступ к файлу журнала (или аналогичным образом использовал плагин безопасности для его блокировки). , Таким образом, вы все равно получаете свои логи, но вам не нужно беспокоиться о том, что хакеры также получат всю эту информацию.

Ян
источник
Могу ли я добавить любой пользовательский текст в нем? Например, в цикле Просто чтобы получить подтверждение, которое вызывается, я хочу ввести числа, такие как 1,2,3 и т. Д. Как я могу это сделать
Pratik Bhatt
2
Вы можете. Проверьте @ Давида ответ о том , как сделать это :) Вот хорошая статья по этому elegantthemes.com/blog/tips-tricks/...
Ian