· Publicado por Sergio Baixauli en: Magento
Etiquetas: magento, multiples tiendas, tiendas con magento - Estructura URL
- Alojamiento compartido
- Añadir una nueva tienda en Magento
- Metodo de dominio aparcado
- Añadir una tienda a un dominio
- Método de subdominio
- Tienda en subdirectorio
- Administración de varias tiendas
Estructura URL
La estructura de tu dominio es algo muy personal. Puedes tener por ejemplo dos tiendas que se ejecuten en el mismo dominio y que a su vez comparten la misma instancia de Magento. Por ejemplo:- http://tienda.com/zapatos
- http://tienda.com/camisetas
Estas tiendas podrían configurarse sin problemas en dos dominios por separado y seguir manteniendo la misma instancia de Magento:
- http://zapatos.com
- http://camisetas.com
Otra forma de hacerlo podría ser una pagina principal que distribuye las tiendas en dos:
- http://tienda.com
- http://zapatos.tienda.com
- http://camisetas.tienda.com
Independientemente de la estrucutura elegida lo que se pretende es tener la misma base de código para todas las tiendas y un mismo administrador desde el que gestionaremos todo el catálogo, intentando que la gestión se lo más cómoda posible. Muchos de vosotros os preguntaréis qué necesidad tenemos de hacer esto, pero cuando llevas muchas tiendas y cada una de ellas tiene sus peculiaridades os será muy útil (o por lo menos eso espero).
Alojamiento compartido.
El problems que nos encontramos en este tipo de alojamientos es que si queremos utilizar certificados SSL independientes para cada tienda (es decir, no queremos compartirlos entre las tiendas durante el proceso de compra), por ejemplo: los usuarios de zapatos.com serían redirigidos al camistas.com para terminar el proceso de compra y poder usar así el certificado SSL, no podremos optar por esta opción. Esto ocurre por algo muy sencillo, los certificados SSL requieren direcciones IP dedicadas. Y en un alojamiento compartido esto lo tenemos complicadoAñadir una nueva tienda en Magento
Lo primero que tenemos que hacer es añadir una nueva tienda para poder empezar con nuestras pruebas. (Asumimos que ya tienes una versión de Magento instalada...) por ejemplo en zapatos.com. Ahora ajustaremos los siguientes parametros: 1.- Nos autenticamos en el admin 2.- Nos vamos a Catálogo -> Administrar categorías 3.- Pulsamos en Añadir categoría padre 4.- En la parte de la derecha podemos poner zapatos.com y activamos la categoría 5.- Ahora vamos a la solapa de Configuración y seleccionamos Administrar tiendas 6.- Creamos un nuevo Website (Create Website), por ejemplo camisetas.com. En el código ponemos zapatos (después usaremos este código) 7.- Guardamos y creamos una Tienda (Create Store) 8.- Seleccionamos del desplegable camisetas.com. Para el nombre seleccionaremos "Main Store" y para el root Category elegiremos camisetas.com del desplegable. 9.- Guardamos y creamos por último una vista de tienda (Create store view). 10.- Para la vista seleccionaremos "Main store" del desplegable, nos aseguramos que es para zapatos.com. Para el nombre podemos poner spanish y para el código camisetas_es. El estado será "activo". 11.- Guardamos la vista (en realidad los pasos parecen un poco confusos, pero es pura lógica). Creamos un website, luego una tienda y luego una vista para la tienda. 12- Ahora desde el administrador pulsamos Configuración 13.- Cambiamos el ámbito de la tienda desde la parte superior izquierda de Default config a Camisetas.com 14.- Seleccionamos Web en el sidebar. En las opciones Unsecure y Secure. Desmarcar Use Default en Base URL e introducir http://camisetas.com/ 15. Guardamos. Ahora que hemos configurado nuestra segunda tienda tenemos que elegir uno de los métodos que vamos a explicar para la URL.Dominio aparcado
Para utilizar este método vamos a suponer que disponemos de dos dominios comprados (zapatos.com y camisetas.com). El dominio principal será zapatos.com y la instancia de Magento estará instalada ahí. Así que lo vamos a hacer es configurar el dominio secundario (camisetas.com) para que tire del primero. Los dos dominios estarán activos y en uno de ellos tendremos la instalación de Magento. Editamos el fichero index.php y buscamos la siguiente línea:- Mage::run();
Ahora la sustituimos por estas:
- switch($_SERVER['HTTP_HOST']) {
- // zapatos.com
- case 'zapatos.com':
- case 'www.zapatos.com':
- Mage::run('zapatos', 'website');
- break;
- // camisetas.com (default store)
- default:
- Mage::run();
- break;
- }
Lo importante no es el código, sino la idea de que configurando el index.php y haciendo un pequeño switch podemos controlar y rediccionar tantas instancias y tiendas de Magento como queramos (en teoría).
Añadir una tienda a un dominio. Addon domain
Este método es muy parecido al anterior. Dos tiendas, con una única instalación de Magento pero que operan de manera distinta. Imaginemos que además de la tienda, en uno de los dominios queremos tener un Blog. Con la opción anterior esto no es posible ya que directamente tenemos una redireción hecha desde el mismo cPanel. Para usar esta opción entraremos en nuestro cpanel y pulsaremos "Addon domains". Para los que no sepan que es un Addon domain copio-pego "te permite añadir otro domi nio a tu plan de alojamiento y ver la misma web pero desde otro dominio diferente, para esto el plan de alojamiento que has contratado debe permitir añadir más dominios, esto tiene otras ventajas como es la posiblidad de tener correos o subdominios bajo ese dominio. Lo único que debes hacer es agregarlo en el panel de control y en el panel de gestión del dominio poner las dns del servidor en donde está tu plan de alojamiento (las mismas que el dominio principal)". La idea es compartir Magento mediante enlaces simbólicos y cada uno con sus carpetas de contenido adicional 1.- Suponemos que ya tenemos la primera instalación de la tienda en Magento en uno de nuestros dominios. 2.- El segundo dominio donde vamos a hacer la "instalación" es zapatos.com 3.- Lo creamos desde nuestro cPanel (tal y como hemos comentado antes) y entramos via ssh a configurarlos. Deberíamos estar en la carpeta cd zapatos.com/ 4.- Durante la creación del dominio zapatos.com, el cpanel nos dió a elegir el Document Root, que por defecto es public_html, hay que quitarlo y dejar el que nos pone por defecto (zapatos.com). No me voy a extender mucho en estos pasos. 5.- Copiamos el index.php y el .htaccess de la instalación que ya tenemos funcionando- cp ../public_html/index.php ../public_html/.htaccess .
6.- Editamos el index.php que acabamos de copiar y cambiamos esto:
- Mage::run();
por esto otro
- Mage::run('zapatos', 'website'); //zapatos es el nombre del website creado en Magento
7.- Y por último creamos los enlaces simbólicos de aquellos directorios que nos harán falta:
- ln -s ../public_html/404/ ./404
- ln -s ../public_html/app/ ./app
- ln -s ../public_html/includes/ ./includes
- ln -s ../public_html/js/ ./js
- ln -s ../public_html/media/ ./media
- ln -s ../public_html/report/ ./report
- ln -s ../public_html/skin/ ./skin
- ln -s ../public_html/var/ ./var
Método de subdominio
Para este método la idea es que las tiendas nos queden de esta forma:- http://tienda.com/zapatos
- htto://tienda.com/camisetas
1.- Entramos via SSH a nuestro dominio y creamos la carpeta para una de las tiendas
- cd public_html
- mkdir zapatos/
- cd zapatos/
2.- Copiamos los ficheros de la tienda que ya tenemos instalada
- cp ../public_html/index.php ../public_html/.htaccess .
3.- Editamos el index.php y cambiamos esto:
- $mageFilename = 'app/Mage.php';
por esto otro
- $mageFilename = '../public_html/app/Mage.php';
luego cambiar esto:
- Mage::run();
por esto otro
- Mage::run('zapatos', 'website');
Administración de varias tiendas
Es importante recordar que en la administración de múltiples tiendas en magento usaremos siempre el mismo admin y habrá que tener especial cuidado cuando cambiemos el alcance de nuestras acciones (para todas las tiendas, para una sola, para cada vista, etc.). Recodar que para cada opción de configuración de la tienda pordemos usar los valores por defecto o aplicar unos en concreto para esa tienda/vista. Toda esta información la he sacado de un post (muy bueno por cierto) que encontré en el Blog de Crucial. He cambiado / añadido algunas cosas que me han parecido interesantes para completarlo.Compartir:








Loading... 


Twitter
Daniel #
12 de Febrero de 2010 a las 12:05