Muchos de nuestros lectores nos preguntan cómo hacer un seguimiento de la actividad de los usuarios en sus sitios web en WordPress. Pero he aquí otro escenario: ¿y si el usuario necesita su propia dirección IP?
Puede que vendas un producto que requiera que el cliente introduzca su dirección IP, o que escribas tutoriales que traten sobre direcciones IP y debates similares sobre seguridad. En ese caso, mostrar la dirección IP única del usuario en su sitio puede ahorrarle mucho tiempo y mejorar la experiencia del usuario.
En este artículo, le mostraremos cómo mostrar la dirección IP de un usuario en su sitio web WordPress.
¿Por qué mostrar la dirección IP de un usuario en WordPress?
Una dirección IP (Protocolo de Internet ) es una cadena de números separados por puntos que se utiliza para identificar dispositivos de hardware en una red. Esto significa que la dirección IP del visitante simplemente identifica el dispositivo que está utilizando para conectarse a Internet, como su smartphone, ordenador o tableta.
Hay muchos casos en los que los visitantes pueden necesitar conocer su dirección IP. Por ejemplo, a veces los usuarios tendrán que escribir su dirección IP única al establecer una pieza de software, en particular los plugins de seguridad de WordPress, tales como cortafuegos.
Si vende este tipo de software, mostrar la dirección IP exclusiva del usuario en su documentación en línea puede ayudar a los clientes a establecer su nuevo software.
Aunque no vendas el software tú mismo, muchos blogueros de WordPress publican guías útiles sobre cómo utilizar software de terceros. Si estás escribiendo un tutorial en el que el lector tiene que escribir su dirección IP, mostrar la dirección IP exacta que tiene que utilizar puede ayudarte a crear un tutorial mucho mejor.
En esta entrada tenemos varias formas de mostrar la dirección IP del usuario en su sitio web WordPress. Si prefiere saltar directamente a un método en particular, entonces usted puede utilizar los siguientes enlaces.
- Cómo mostrar la dirección IP de un visitante en WordPress mediante un plugin
- Cómo mostrar la dirección IP de un visitante en WordPress mediante código
1. Cómo mostrar la dirección IP de un visitante en WordPress utilizando un plugin
La forma más sencilla de mostrar la dirección IP de un usuario en WordPress es usando el plugin User IP and Location. Se trata de un simple plugin que te permite mostrar la dirección IP del visitante en cualquier página, entrada o área preparada para widgets mediante un shortcode.
En primer lugar, tendrás que instalar y activar el plugin. Si necesitas ayuda, consulta nuestra guía sobre cómo instalar un plugin de WordPress.
Una vez activado, sólo tienes que abrir la página, entrada o zona preparada para widgets en la que quieras mostrar la dirección IP del visitante. A continuación, haz clic en el icono “Más” para añadir un bloque y busca “Shortcode”.
Cuando aparezca el bloque adecuado, haga clic para añadirlo a su sitio web de WordPress.
Ahora, simplemente escriba el shortcode [userip_location type=ip]. Para obtener más información sobre el uso de shortcodes, consulte nuestra guía para principiantes sobre cómo añadir un shortcode en WordPress.
Una vez hecho esto, haz clic en el botón “Actualizar” o “Publicar” para guardar los cambios.
Ahora, si visitas esta página, verás tu dirección IP única.
2. Cómo mostrar la dirección IP de un usuario en WordPress usando código
También puede mostrar la dirección IP de un visitante utilizando un código. Sin embargo, no recomendamos añadir este código directamente a su sitio, ya que incluso un pequeño error puede causar errores comunes de WordPress. Además, perderá este código personalizado la siguiente vez que actualice su tema de WordPress.
En su lugar, vamos a utilizar WPCode, la forma más fácil y segura para que cualquiera pueda añadir código personalizado a un sitio web de WordPress.
Para empezar, tendrás que instalar y activar WPCode. Para más información, consulta nuestra guía paso a paso sobre cómo instalar un plugin de WordPress.
Después, vaya a Fragmentos de código ” Añadir fragmento en el escritorio de WordPress.
Aquí verás todos los fragmentos de código prefabricados que puedes añadir a tu sitio. Esto incluye un fragmento de código que te permite desactivar completamente los comentarios, subir tipos de archivo que WordPress no suele soportar, desactivar páginas de adjuntos y mucho más.
Para mostrar la dirección IP del usuario, pase el cursor por encima de “Añadir su código personalizado” y seleccione “Usar fragmento”.
Para empezar, escriba un título para el fragmento de código personalizado. Puede ser cualquier cosa que te ayude a identificar el código en tu escritorio de WordPress.
Una vez hecho esto, abra el menú desplegable “Tipo de código” y elija “Fragmento de código PHP”.
A continuación, basta con pegar el siguiente fragmento de código en el editor de código:
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( 'wpb_get_ip', $ip );
}
add_shortcode('show_ip', 'get_the_user_ip');
Para activar el fragmento de código, desplácese a la parte superior de la pantalla y haga clic en el conmutador “Inactivo” para que cambie a “Activo”.
Por último, haga clic en “Guardar fragmento de código” para que el fragmento pase a la acción.
Ahora ha creado un shortcode [show_ip] que puede utilizar para mostrar la dirección IP del visitante en cualquier página, entrada o área preparada para widgets.
Para obtener una guía paso a paso sobre cómo colocar el shortcode, consulte nuestra guía para principiantes sobre cómo añadir un shortcode en WordPress.
Esperamos que este artículo te haya ayudado a aprender cómo mostrar la dirección IP de un usuario en tu sitio de WordPress. También puedes marcar / comprobar nuestra guía sobre cómo permitir el registro de usuarios en tu sitio WordPress y los mejores plugins RGPD para mejorar el cumplimiento.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Christopher
Great article! Is it also possible to show visitors country?
WPBeginner Support
That would require some advanced php or a plugin, we don’t have a recommended method at the moment.
Administrador
Lathif
unfortunately there is still a weakness of the function, that is the problem of “cache”.
visitors will see the same ip address (even if the router is restarted) when they are not clearing “cache” in the browser.
Pamela
Is there a way to display the user’s country flag with this code?
Thanks.
Lloyd
How about a city or state instead of IP?
Beatriz
Where can I see the IP’s collected? and should I paste the snippet of the code on the top of my function.php code?
WPBeginner Support
Paste the code at the bottom of your functions.php file. You will have to use shortcode
[show_ip]
inside a text widget. See our guide on how to add and use widgets in WordPress.Administrador
Brigitte Scherieble
hey,
I am from Germany and I am not a computer freak. But I have the job to find out of the client IP (out of Google Analytics) the Company of the visiter. Can you help me?
Evan
This works great, thank you! Is there any way to have it also display the hostname, perhaps with a separate shortcode?
Reuben Tinto
Hi,
Is it possible to obtain the IP of a previous blog visitor trough this method? If not are you aware of any other courses of action I can take?
Also will I be able to access code if I do not have a premium wordpress account?
I have been trying to locate the IP of an anonymous twitter troll and would really appreciate some help!
Reuben
Mike
Thanks for the tutorial. Please excuse if this is a dumb question but I’m new to working with Wordpress.
If I want to store the visitors IP address along with the date and time they visited a post, should I create a separate mysql database table or is there an existing wp table that collects this information that I can retrieve?
WPBeginner Support
WordPress only stores vistor’s information in the database if they decide to leave a comment. You can create a separate database to collect this information if you want.
Administrador
Mohammad Mursaleen
Creating a table for such functionality in WordPress is not an efficient move. I would prefer to do this using custom post type.
I have answered a similar question over here;
Vivek Digarse
Thanks !
John
Thanks for this, works fine.
But is it possible to use this to monitor new user subscriptions?
alexander kochubey
Thanks for reply, I’ll modify some plugin for some system, I’ll describe it later
meera
HI
Thank you so much…. it works fine……..
Abhisek Padhi
@pippin you are correct. Your code worked fine, but wpbeginner’s code was also working fine.
Doug Hall
Display it where? I don’t understand the post at all.
as
Everywhere use shortcode [show_ip]
Pippin Williamson
It should probably be noted that $_SERVER[‘REMOTE_ADDR’] will not always retrieve the IP properly.
If the user is on a shared connection, you will need to use $_SERVER[‘HTTP_X_FORWARDED_FOR’].
If the user is behind a proxy, you will need to use $_SERVER[‘HTTP_X_FORWARDED_FOR’].
The IP can also be present in $_SERVER[‘HTTP_CLIENT_IP’].
To properly get the IP reliably, something like this should be used:
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 );
}
Pippin Williamson
Formatted version: https://gist.github.com/pippinsplugins/9641841
WPBeginner Support
Thanks Pippin, we have updated the article.
Administrador
Chris Black
Always worth noting that although you can read the IP address with PHP that it may not be useful because people have shared IP addresses, dynamic IP, access websites from different networks/locations and because it is possible to fake the IP address that PHP sees. So – only use an IP address with caution.