How can I show different content to website visitors from a specific country in PHP?

后端 未结 5 545
闹比i
闹比i 2020-12-20 09:49

On my Wordpress blog, I want to show additional content to people from Finland on all pages. Very much like the Feedback button at the left edge of the screen on printfriend

相关标签:
5条回答
  • 2020-12-20 10:06

    My suggestion would be to use the PHP GeoIP functions to determine the users location based on IP, and serve appropriate content based on that.

    More information on GeoIP can be found here.

    0 讨论(0)
  • 2020-12-20 10:21

    In addition to the other answers (GeoIP), you may try to analyze the Accept-Language header field and serve the content to users that accept finnish language.

    You can modify the following function to parse Accept-Language header in PHP:

    • How to select content type from HTTP Accept header in PHP
    0 讨论(0)
  • 2020-12-20 10:24

    As yet another alternative, you can download one of the SQL databases here and use it to resolve an IP address to a location:

    http://www.ipinfodb.com/ip_database.php

    Also, they offer an API that does the same thing, but this may not be optimal if you're getting a lot of traffic.

    0 讨论(0)
  • 2020-12-20 10:27

    Here is a pointer to MaxMind GeoIP Country Database. http://www.maxmind.com/app/country. It's about $50.00 and comes with a PHP library for accessing the information.

    0 讨论(0)
  • 2020-12-20 10:30

    You have a few bets you can try:

    • convert the IP to a geographic location (PEAR: Net_GeoIP)
    • check the requested language that is used in the browser, and use that. Problem is, a lot of people just have 'english' setup, so this won't always work.

    Hope this helps!

    0 讨论(0)
提交回复
热议问题