@marc_zboncak
Для определения поисковых ботов средствами PHP можно использовать User Agent строки, которая обычно содержится в заголовке HTTP запроса.
Вот пример кода, который демонстрирует, как определить поисковых ботов:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
function isBot() { $bots = array( 'Googlebot', 'Bingbot', 'Slurp', 'DuckDuckBot', 'Baiduspider', 'YandexBot' ); foreach($bots as $bot) { if(stripos($_SERVER['HTTP_USER_AGENT'], $bot) !== false) { return true; } } return false; } if(isBot()) { echo "Это поисковый бот"; } else { echo "Это не поисковый бот"; } |
В этом примере мы создали функцию isBot()
, которая проверяет, содержит ли User Agent строка значение, соответствующее одному из поисковых ботов (в нашем случае включены Googlebot, Bingbot, Slurp, DuckDuckBot, Baiduspider и YandexBot). Если User Agent строка содержит одну из указанных значений, функция возвращает true
, в противном случае возвращает false
.
Затем мы вызываем эту функцию и выводим сообщение, в зависимости от результата проверки. Если isBot()
возвращает true
, мы выводим "Это поисковый бот", в противном случае выводим "Это не поисковый бот".