이 플러그인은 최근 3개의 주요 워드프레스 출시와 시험 되지 않았습니다. 워드프레스의 좀 더 최근 버전으로 이용할 때 더 이상 관리되지 않고 지원되지 않고 호환성 문제가 있을 수 있습니다.

Shift8 GEO IP Location

설명

Plugin that utilizes ip-api to get geolocation coordinates based on the end-users’ IP address. Read the blog post detailing how to interact with the plugin.

Want to see the plugin in action?

You can view three example sites where this plugin is live :

Features

  • Cookie session established with IP address and latitude / longitude coordinates of the end-user browsing the site

스크린샷

설치

This section describes how to install the plugin and get it working.

e.g.

  1. Upload the plugin files to the /wp-content/plugins/shif8-geoip directory, or install the plugin through the WordPress plugins screen directly.
  2. Activate the plugin through the ‘Plugins’ screen in WordPress
  3. Navigate to the plugin settings page and define your settings
  4. Once enabled, the system should trigger for every site visit.

FAQ

I tested it on myself and its not working for me!

Try clearing all cookies and re-visit the website. Then examine the cookies set by the website in your browser. The cookie name should be “shift8_geoip”.

How do I read and use the shift8_geoip cookie?

The plugin will set the cookie after successful geolocation and encrypt the value using OpenSSL with wp_salt(‘auth’) as a key. This means in order to access the geolocation data you have to write code (in functions.php for example) such as the following :

$cookie_data = explode('_', shift8_geoip_decrypt(wp_salt('auth'), $_COOKIE['shift8_geoip']));

The cookie data when decrypted will look like the following :

ipaddress_latitude_longitude

Which means you can use php’s explode function to convert it into an array as in the above example

How can I decrypt the cookie data? You encrypted it!

Well the data could be construed as somewhat sensitive and could be used maliciously to (for the most part) geographically place the end user. The decision to encrypt the cookie data was made to protect the user from the data falling into the wrong hands. In the plugin code, we are using OpenSSL to encrypt/decrypt the geo-location data. You can use the function below to decrypt the cookie data :

// Function to decrypt session data
function shift8_geoip_decrypt($key, $garble) {
    if (!empty($key) && !empty($garble)) {
        list($encrypted_data, $iv) = explode('::', base64_decode($garble), 2);
        return openssl_decrypt($encrypted_data, 'aes-256-cbc', $key, 0, $iv);
    } else {
        return false;
    }
}

So to actually use the above function, you could do the following :

shift8_geoip_decrypt(wp_salt('auth'), $_COOKIE['shift8_geoip']);

What is wp_salt?

You can read more about the wp_salt function by clicking here

후기

이 플러그인에 대한 평가가 없습니다.

기여자 & 개발자

“Shift8 GEO IP Location”(은)는 오픈 소스 소프트웨어입니다. 다음의 사람들이 이 플러그인에 기여하였습니다.

기여자

자국어로 “Shift8 GEO IP Location”(을)를 번역하세요.

개발에 관심이 있으십니까?

코드 탐색하기는, SVN 저장소를 확인하시거나, 개발 기록RSS로 구독하세요.

변경이력

1.0

  • Stable version created

1.01

  • Switched from stored session variable to encrypted cookie using wp_salt function. This is to easily allow development options to read and process the cookie data

1.02

  • Updated readme with helpful FAQ entries

1.03

  • Better error checking with geoip class and returned array

1.04

  • If no valid IP is found in the get_ip function, the last return value still needs to be chcecked if a valid IP, otherwise return false

1.05

  • Now including country code in geoip encrypted cookie

1.06

  • WordPress 5 compatibility

1.07

  • WordPress 5.5 compatibility

1.08

  • WordPress 6.2 compatibility