GEO location
This page contains information about ASA2 PHP functions you can use in your scripts to determine the user's origin and related info about Amazon stores. These functions get used by ASA2's I18N feature.
Asa2_Module_Premium_GeoIp::getUserCountryIsoCode()
Deprecated Asa2_Module_Premium_GeoIp::getUserCountryIsoCode()
Use Php Function Asa2 I18N Get User Country Iso Code instead.
asa2_i18n_get_user_country_iso_code()
Description
This method retrieves the user's ISO country code.
INFO
This method considers the Options I18N Demo User Id.
API documentation
Check the API documentation page for more details.
Code
<?php
$userCountryCode = asa2_i18n_get_user_country_iso_code();Parameters
This method has no parameters.
Result
Type: String
A country ISO code.
For example:
- "DE" for Germany
- "FR" for France
- "US" for United States ...
Examples
This example renders a collection based on the user's country of origin.
<?php
$userCountryCode = asa2_i18n_get_user_country_iso_code();
// check if $userCountryCode is a supported Amazon API country
// otherwise set it to the default store country, configed on |asa2|'s setup page
if (!asa2_is_supported_country_code($userCountryCode)) {
$userCountryCode = asa2_get_default_country_code();
}
// build the collection name
$collectionName = 'blu_ray_movies_' . $userCountryCode;
// display the collection if it exists with a custom template
if (asa2_collection_exists($collectionName)) {
echo asa2_render_collection($collectionName, array(
'tpl' => 'blu_ray_movies_collection'
));
}Asa2_Module_Premium_GeoIp::getStoreSafeUserCountryIsoCode()
Deprecated Asa2_Module_Premium_GeoIp::getStoreSafeUserCountryIsoCode()
Use Php Function Asa2 I18N Get Store Safe User Country Iso Code instead.
asa2_i18n_get_store_safe_user_country_iso_code()
Description
This method retrieves an ISO country code which is the best match for an Amazon store related to the user's origin. If the country is one of the countries supported by the Amazon PA API, it will be this country's ISO code. Otherwise the method considers the I18N Country Mapping. So if the user's is Andorra for example, the method will return "ES" for Spain. If even the i18n coutnry mapping will not provide a result, the method will return the default country configured on ASA2' setup page.
INFO
This method considers the Options I18N Demo User Id.
API documentation
Check the API documentation page for more details.
Code
<?php
$userCountryCode = asa2_i18n_get_store_safe_user_country_iso_code();Parameters
This method has no parameters.
Result
Type: String
A country ISO code. Only countries supported by the Amazon PA API will be returned.
For example:
- "DE" for Germany
- "FR" for France
- "US" for United States ...
Examples
This example renders a collection based on the user's country of origin. With this method you can skip some of the validation steps used in the example of method Asa2_Module_Premium_GeoIp::getUserCountryIsoCode() above.
<?php
$userCountryCode = asa2_i18n_get_store_safe_user_country_iso_code();
// build the collection name
$collectionName = 'blu_ray_movies_' . $userCountryCode;
// display the collection if it exists with a custom template
if (asa2_collection_exists($collectionName)) {
echo asa2_render_collection($collectionName, array(
'tpl' => 'blu_ray_movies_collection'
));
}Asa2_Module_Premium_GeoIp::getData()
Deprecated Asa2_Module_Premium_GeoIp::getData()
Use Php Function Asa2 I18N Get User Data instead.
asa2_i18n_get_user_data()
Description
This method retrieves detailed information about the user's origin country.
INFO
This method considers the Options I18N Demo User Id.
API documentation
Check the API documentation page for more details.
Code
<?php
$userData = asa2_i18n_get_user_data();Parameters
This method has no parameters.
Result
Type: Array
Example for origin Germany:
Array
(
[continent] => Array
(
[code] => EU
[geoname_id] => 6255148
[names] => Array
(
[de] => Europa
[en] => Europe
[es] => Europa
[fr] => Europe
[ja] => ヨーロッパ
[pt-BR] => Europa
[ru] => Европа
[zh-CN] => 欧洲
)
)
[country] => Array
(
[geoname_id] => 2921044
[iso_code] => DE
[names] => Array
(
[de] => Deutschland
[en] => Germany
[es] => Alemania
[fr] => Allemagne
[ja] => ドイツ連邦共和国
[pt-BR] => Alemanha
[ru] => Германия
[zh-CN] => 德国
)
)
[registered_country] => Array
(
[geoname_id] => 2921044
[iso_code] => DE
[names] => Array
(
[de] => Deutschland
[en] => Germany
[es] => Alemania
[fr] => Allemagne
[ja] => ドイツ連邦共和国
[pt-BR] => Alemanha
[ru] => Германия
[zh-CN] => 德国
)
)
)
