Outra opção é usar a configuração auto_prepend do PHP . Isso fará com que todos os scripts manipulados pelo PHP executem o script antes da execução do script solicitado, mas após o .htaccess (se você estiver usando isso).
Essa abordagem combinada com algumas das outras sugestões (por exemplo, o uso do MaxMind para dados de localização geográfica e visualizações de lojas para regiões específicas) pode resultar em uma abordagem bastante limpa.
Se você estiver executando uma versão do Magento> = 1.4, o código de loja padrão pode ser configurado definindo o valor $ _SERVER ['MAGE_RUN_CODE'].
No arquivo .htaccess ou na configuração do apache, adicione o seguinte:
php_value auto_prepend_file /var/www/mystore/path/to/script.php
Na script.php
execução de qualquer lógica comercial necessária e defina o código de loja apropriado:
<?php
if (get_ip_location($_SERVER['REMOTE_ADDR']) == 'uk') {
$_SERVER['MAGE_RUN_CODE'] = 'store_code_uk';
} else {
$_SERVER['MAGE_RUN_CODE'] = 'store_code_us';
}
Uma coisa a notar é que isso se aplicará a todos os arquivos PHP solicitados, portanto, você deve ter isso em mente.