Para actualizar una plataforma Magento 1.X en producción, seguiremos los siguientes pasos:

  1. Descargaremos el archivo desde la página de Magento mediante wget, o nos los descargamos en local y subimos el archivo por FTP o SCP.
  2. Descomprimimos el archivo
    tar -zxvf magento-1.9.X.tar.gz
    o
    unzip magento-1.9.X.zip,
    donde X es la versión que nos hemos descargado
  3. Como se habrá descomprimido en un directorio llamado magento, entramos en él:
    cd magento
  4. Y copiamos todos los archivos descomprimidos sobre los actuales, machacando los anteriores:
    cp -rf * ../
  5. Salimos del directorio magento y lo borramos:
    cd ..
    rm -rf magento
  6. Y nos cercioramos que los permisos y propietarios de directorios y archivos son los correctos:
    find -type f -name ‘*.*’ -exec chmod 644 {} \;
    find -type d -exec chmod 755 {} \;
    chown -R username:groupname *, donde username será www-data o el usuario propietario en cada caso, y lo mismo para groupname

Al crear una regla o promoción de carrito en el que queráis hacer un descuento a un grupo de clientes, podéis encontraros con el problema de que el cliente se loga, pero el carrito sigue mostrando los precios sin el descuento por ser de un grupo determinado con promoción y descuento. Esto es debido a que habéis marcado a Sí la opción “Habilitar asignación automática al grupo de clientes”. Debéis marcarla a No si vais a tener varios grupos de clientes con descuentos y promociones según su grupo, o en la página de checkout se asignará al cliente al grupo General, aunque esté logado correctamente.

La opción “Habilitar asignación automática al grupo de clientes” está en Sistema->Configuración->Clientes->Configuración de cliente.

Moodle 3.3 ha traido un nuevo elemento de vista general de curso, muy aplaudido por la comunidad, pero con un pequeño contratiempo, y es que los cursos por páginas están definidos por una constante y no es algo que pueda configurarse.

Si necesitamos modificarlo, tendremos que entrar en el código y modificar la constante COURSES_PER_PAGE de la clase courses_view que está en el archivo courses_view.php que está en la ruta blocks/myoverview/classes/output/courses_view.php

A veces nos ha ocurrido que aunque la plataforma Magento (versión 1.9) funciona perfectamente y las URLs van bien, cuando hemos querido instalar desde el Downlader una extensión con la URL del Marketplace de Magento, nos ha dado el error:

Leer más

Cuando la función on_sent_ok os de el error de ajuste obsoleto (o is Deprecated), habrá que cambiar la función que tenemos por código JavaScript.

En nuestro caso, el cliente tenía una redirección a una URL, con lo que cambiamos el código a
[crayon-5ae23cf830b5f454250542/]
 

 

En este caso, tenemos un cliente que quiere que sólo los atributos con valor a “Sí” (o TRUE, o “Verdadero”, como queráis). ¿Cómo lo conseguimos?
Nos iremos al archivo attribute.phtml del paquete del tema que estamos utilizando, cuya ruta es:

/app/design/frontend/nuestro_tema/paquete_usado/template/catalog/product/view/attribute.phtml

Y buscamos este código:
[crayon-5ae23cf830cd4888147708/]
Y lo reemplazamos por este otro:
[crayon-5ae23cf830cdd132297279/]
Obviamente, en el punto del código donde pone ‘No’, podemos poner
[crayon-5ae23cf830ce0632015705/]

Si no nos interesan los logs, borraremos todos los registros de las tablas
log_customer
log_visitor
log_visitor_info
log_url log_url_info
log_quote
report_viewed_product_index
report_compared_product_index
report_event
catalog_compare_item

Se puede meter en cron para que salte la limpieza 1 vez al mes, por ejemplo:
php -f shell/log.php clean

También puede hacerse en la interfaz del administrador: Sistema->Configuración->Avanzado->Sistema->Log
Habilitamos la limpieza de logs y definimos la frecuencia de borrado. Guardamos y ya está todo.

Si nos interesan (por temas de estadísticas de visitas), dejaremos los del último mes o los 2 últimos meses.

Hace unos días estuve en las instalaciones que SiteGround España nos brinda al grupo de Meetup de WordPress Madrid explicando cómo mostrar los contenidos de los campos personalizados que habíamos creado con ACF, sin escribir código. Como vimos que era un truco muy útil, lo explico a continuación:

Para este ejercicio necesitaremos:

Bien, lo primero que hacemos es crear con el plugin ACF Post Types un contenedor para los campos personalizados que crearemos a continuación:

 

 

 

Creamos un tipo llamado Libro:

 

Y lo vemos en el menú lateral del backend de WordPress:

A continuación, creamos los campos asociados al tipo Libro:

Bien, ya tenemos una ficha rudimentaria de un libro en backend. Ahora vamos a darle contenido a esta ficha. Para ello creamos 3 libros:

 

 

 

 

 

 

 

 

 

 

 

Y ahora viene el momento de volcarlos al front. Para ello utilizaremos el plugin Custom Content Shortcode, que nos permitirá hacer por ejemplo un bucle y sacar un listado de los libros en una página estática. Si queréis consultar los shortcodes de este plugin, los teneis aquí:

 

 

 

 

 

 

 

 

Entraremos en los ajustes de Custom Content Shortcodes para activar los shortcodes para ACF como veis en la figura que teneis a continuación:

 

 

 

Bien, creamos una página en la que tendremos el listado de las obras que hemos insertado y ponemos los siguientes shortcodes:

 

 

 

 

 

 

 

Podéis observar que para mostrar la fecha he definido un formato de salida. Ahora publicamos la página y vemos el resultado:

Cuando contratamos un servidor en Linode o Digital Ocean u otra empresa similar, según qué plataformas se instalan en estos servidores y las visitas que reciban, pueden quedarse cortos de memoria swap. En estos casos, podemos ampliar la swap de la siguiente forma, creando un archivo para ello, que lo trataremos como un HDD:
[crayon-5ae23cf830e83521598215/]
Con la primera instrucción, creamos en la carpeta root un archivo ‘swapcreadapornosotros’ con un tamaño definido y lo montamos como un dispositivo más. A continuación, hacemos un chmod 600 de esa carpeta,y un mkswap de ese archivo, de forma que indicamos al sistema que a partir de ahora, ese archivo es parte de nuestra swap. Y después, con swapon y el archivo, activamos la swap en el mismo.

Por último, para hacer que después de un reinicio la swap siga ampliándose en el archivo, editamos el archivo fstab e insertamos
[crayon-5ae23cf830e8a807291108/]
Y listo!

[crayon-5ae23cf831003905286752/]
Cuando en un Moodle tengamos foros y aparentemente no salgan sus correos a los usuarios, podemos chequear su funcionamiento abriendo una conexión por terminal y ejecutando el siguiente comando:
[crayon-5ae23cf831009173305724/]
Al ejecutarlo, si está todo correcto y no hay nada en cola, saldrá algo así:
[crayon-5ae23cf83100b105627207/]
Y si por el contrario, hay alguna petición en cola, saldrá así:
[crayon-5ae23cf83100d187322352/]
Si hay algún problema, el mensaje sería el siguiente:
[crayon-5ae23cf831010475595234/]
Según el error devuelto, tendremos que arreglar permisos, o corregir la ruta de PHP etc.