Nous exécutons une installation Magento sur plusieurs domaines et utilisons un script pour extraire des informations de la base de données pour aider les utilisateurs à filtrer les produits. Dans notre codage nous avons la fonction $_SERVER
appelant le magasin qui semble être le magasin 1 (qui est sur le domaine 1), je me demandais ce que je devrais changer pour aller chercher les informations du magasin 2 (qui est sur le domaine 2).Magento - Récupère le domaine actuel et pas le domaine de base
Répondre
echo Mage::getBaseUrl();
retournera l'URL du magasin uniquement, c'est-à-dire abc.com/store1.
Pour obtenir l'URL du magasin principal (nom de domaine), utilisez le code suivant
echo Mage::getBaseUrl (Mage_Core_Model_Store::URL_TYPE_WEB);
OU
vous pouvez obtenir le domaine actuel par le $_SERVER['HTTP_HOST'];
Tout d'abord, $ _SERVER n'est pas une fonction, mais une variable prédéfinie (tableau associatif). Une fois que vous aurez accédé au site depuis le domaine 2, $ _SERVER ['SERVER_NAME'] vous donnera la bonne chose. Tout dépend du domaine auquel vous accédez au serveur. J'utilise actuellement ceci pour un site Web de revendeur que j'ai qui a beaucoup de domaines parqués.
Espérons que cela aide.
À la votre!
Si vous avez plusieurs domaines alors probablement que vous avez plusieurs magasins. Plutôt que de lire le domaine pour déterminer quel magasin vous pouvez juste lire le magasin directement:
$store = Mage::app()->getStore()
$store
a alors toutes les informations dont vous avez besoin. Par exemple, pour récupérer le « code de magasin » que vous définissez dans l'utilisation d'administration,
$store->getCode()
En plus d'être orienté objet et donc plus facile à écrire, vous bénéficiez des domaines étant entièrement configurable par admin, il ne sera pas nécessaire de réécrire votre code chaque fois qu'il y a un changement.
Sachez que $ _SERVER [ « SERVER_NAME »] ne sont pas disponibles sur les tâches ordonnanceur Magento (cron) (sauf si vous mettez un peu d'effort là-dessus) - vient de réaliser aujourd'hui
Parlez-vous de l'obtenir url de base du magasin ? –
Voulez-vous dire que vous voulez utiliser le domaine pour déterminer à quel magasin vous allez accéder? – Chris