Preguntas frecuentes y traducción Magento 1.x

Estado
Cerrado para nuevas respuestas

OSdave

Super Moderador
Miembro del equipo
Aquí una lista de las preguntas más frecuentes de los usuarios de Magento.

MAGENTO CONNECT:
  • El magento connect es una herramienta muy potente (aunque algunos no confian demasiado en ella) de Magento para instalar las nuevas versiones y otras extensiones. Para que funcione, TODOS los directorios tienen que tener permisos de escritura-lectura-ejecución para todos los grupos -> 0777.
  • Otra cosa importante para que funcione es selccionar el tipo de extension que queremos instalar: Stable. Para configurar esto, en el admin, ir a Sistema->Magento Connect->Magento Connect Manager e introducir los datos del usuario que tenga los permisos suficientes. En la pestaña Settings seleccionamos Stable del desplegable de Prefered State, guardamos con el botón Save Settings.
  • Para poder descargar las ultimas versiones pegamos:
    Insertar CODE, HTML o PHP:
    magento-core/Mage_All_Latest
    en el campo Paste extension key to install:
IDIOMA:
  • Instalar el castellano:hay 2 opciones, a traves de magento connect o manualmente:
    • magento connect: en el admin, ir a Sistema->Magento Connect->Magento Connect Manager.
      En el campo Paste extension key to install: pegamos la clave del idioma que queremos instalar y le damos a install. La lista completa esta en la página de magentoconnect y aqui os dejo las claves para los diferentes packages de español que existen ahora mismo:
    • manualmente: a partir de la explicación de vertical, estos son los pasos:
      1. Dar al select del idioma que nos interesa de esta lista.
      2. Seleccionar el tema (normalmente el defautl) y la versión de traducción (la última suele ser la mejor) y dar a submit.
      3. Descargar el Full Package.
      4. Extraer el zip
      5. Añadir los 2 directorios de idioma respetando la estructura.
      6. En el admin, ir a Sistema->Configuración->General y en la pestaña Locale Options seleccionar el idioma en el desplegable Locale y guardar el cambio con el botón save Config arriba a la derecha de la pantalla.
      7. Ahora, abajo del todo podemos seleccionar el idioma para el admin.
    • Si no se ve directamente, ir a System->Cache Management, en el desplegable All Cache seleccionar Disable y guardar (save cache settings).
  • Cambiar Textos:
    Lo más fácil para editar textos en Magento es usar la herramienta de traducción online:
    Esta en sistema-->configuracion>avanzado>desarrollador, en la pestaña Translate Inline habilita SI para poder traducir en el frontend. Despues tienes que ir a manager cache y desactivar la opcion translation. Siguiente paso te vas a la tienda y podras ver que los textos estan rodeados de unas rayas y si acercas el ratón te saldrá un libro. Haciendo clic en el podras cambiar el nombre insitu. Refresca una vez echo eso y veras los cambios.
    Una vez terminado vuelve a poner todo otra vez como estaba (activa de nuevo la opcion translate y pon NO en translate inline.
    Si por alguna razón este sistema no funciona, hay que buscar el texto en los archivos .csv de los directorios locale y editar los ficheros.
Hilos relacionados con la traduccion: Traduccion Magento y Como traducir Magento

DISEÑO:
  • Ver las categorias en el menu:
    Si vamos a trabajar con varias tiendas/sitas de tiendas, es fundamental que cada una tenga su propia categoría raíz.
    Igualmente, si solo trabajamos con una, todas las categorias que creamos tienen que ser hijas de la categoría madre.
  • Trabajar con bloques:
    Aqui van los pasos para insertar un bloque estático en la home page.
    1. voy a CMS->Bloques Estaticos
    2. le doy a Agregar un nuevo bloque
    3. pongo lo que sea en el campo titulo, test en el campo Identificador y selecciono Habilitado en el desplegable Estado
      En el contenido pongo lo que quiero que aparezca, texto plano o código HTML
    4. le doy a guardar el bloque
    5. Ahora voy a CMS->Gestionar las paginas
    6. clic en la linea de home page
    7. en el campo contenido, añado la referencia al bloque que acabo de crear, queda asi:
      PHP:
      <h1>Home Page</h1>{{block type="cms/block" block_id="test" template="cms/content.phtml"}}
      nota: en block_id pongo lo que puse de identificador en el paso 3.
    8. le doy a guardar y ahora refrezco el home de la tienda y me aparece el contenido del bloque.
  • Tener cuidado en:
    • si tienes varias tiendas y/o vistas de tiendas de seleccionar la correcta
    • vaciar el cache
    • seleccionar el tema personalizado en el desplegable dentro de la pestaña diseño personalizado
  • Crear su propio tema:
    Para evitar que desaparezcan los cambios que hacemos en nuestro diseño a cada actualización de Magento es mejor crearse su propio tema.
    Citando a Xarlie
    , copiamos la carpeta /app/design/frontend/default/default/ y la pegamos con otro nombre, el que queramos pero mejor sin espacios ni caracteres raros (ni ñ ni tildes ni nada) y todo minuscula para respetar la forma de hacer de magento. Hacer lo mismo para el directorio /skin/frontend/default/default/, con el mismo nombre, y activarlo en Sistema->Configuración->(General)Diseño, la pestaña Temas, en el campo Por defeto ponemos el nombre de la carpeta que hemos creado
  • Productos en la home:
    ¿Como poner los productos que tu quieres en la home?
    1.- Creas una categoría y la dejas inactiva
    2.- Asocias los productos que quieres a esa categoría
    3.- Pones este código en la home dentro de la sección CMS

    {{block type="catalog/product_list" category_id="xxx" template="catalog/product/list.phtml"}

    Donde xxx corresponde con la categoría creada.

    Tendrás esos productos como una página más del catálogo, pero con los productos que tu quieras, además al estar "desactivada" no se muestra tal categoría en el menú :palomitas:
Si os ocurre más preguntas frecuentes que podrian estar aqui, mandadme un privado con la pregunta y si puede ser la respuesta también :desentendido:
 
Última edición por un moderador:

OSdave

Super Moderador
Miembro del equipo
CONFIGURACIÓN:
  • Configurar permisos para el magentoconnect:
    - Creamos el archivo "permisos.php" con este código:
    PHP:
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
        <title>Wolfcast CHMOD Scriptlet</title>
        <meta name="description" content="Wolfcast CHMOD Scriptlet Version 1.0">
        <meta name="author" content="Alexandre Valiquette (www.wolfcast.com)">
    
        <style type="text/css">
            div#logtext
            {
                width: 875px;
                height: 300px;
                overflow: auto;
                border: solid 1px black;
            }
            div#logtext p
            {
                white-space: nowrap;
                margin: 0px;
            }
            div#logtext p.success
            {
                color: #008000;
            }
            div#logtext p.error
            {
                color: #ff0000;
            }
        </style>
    </head>
    
    <body>
    
    <p>
        <big><b>Wolfcast CHMOD Scriptlet</b></big><br>
        <small>Version 1.0<br>
        <a href="http://www.wolfcast.com">www.wolfcast.com</a><br></small>
    </p>
    
    <!-- START - PHP generated output -->
    <?php
    
    //---------------------------------------------------------------------------
    
    //rChmod will recursively CHMOD $dir and it's content to $dirModes for directories and to $fileModes for files.
    //$dirModes and $fileModes must start with 0 (755 become 0755 for instance).
    //rChmod returns the number of failed CHMOD operations.
    function rChmod( $dir = "./", $dirModes = 0755, $fileModes = 0644 )
    {
        $retval = 0; //Number of failed CHMOD operations
        echo "<p style=\"margin-bottom: 0px\"><b>Log:</b></p>\r\n<div id=\"logtext\">\r\n";
    
        $d = new RecursiveDirectoryIterator( $dir );
        foreach ( new RecursiveIteratorIterator( $d, 1 ) as $path )
        {
            $chmodret = false;
    
            if ( $path->isDir() )
                $chmodret = chmod( $path, $dirModes );
            else
                if ( is_file( $path ) )
                    $chmodret = chmod( $path, $fileModes );
    
            if ($chmodret)
                $pclassname = "success";
            else
            {
                $pclassname = "error";
                ++$retval;
            }
    
            echo "<p class=\"" . $pclassname . "\">" . $path . "</p>\r\n";
        }
    
        echo "</div>\r\n";
        return $retval;
    }
    
    //---------------------------------------------------------------------------
    
    //Change the following line to fit your needs (path, directories CHMOD value, files CHMOD value). CHMOD values must start with 0.
    $nbfailed = rChmod( "/home/miweb/", 0755, 0644 );
    
    echo "<p style=\"margin-top: 0px\"><b>";
    if ($nbfailed > 0)
    {
        echo $nbfailed . " CHMOD operation(s) failed! See log above.";
    }
    else
        echo "No error encountered.";
    echo "</b></p>\r\n";
    
    ?>
    <!-- END - PHP generated output -->
    
    <p>
        <img src="http://www.w3.org/Icons/valid-html401" alt="Valid HTML 4.01 Strict" height="31" width="88">
    </p>
    
    </body>
    </html>
    - Modificamos la linea 83, poniendo la ruta de la carpeta que queremos modificar
    - Subimos el archivo a nuestra web
    - Ejecutamos el archivo desde el navegador

    Cuando termina, tenemos todas las carpetas y subcarpetas con el permiso 755 y todos los archivos con el permiso 644
  • Envios con el modulo "Tabla de tarifas": (ver post de Xarlie)
    En el admin vamos a Sistema->Configuración->Métodos de envío->Tabla de tarifas
    Activamos, rellenamos los campos y seleccionamos (por ejemplo) Precio vs Destino, el precio es para toda España, pero se puede separar por diferentes campos.

    Guardamos y ahora, en la parte superior izquierda, seleccionamos nuestra tienda de manera que nos aparecerá las opciones de CSV (exportar e importar).

    Exportamos el CSV. Si lo abrimos con OpenOffice Calc hay que seleccionar el juego de caracteres Unicode UTF-8, para que salgan bien los acentos (en la versión 3 es el ultimo de la lista)

    En la columna País ponemos el código (pe España es: ES). En región, si es la misma tarifa para todo el país ponemos un *. Podemos introducir precios según cada región, habrá que rellenar esta columna con sus nombre (nota: Para A Coruña hay que editar el campo code de la tabla directory_country_region (id: 130), cambiar "A Coruca" por "A Coruña").

    Importamos ahora el CSV (tablerates.csv) y ya lo tenemos activado.
  • Configurar el IVA: ver el tutorial
  • Upload de imagenes: 20 puntos para revisar, el 16 le funciona a mucha gente :guiño:
ERRORES:
  • {"error":true,"error_msg":"Invalid Form Key"} al gestionar las categorias:
    Os pongo como lo he corregido para que lo incluyais en algunas de las FAQ´s que estais preparando:

    En la ruta siguiente:
    /magento/app/design/adminhtml/default/default/template/page

    modificar el fichero head.phtml añadiendo la siguiente línea:

    Insertar CODE, HTML o PHP:
    var SKIN_URL = ‘<?php echo $this->getSkinUrl() ?>’;
    por tanto quedaría el fichero así:

    Insertar CODE, HTML o PHP:
    <title><?php echo htmlspecialchars(html_entity_decode($this->getTitle())) ?></title>
    <meta http-equiv="Content-Type" content="<?php echo $this->getContentType() ?>"/>
    
    <link rel="icon" href="<?php echo $this->getSkinUrl('favicon.ico') ?>" type="image/x-icon"/>
    <link rel="shortcut icon" href="<?php echo $this->getSkinUrl('favicon.ico') ?>" type="image/x-icon"/>
    
    <script type="text/javascript">
        var BLANK_URL = '<?php echo $this->getJsUrl() ?>blank.html';
        var BLANK_IMG = '<?php echo $this->getJsUrl() ?>spacer.gif';
        var BASE_URL = '<?php echo $this->getUrl('*') ?>';
        var SKIN_URL = '<?php echo $this->getSkinUrl() ?>';
        var FORM_KEY = '<?php echo $this->getFormKey() ?>';
        var SKIN_URL = ‘<?php echo $this->getSkinUrl() ?>’; 
    </script>
    
    <?php echo $this->getCssJsHtml() ?>
    
    <?php if($this->getCanLoadExtJs()): ?>
    <script type="text/javascript">
        Ext.BLANK_IMAGE_URL = BLANK_IMG;
        Ext.UpdateManager.defaults.loadScripts = false;
        Ext.UpdateManager.defaults.disableCaching = true;
    </script>
    <?php endif; ?>
    
    <script type="text/javascript">
        Fieldset.addToPrefix(<?php echo Mage::helper('adminhtml')->getCurrentUserId() ?>);
    </script>
    
    <?php echo $this->helper('core/js')->getTranslatorScript() ?>
    <?php echo $this->getChildHtml('calendar');
    y a seguir 'partiendo' el magento.

    Gracias de nuevo.
 
Última edición:

Xarlie

Super Moderador
Miembro del equipo
Pregunta: Me aparece un error con un número bastante largo, pero no me indica nada más... ¿donde puedo ver el error?

Respuesta: Los errores del tipo "The has been an error procesing your request, exception print is disabled by default for security reasons. Error log record number: xxxxxxxxxxxxxxx"
Se debe a que por defecto Magento en las versiones a partir de la 1.4 ocultan los errores por defecto. Antes se volcaba todo el error a la pantalla y esto podía suponer un posible fallo de seguridad al dar "demasiada información".
Por ese motivo aparece el error con un identificador que podemos ver en: /var/log con el número como nombre de fichero.
Si deseamos que vuelvan a aparecer los errores al menos en el entorno de pre-producción, basta con renombrar el archivo errors/local.xml.sample a errors/local.xml
 

OSdave

Super Moderador
Miembro del equipo
Última edición:

factoriadigital

Administrator
Miembro del equipo
Os paso nuevas preguntas frecuentes, por si os resultan útiles:

¿Qué zona horaria corresponde a España?

Indicar Berlín o Francia.


Cómo configurar métodos de envío

Sistema > Configuración > Métodos de envío > Tabla de tarifas

Activamos, rellenamos los campos y seleccionamos (al menos en mi caso) Precio vs Destino, el precio es para toda España, pero se puede separar por diferentes campos.

Guardamos y ahora, en la parte superior izquierda, seleccionamos nuestra tienda de manera que nos aparecerá las opciones de CSV (exportar e importar).

Exportamos el CSV. Al abrirlo con Excel me aparece mal (por los ; del código HTML) por lo que yo lo he editado a mano con mi editor de texto, al tratarse de un CSV no hay ningún problema.

He puesto las siguiente líneas:

"Pa&iacute;s","Regi&oacute;n/Estado","C&oacute;digo postal","Subtotal del pedido (and above)","Precio de env&iacute;o"

"ES","*","*","0","5"

"ES","*","*","100","0"

Como veis elijo para toda españa de 0 a 100€ unos gastos de envío de 5€ y cuando lo supera pues 0€.

Importamos ahora el CSV (tablerates.csv) y ya lo tenemos activado.



Cómo configurar códigos de promoción

1.- Vamos a Admin --> Promociones --> Reglas de precios de carrito de compras: Le damos en la pantalla superior izquierda al botón "agregar nueva regla". Nos saldrá una pantalla con tres casillas en la parte izquierda de la misma que son por orden "Información de la regla", "Condiciones" y "Acciones". Bien por defecto siempre aparece para rellenar la de "Información de la regla". Rellenamos los campos:
  • Nombre de la regla *: introducimos un nombre para definir la regla (Ejemplo: Descuento del 10%
  • Descripción: introducimos una descripción para poder identificar esa regla.(Ejemplo: Descuento del 10% en todos los productos HP).
  • Estado *: Seleccionamos del desplegable "Activo"
  • Grupos de cliente *: Seleccionaremos a que grupo de clientes queremos que se le aplique la regla (yo he escogido todos)
  • Código del cupón: introducimos el código (Ejemplo: 123456)
  • Usos por cupón: el número de usos que queremos que tenga ese cupón (Ejemplo: 1)
  • Usos por cliente: el número de usos que queremos que le den los clientes (Ejemplo: 1)
  • Desde fecha: introducir si se desea una fecha de inicio
  • A fecha: introducir si se desea una fecha de finalización
  • Prioridad: yo lo he dejado en "0"
  • Público en Feed RSS: puedes elegir SI o NO (yo lo he dejado en NO)

Ahora nos vamos a "Condiciones":

Te saldrá en parte central de la página "
Aplicar la regla sólo si se dan las siguientes condiciones (dejar en blanco para todos los productos). Yo lo he dejado tal como está, es decir, con la opción que viene por defecto "Si TODO de estas condiciones son VERDADERO :"

Ahora vamos a "Acciones":

Te saldrá en parte central de la página:
"Actualizar precios usando la siguiente información", y debajo los siguientes campos:
  • Aplicar: señala del desplegable lo que mas te interese (en el ejemplo que estoy poniendo como quiero un descuento de un 10% de descuento en todos los productos HP pues entonces eligo "Porcentaje de descuento del precio del producto" )
  • Importe del descuento *: introduzco el importe del descuento (10)
  • La cantidad máxima del descuento se aplica a: pongo "1"
  • Paso de cantidad de descuento (compra X): lo dejo vacio
  • Envío gratuito: pongo NO
  • Detener el procesamiento de las reglas: pongo que no (cuando quiera detener la regla vengo aqui y señalo que SI).

A continuación mas abajo introduzco los siguientes campos:

Si TODO de estas condiciones son VERDADERO :

* fabricante es HP

Le doy a "Guardar la regla" y listo.

Vamos a cualquier producto de HP que tengamos en la tienda y le damos a comprar. Una vez en el carro de la compra nos saldra la opción de introducir el código de descuento y lo introducimos (acuerdate que nosotros en el ejemplo pusimos "123456").Le damos a "canjear cupón" y veremos el descuento del 10% sobre el producto señalado en el carrito.


Otras preguntas y tutoriales populares en el foro:
 
Estado
Cerrado para nuevas respuestas
Arriba