Как получить безопасный URL магазина в Magento? - PullRequest
28 голосов
/ 23 ноября 2010

У меня есть форма в Magento, которая отображается через небезопасный URL (http), но мне нужно отправить ее на защищенный URL (https).

Я отображаю URL, который я сейчас использую, следующий код:

Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB)

Я предполагаю, что мне нужно изменить URL_TYPE_WEB на что-то другое. Кто-нибудь знает, что это за что-то еще?

Ответы [ 6 ]

48 голосов
/ 23 ноября 2010

Вы пробовали это?

Mage::getUrl('',array('_secure'=>true))

Я думаю, что это даст вам базовый безопасный URL, я полагаю.

Mage::getUrl('customer/account/login',array('_secure'=>true))

Получит вас на страницу входа.Другими словами,

Mage::getUrl('module/controller/action',array('_secure'=>true))

приведет вас к любой странице, которую вы хотите, просто замените 'module / controller / action' на соответствующую комбинацию.

Edit - Fixed Typos

11 голосов
/ 08 декабря 2014

http://blog.geekslikeshinythings.com/2014/12/magento-force-secure-urls-https-on-all.html

это работает в Mageno 1.9.1, используйте файл вашего приложения / etc / config.xml

<?xml version="1.0"?>
<config>
  <frontend>
    <secure_url>
      <all>/</all>
    </secure_url>
  </frontend>
</config>

Если пользователь использует https, это должно заставить все URLпереписать (создан как) в https.

6 голосов
/ 10 сентября 2012

Используйте:

    Mage::getStoreConfig(Mage_Core_Model_Store::XML_PATH_SECURE_BASE_URL);

, чтобы прочитать значение конфигурации внутри magento, которое было установлено внутри admin.

3 голосов
/ 24 июня 2014

это сработало для меня

echo Mage::getUrl('customer/account/loginPost',array('_secure'=>true));

Например:

если вы просматриваете с http , то

echo Mage::getUrl('customer/account/loginPost',array('_secure'=>true));
// http://dominio.com/customer/account/loginPost

, если вы просматриваете с https , тогда

echo Mage::getUrl('customer/account/loginPost',array('_secure'=>true));
// https://dominio.com/customer/account/loginPost
1 голос
/ 16 июля 2013

Вы можете сделать это в коде, а также из XML.

Например, если вы хотите установить https для страницы извлечения, вам нужно добавить приведенный ниже код в ваш файл config.xml:

<code>
        <secure_url>
                <checkout_onepage>/checkout/onepage</checkout_onepage>
                <checkout_multishipping>/checkout/multishipping</checkout_multishipping>
        </secure_url>
</code>

Magento имеет функцию по умолчанию для https для проверки, так что вы можете сделать то же самое для других страниц, как для страницы клиента:

<code>
        <secure_url>
                <customer>/customer/</customer>
        </secure_url>
</code>

Надеюсь, это тебе поможет.

0 голосов
/ 07 марта 2016

Пробовал это работает для меня.

Mage :: getUrl ('', array ('_ secure' => true))

Посленаконец-то добавил этот код, как показано ниже

IWD.ProductVideoView.urlGetVideo = "<?php echo Mage::getUrl('iwd_productvideo/player/getvideo/',array('_secure'=>true)); ?>?isAjax=true";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...