Regardez d' abord getBaseUrl()àMage.php
public static function getBaseUrl($type = Mage_Core_Model_Store::URL_TYPE_LINK, $secure = null)
{
return self::app()->getStore()->getBaseUrl($type, $secure);
}
En un mot simple, nous pouvons dire:
Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB)indiqué Votre Magento Site Urlde this url Magento is running it System.
Et autre mot, on peut dire que Mage::getBaseUrl() give the url which is linking your magento internal page urls That MVC page
Mage :: getBaseUrl (Mage_Core_Model_Store :: URL_TYPE_WEB):
Valeur définie sur : De Admin>System>Configuration>WebSite>Secure/Unsecure -> Base url
Mage :: getBaseUrl ():
Valeur définie sur : De Admin>System>Configuration>WebSite>Secure/Unsecure -> Base Link url
Différence principale montrant:
Chaque fois que nous sommes autorisés à Use Web Server Rewrites = nopartir de admin>system>Web>Search Engines Optimization Rewrites
Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB) donner la valeur de http://youdomain/
mais Mage::getBaseUrl()donner une valeur http://youdomain/index.php/qui donne réellement la valeur de Mage_Core_Model_Store::URL_TYPE_LINK
quand vous hit http://youdomain/qui est appelez Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB) url Mais ce times you can see all pagelien de votre site is
starting with http://youdomain/index.php/ cela signifie qu'il a falluMage::getBaseUrl()/ Mage::getBaseUrl($type = Mage_Core_Model_Store::URL_TYPE_LINK, $secure = null)
Exemple:
Si vous avez créé un dossier, amit at Magento root dir and there you have put a file test.jsvous voulez appeler ce fichier chez magento, vous pouvez utiliser ce code
<?php echo Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB).'amit/test.js'; ?>
et ça donne alors l'url
www.yourdomain/amit/test.js
Si vous n'utilisez que Mage::getBaseUrl()ce qui vous donne,
www.yourdomain/index.php/amit/test.jscela signifie que test.js ne peut pas être accessible (lorsque la réactivation est désactivée)
Mais vous devez créer un nouveau contrôleur et une nouvelle action, vous pouvez alors utiliser
Mage::getBaseUrl().'yourmodulerouter/yourcontroller/youraction'
it show url like `http://yourdomain/index.php/yourmodulerouter/yourcontroller/youraction`
ou donner http://yourdomain/yourmodulerouter/yourcontroller/youraction(lorsque la réécriture est activée)
Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB)fonctionnera-t-il mieux lorsque les réécritures seront activées?