Как я могу это сделать? Вы не можете получить доступ к сайту без участника, но бот Google может войти. Как я могу это сделать? Вы не можете получить доступ к сайту без участника, но бот Google может войти. Я попытался создать переменную и исключить IP-адрес, но мне это не удалось.

Лучше всего тестировать использование обратного поиска DNS, так как Пользовательский агент может быть подделан. PHP делает это довольно просто, вот образец теста:
// $ip = $_SERVER['REMOTE_ADDR']; // Use to check the visitor IP
$ip = '66.249.66.1'; // Sample Google IP from their docs
$host_name = gethostbyaddr($ip);
$is_google = strpos($host_name, 'google') !== false ? 'is' : 'is <b>NOT</b>';
echo "<p>$host_name</p>";
echo "<p>IP Address $is_google Google</p>";
Теперь мы можем проверить, вошел ли пользователь в систему и не является ли он ботом Google. С помощью хука WordPress template_redirectРекомендовано. Добавьте это в свой файл темы functions.php:
/**
* Redirect the user to login if they are not logged in and not a google bot
*/
function redirect_not_logged_in_not_google() {
$host_name = gethostbyaddr($_SERVER['REMOTE_ADDR']);
if ( strpos($host_name, 'google') === false && !is_user_logged_in() ) {
wp_redirect( home_url( '/login/' ) );
die;
}
}
add_action( 'template_redirect', 'redirect_not_logged_in_not_google' );
Я пробовал ваш код, но он не работал. Перенаправлен на страницу входа в Google IP. resmim.net/f/pzBW5C.png?v=10201914210403000300
Таким образом, похоже, что у вас есть и образец кода тестирования, и функция / действие redirect_not_logged_in_not_google() в вашем functions.php. Если вы хотите протестировать его вживую в теме WordPress, вам придется изменить $host_name = gethostbyaddr($_SERVER['REMOTE_ADDR']); на $host_name = gethostbyaddr('66.249.66.1');, где '66.249.66.1' - это образец IP-адреса Google. В настоящее время вы все еще будете перенаправлены на страницу /login, потому что вы просматриваете свой сайт не из Google. ;-)
Попробуйте добавить honeypoint, скрыть ссылку в robots.txt и т. д. Я рекомендую попробовать поиграть с плагином All In one WP Security (для этого есть встроенные инструменты).