Как сделать простой логгер ботов для Wordpress? - PullRequest
0 голосов
/ 15 марта 2019

честно говоря, я не очень опытный кодер. Но я хотел бы иметь простой логгер ботов для Wordpress. Все, что мне нужно, это просто записать имя 'user-agent' в какой-нибудь простой текстовый файл.

Наличие даты / времени - просто бонус.

Кто-нибудь знает какой-нибудь простой php-код / ​​фрагмент, который я могу поместить в header.php или functions.php, пожалуйста?

Спасибо. С наилучшими пожеланиями,

Милан

UPDATE: Так что решение Кристофера Айвса работает отлично, спасибо.

И если я хочу , укажите время и дату посещения пользовательского агента то, что я должен вставить:

add_action('wp', function(){
  file_put_contents(__DIR__.'/useragents.log', $_SERVER['HTTP_USER_AGENT']."\n", FILE_APPEND);
});

Как это должно выглядеть? Я делаю что-то не так с персонажами. ; Я в замешательстве: (

Ответы [ 3 ]

0 голосов
/ 15 марта 2019

В вашем плагине Wordpress вам нужно подключиться к каждому запросу страницы и записать в файл:

add_action('wp', function(){
  file_put_contents(__DIR__.'/useragents.log', $_SERVER['HTTP_USER_AGENT']."\n", FILE_APPEND);
});

Однако имейте в виду, что многие среды PHP не имеют доступа для записи к файлам по соображениям безопасности, поэтому вам потребуется chmod g+w этот файл, чтобы он мог быть записан PHP. Также имейте в виду, что эта информация, вероятно, уже существует в /var/log/apache/*access.log, а также во многих существующих плагинах Wordpress, которые сохранят эту информацию в базе данных и предоставят вам базовые функции отчетности, такие как Статистика WP

0 голосов
/ 15 марта 2019

Я понял это:)

add_action('wp',function () {
$timestamp = date('d/m/Y h:i:s ');
file_put_contents(__DIR__ .'/useragents.log', $timestamp.$_SERVER['HTTP_USER_AGENT']."\n",FILE_APPEND); }
);
0 голосов
/ 15 марта 2019

Вы можете использовать простую функцию, чтобы записать что-то в файл:

function simpleLogger ($logMsg){
    file_put_contents('./log_'.date("j.n.Y").'.log', $logMsg, FILE_APPEND);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...