mooore/magento2-module-geoip

Magento 2 module providing basic Geo IP detection.

Installs: 21 594

Dependents: 0

Suggesters: 0

Security: 0

Stars: 5

Watchers: 5

Forks: 1

Open Issues: 0

Type:magento2-module

1.1.1 2021-06-10 09:04 UTC

This package is auto-updated.

Last update: 2024-04-10 15:28:30 UTC


README

Magento 2 module providing basic Geo IP detection.

API

REST

$ curl https://<magento site>/rest/V1/countryCode
"NL"                                                                                                                                                                                                                        

PHP

<?php

namespace Acme\Component;

use Mooore\GeoIp\Api\CountryCodeInterface;

class SomeComponent
{
    /**
     * @var \Mooore\GeoIp\Api\CountryCodeInterface
     */
    private $countryCode;

    public function __construct(CountryCodeInterface $countryCode)
    {
        $this->countryCode = $countryCode;
    }

    public function execute(): void
    {
        //output: Country is NL
        echo sprintf('Country is %s', $this->countryCode->get());
    }
}

Installation

composer require mooore/magento2-module-geoip
bin/magento setup:upgrade

Configuration

This module has a fallback reliance on several inputs:

  1. GeoIP variable GEOIP_COUNTRY_CODE.
  2. GeoIP2 variable COUNTRY_CODE.
  3. Cloudflare header CF-IPCountry.
  4. IpInfo.io API.

To be able to fall back on IpInfo.io, follow these steps:

  1. Have an account at ipinfo.io (usage is free for 50k requests per month).
  2. Have the ipinfo.io API key.
  3. Configure it in the Magento 2 backend (Advanced -> System -> GeoIP): Configuration