How to get the WordPress user IP address with code

Retrieving a WordPress user’s IP address can be useful for a variety of purposes like tracking user activity, banning malicious users, or tracking user geographical locations. Retrieving a user’s IP address in WordPress can be done with just a few lines of code. In this article, we’ll show you how to retrieve the IP address of your WordPress users using just a few lines of PHP code. We’ll explain what an IP address is and why it’s important for developers and site owners.

What is an IP address and why do you need it

An IP address is a unique numerical identifier assigned to a device connected to the internet. When a device connects to the internet, it is assigned an IP address that allows it to communicate with other devices and servers on the internet. It is this IP address that is used by websites, services, networks, and applications to identify each user and device on the internet.

Knowing a user’s IP address can help protect networks from malicious attacks, as well as help prevent online fraud and cybercrime. But knowing the IP address of a WordPress user can also be used to create website personalization, improve product recommendations, and improve customer support. Therefore, knowing a user’s IP address provides an important layer of security and helps ensure that users are protected while they are online.

wordpress get user ip

How to find a user’s IP address in WordPress

There are several ways to retrieve a user’s IP address in WordPress, but the most accurate method is to use the $_SERVER superglobal variable. This variable contains information about the server and the current request, including the user’s IP address.

Here’s a code example to retrieve the WordPress user’s IP address:

$user_ip = $_SERVER['REMOTE_ADDR'];

In this code snippet, the $_SERVER['REMOTE_ADDR'] variable is used to retrieve the user’s IP address. This variable contains the IP address of the client (the user’s browser) that is making the request to your website.

It’s important to note that this method may not always return the user’s actual IP address, especially if the user is behind a proxy or using a VPN. In these cases, you may need to use a different method to retrieve the user’s IP address, such as by using a service such as Cloudflare or by using the $_SERVER['HTTP_X_FORWARDED_FOR'] variable.

Here’s a code snippet to retrieve the user’s IP address that takes into account the possibility of the user being behind a proxy:

function get_ip_address(){
        if (array_key_exists($key, $_SERVER) === true){
            foreach (explode(',', $_SERVER[$key]) as $ip){
                $ip = trim($ip);

                if (filter_var($ip, FILTER_VALIDATE_IP, FILTER_FLAG_NO_PRIV_RANGE | FILTER_FLAG_NO_RES_RANGE) !== false){
                    return $ip;


The function starts by defining an array of seven server variables that may contain the client’s IP address. The function then uses a foreach loop to iterate over an array of server variables that may contain the client’s IP address. For each server variable, the function checks if it exists in the $_SERVER superglobal array using array_key_exists(). If the variable exists, the function splits its value into an array using explode(), with each IP address separated by a comma. The foreach loop then iterates over the array of IP addresses and trims each one to ensure there are no leading or trailing spaces using trim(). The function then uses filter_var() with the FILTER_VALIDATE_IP filter and the FILTER_FLAG_NO_PRIV_RANGE and FILTER_FLAG_NO_RES_RANGE flags to validate the IP address. If the IP address is valid, the function returns it. If a valid IP address is not found, the function returns nothing.

Once you have the IP addresses of your WordPress customers you can also use other plugins to further analyze visitor data or create reports on different countries.

If you want a complete solution that allows you with a few clicks of your mouse to easily track user IP addresses, geolations, and gain valuable insight into who is visiting your website check the Users Insights plugin.

WordPress query users based on different parameters, occupation, country, experience


Whether you want to limit access to certain pages or track user activity, knowing the IP address of your WordPress users is essential.

In conclusion, retrieving the WordPress user’s IP address is a straightforward process, but it’s important to keep in mind that the IP address returned may not always be the user’s actual IP address. By using the $_SERVER superglobal variable and taking into account the possibility of the user being behind a proxy, you can retrieve the user’s IP address with confidence.