¿Cómo obtener información de la tienda en Magento?

4 minutos de lectura

avatar de usuario
Chirag

En Magento, ¿cómo puedo obtener información de la tienda activa, como el nombre de la tienda, el número de línea, etc.?

avatar de usuario
Mukesh Chapagán

Obtener datos de la tienda

Mage::app()->getStore();

Identificación de la tienda

Mage::app()->getStore()->getStoreId();

Código de tienda

Mage::app()->getStore()->getCode();

Identificación del sitio web

Mage::app()->getStore()->getWebsiteId();

Nombre de la tienda

Mage::app()->getStore()->getName();

Nombre de la interfaz de la tienda (ver la respuesta de @Ben)

Mage::app()->getStore()->getFrontendName();

Está activo

Mage::app()->getStore()->getIsActive();

URL de la página de inicio de la tienda

Mage::app()->getStore()->getHomeUrl();

URL de la página actual de la tienda

Mage::app()->getStore()->getCurrentUrl();

Todas estas funciones se pueden encontrar en la clase Mage_Core_Model_Store

Expediente: app/code/core/Mage/Core/Modelo/Store.php

  • cómo podemos obtener el nombre de la tienda principal de adminhtml.mientras estoy usando Mago::aplicación()->getStore()->getName() usando esto estoy obteniendo ‘administrador’.

    – Gowri

    17/01/2012 a las 13:00

  • @gowri, el área de administración cuenta como una tienda separada (con id 0), si tiene un pedido o algo con lo que trabajar, puede hacerlo, por ejemplo: $storeId = $order->getStoreId(); $tienda = Mage::getModel(‘core/store’)->load($storeId); $nombre = $tienda->getWebsite()->getName();

    – jsims281

    3 de septiembre de 2012 a las 10:10

  • ¿Qué tan caro es una llamada a Mage::app()->getStore()? Supongo que la tienda es uno de los primeros globales en ser instanciados de todos modos, por lo que probablemente sería muy barato. ¿Sí?

    -Buttle Butkus

    4 de noviembre de 2015 a las 20:05

  • Cuando llamo a Mage::app()->getStore()->getName(); devuelve “Inglés” Magento 1.9.2.3 utilizando los datos de la tienda de demostración.

    – phpgurú

    22/03/2016 a las 20:13

  • Tengo notas de visualización en la página PDP como, Entrega: 5 a 10 días, ¿cómo puedo cambiar la Entrega: 10 a 30 días según la tienda actual? Aquí tengo 2 tiendas.

    – Gema

    18 de junio de 2018 a las 9:38

avatar de usuario
Joe Mastey

Para obtener información sobre la tienda actual desde cualquier lugar de Magento, utilice:

<?php
$store = Mage::app()->getStore();

Esto le dará un objeto Mage_Core_Model_Store, que tiene parte de la información que necesita:

<?php
$name = $store->getName();

En cuanto a su otra pregunta sobre el número de línea, no estoy seguro de lo que quiere decir. Si quiere saber en qué número de línea del código se encuentra (para el manejo de errores, por ejemplo), intente:

<?php
$line      = __LINE__;
$file      = __FILE__;
$class     = __CLASS__;
$method    = __METHOD__;
$namespace = __NAMESPACE__;

  • ¿Cómo se obtienen todos los códigos de tienda activos? lo intenté Mage::app()->getWebsite()->getStores(); pero solo devuelve la tienda actual.

    – Miguel

    4 de febrero de 2012 a las 12:01

  • Tengo notas de visualización en la página PDP como, Entrega: 5 a 10 días, ¿cómo puedo cambiar la Entrega: 10 a 30 días según la tienda actual? Aquí tengo 2 tiendas.

    – Gema

    18 de junio de 2018 a las 9:37


Grandes respuestas aquí. Si está buscando la vista predeterminada “Nombre de la tienda” establecida en la configuración de Magento:

Mage::app()->getStore()->getFrontendName()

  • Esta debería ser la respuesta aceptada. Cuando llamo a Mage::app()->getStore()->getName(); devuelve “Inglés” Magento 1.9.2.3 utilizando los datos de la tienda de demostración.

    – phpgurú

    22/03/2016 a las 20:35

avatar de usuario
MediaVince

Solo por el bien de la información, con respecto a mi necesidad … La respuesta que estaba buscando aquí era:

Mage::app()->getStore()->getGroup()->getName()

Eso se menciona en la página de administración, donde se pueden administrar varias tiendas… admin/system_store, quería recuperar el título del grupo de tiendas…

En Magento 1.9.4.0 y tal vez todas las versiones en uso 1.x:

Mage::getStoreConfig(‘general/store_information/dirección’);

y los siguientes parámetros, depende de lo que quieras obtener:

  • general/información_de_la_tienda/nombre
  • general/información_de_la_tienda/teléfono
  • general/información_tienda/país_comerciante
  • general/información_de_la_tienda/dirección
  • general/store_information/merchant_ivat_number

avatar de usuario
4b0

Si está trabajando en Frontend, entonces use:

$currentStore=Mage::app()->getStore(); 

Si tiene una identificación de tienda, use

$store=Mage::getmodel('core/store')->load($storeId);

Identificación de la tienda de Magento : Mage::app()->getStore()->getStoreId();

Nombre de la tienda Magento : Mage::app()->getStore()->getName();

¿Ha sido útil esta solución?

Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Configurar y más información
Privacidad