На днях один из наших пользователей задал вопрос, можно ли как-то определить и вывести на экран IP-адрес отдельного посетителя в WordPress. Наш ответ был следующим: естественно, можно! В данной статье мы покажем вам, как отобразить IP-адрес пользователя в WordPress.
Вы можете использовать это для создания своего собственного сайта с детектированием IP. Когда посетитель зайдет к вам на сайт, вы увидите его IP-адрес.
Все, что вам нужно сделать – это добавить следующий фрагмент кода в файл functions.php:
// Display User IP in WordPress function wpb_show_ip() { $user_ip = $_SERVER['REMOTE_ADDR']; return $user_ip; } add_shortcode('show_ip', 'wpb_show_ip');
Далее вам нужно будет добавить следующий шорткод в запись, на страницу или в виджет сайдбара:
[ show_ip ]
Если вы используете шорткод в вашем текстовом виджете и он не работает, то в таком случае вам нужно убедиться, что шорткоды для виджетов сайдбара включены.
Примечание от Пиппина Вильямсона: стоит отметить, что $_SERVER[‘REMOTE_ADDR’] не всегда корректно возвращает IP. Если пользователь использует совместное подключение к интернету, то в таком случае нужно использовать $_SERVER[‘HTTP_X_FORWARDED_FOR’]. IP может также быть представлен в переменной $_SERVER[‘HTTP_CLIENT_IP’]. Если пользователь использует прокси, вам нужно использовать $_SERVER[‘HTTP_X_FORWARDED_FOR’].
В целом, чтобы точно получить IP-адрес, следует использовать следующую функцию:
<?php function get_the_user_ip() { if ( ! empty( $_SERVER['HTTP_CLIENT_IP'] ) ) { //check ip from share internet $ip = $_SERVER['HTTP_CLIENT_IP']; } elseif ( ! empty( $_SERVER['HTTP_X_FORWARDED_FOR'] ) ) { //to check ip is pass from proxy $ip = $_SERVER['HTTP_X_FORWARDED_FOR']; } else { $ip = $_SERVER['REMOTE_ADDR']; } return apply_filters( 'edd_get_ip', $ip ); }
Источник: wpbeginner.com
Как можно определить ip зарегистрировашегося пользователя, не оставившего на сайте ни одной записи, коментария? Заранее благодарен.
так в самой админке в списке пользователей вроде как выводятся вместе с остальной инфой — логин почта и т.д.
В том то и дело что не выводиться, замучился уже чистить список пользователей. Кто то региться, видимо один и тот же чел по 50 учетных записей открывает, а пока он ни чего не напишет, комент например ip общедоступными средствами не определить. есть конечно геморный вариант в код лезть, но я пока не особый спец по програмированию. Пока просто лавочку прикрыл на регистрацию, до устранения проблемы.
Так поставьте просто http://wordpress.org/plugins/wp-recaptcha/ и все. При регистрации пользователям нужно будет вводить капчу, что отсеет многочисленных ботов и спамеров.
Вообще, на мой личный взгляд, рекапча, разработанная гуглом — это ужас. На сайтах, где стоит рекапча мне приходилось порой с третьего-пятого раза угадывать и вводить то, что там изображается. Т.е. я тратил уйму времени на то, чтобы скачать какой-то файл или зарегистрироваться. С регистрацией так и вообще — если неправильно ввёл, перегружается страница с регистрационными данными и вводи всё по новой.
Т.е. я бы сказал: рекапча — античеловеческое решение. В то же самое время роботу гораздо проще её обойти, чем ввести живому человеку. Это касается капч вообще.
Рекомендую лучше поставить проверочный вопрос или ложное поле, которое заполняют боты, а людям не видно.
На вскидку, что нашлось (сам не пользовался):
https://wordpress.org/plugins/humancaptcha/ — придумываете уникальные вопросы и прощай боты. Всё гениальное — просто.
Без плагинов, тот же проверочный вопрос:
https://trepmal.com/2011/02/28/add-a-security-question-to-the-register-screen/
И еще разное против спамеров:
http://wordpress.org/plugins/wangguard/
http://wordpress.org/plugins/stop-spammer-registrations-plugin/
Wangguard имеет свою базу спамеров, но мне кажется, что для русского сегмента такая база будет не совсем актуальной, поскольку у нас есть и свои спамеры.
Спасибо большое, попробую капчу установить.Я видел где то в вордпрессе капчу состоящуу из цифр,а то капчу из букв я и сам не очень люблю, особенно на латинице да еще где буква на букву наезжает.
Ну вот humancaptcha, то биш контрольный вопрос — имхо самое надежное. Контрольные вопросы, придуманные лично, я использовал например на форумах. Всегда работало идеально. А капчу постоянно ломают боты и она никогда не давала высоких результатов.