Como obter o URL base seguro sem index.php


10

Eu quero ficar base-secure-urlsem index.php.

Eu ativei index.phppor algum motivo. Agora eu tenho um arquivo PHP no diretório raiz do Magento e quero chamar páginas seguras do Magento a partir deste arquivo PHP.

Nota: tenho várias lojas no meu site

Por favor, forneça mais idéias sobre isso.


você pode me dizer o caminho para isso? Mage :: getStoreConfig (Mage_Core_Model_Url :: XML_PATH_SECURE_URL); Desculpe. Eu sou novo no magento
Sandy

Se você tiver uma nova pergunta, faça-o clicando no botão Fazer pergunta . Inclua um link para esta pergunta se ela ajudar a fornecer contexto. - Do comentário
Jai

Isso não fornece uma resposta para a pergunta. Depois de ter reputação suficiente, você poderá comentar qualquer postagem ; em vez disso, forneça respostas que não exijam esclarecimentos do solicitante . - Da avaliação
Rohan Hapani

Respostas:


15
Mage::getStoreConfig(Mage_Core_Model_Url::XML_PATH_SECURE_URL);

Menciono isso porque ninguém mais o fez, mas prefiro usar Mage::getUrlor Mage::getBaseUrl. Os dois detectam automaticamente se a página já está segura quando você não a especifica.


é trabalhar em múltiplas loja com diferentes nome de domínio
Amit Bera

Você pode especificar uma loja com o segundo parâmetro de getStoreConfig. Ele aceita um ID, um código (conforme definido em admin) ou um Mage_Core_Model_Storeobjeto, basta usar o que você tem disponível no seu código.
clockworkgeek

2
Substituir 'Mago :: getUrl' com 'Mago :: getBaseURL' fez o truque para mim
Ronny

11

como @Aphroz disse, você pode usar

Mage::getBaseUrl( Mage_Core_Model_Store::URL_TYPE_WEB, true );

para recuperar o URL base seguro. Isso retorna um URL seguro, porque o especificamos por meio do segundo parâmetro true. Aqui o primeiro parâmetro é especificado como Mage_Core_Model_Store::URL_TYPE_WEB. Isso significa que o método retorna o valor correspondente a este campo de configuração do sistema web/secure/base_url. Este campo é o valor que especificamos em

 System  >  Configuration  > Web  >  Secure url

portanto, se esse campo não estiver sendo usado index.phpjunto com o URL base, o método não fornecerá index.php junto com o URL. Se for o caso index.php, ele retornará o mesmo. Portanto, para garantir que index.php não esteja lá, você pode usar a str_replacefunção


Eu sou o único que acha que isso é um bug no Magento? O sistema deve saber quando estou em um URL seguro e, em seguida, usar como padrão todo o seu Mage :: getBaseUrl () para garantir.
Gerfried 23/02

5

Abaixo da lista de acesso ao URL

Obter URLs em páginas CMS ou blocos estáticos

  1. URL base:

    {{base url=''}}
  2. URL da loja:

    {{store url='test.html'}}

    também armazenar apenas URL

    {{store url=""}}
  3. URL da mídia:

    obter apenas o URL da mídia

    {{media url=''}}

    se você receber algum caminho de pasta

    {{media url='imagefolder/imagename.jpg'}}
  4. URL da capa:

    {skin url='images/imagename.jpg'}}

    obter apenas o URL da capa

    {skin url=''}}


Obter URLs em arquivos PHP (incluindo modelos / PHTML)

  1. Obtenha o URL base no magento:

    $baseurl = Mage::getBaseUrl();

    Obtenha o URL base sem index.php

    Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB); 
    
    // output: http://example.com/
  2. URL atual

    $currentUrl = Mage::helper('core/url')->getCurrentUrl();

    ou

    $currentUrl = Mage::getUrl('*/*/*', array('_current' => true));

    ou

    if (!in_array(Mage::app()->getFrontController()->getAction()->getFullActionName(), array('cms_index_noRoute', 'cms_index_defaultNoRoute'))) 
    {
        $currentUrl = Mage::helper('core/url')->getCurrentUrl();
    }
  3. URL da capa:

    $skinUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_SKIN);

    URL inseguro da capa:

    $skinUrl = $this->getSkinUrl('images/imagename.jpg');

    URL seguro da capa:

    $this->getSkinUrl('images/imagename.gif', array('_secure'=>true));
  4. URL de mídia

    $mediaUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA);

    ou

    $mediaUrl = Mage::getBaseUrl('media');
  5. Obter URL do Js:

    $jsUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_JS);

    ou

    $jsUrl = Mage::getBaseUrl('js');
  6. obter URL da loja:

    $storeUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB);
  7. URL da página inicial:

    $homeUrl= Mage::helper('core/url')->getHomeUrl();
  8. Obter caminhos de diretório

    Mage::getBaseDir('design') // Get design directory path
    Mage::getBaseDir('code')   // Gives code directory file path
    Mage::getBaseDir('lib')    // Gives lib directory file path
    Mage::getBaseDir('skin')   // Gives skin directory file path
    Mage::getBaseDir('var')    // Gives var directory file path
    Mage::getBaseDir('cache')  // Gives cache directory file path
    Mage::getBaseDir('log')    // Gives log directory file path
  9. Criar URL do módulo:

    Mage::getUrl('module/controller/action');

Obtenha mais detalhes sobre obter URLs


3

Isso deve fazer o truque:

Mage::getBaseUrl('link',true);

Curto e grosso.


Essa é a abordagem mais sólida, uma vez que vai incluir qualquer store_code a url, se esse for o caso
Raul Sanchez

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.