Al importar pedidos de WooCommerce de una plataforma WordPress antigua nos podemos encontrar el caso de que las cantidades no suman bien, con situaciones tan absurdas como esta: pedidos que engrosan el total pero que no aparecen en el listado hagamos lo que hagamos. Miramos en la papelera, y tampoco…
Os dejo aquí el PDF que puse en charla sobre Seguridad en comercios electrónicos de C0r0n4con Christmas Edition 2020. Si tenéis alguna duda, no dudéis en poneros en contacto a través de la página de contacto, o en RRSS y os responderemos a la máxima brevedad.
Hemos actualizado recientemente unas cuantas plataformas de Mautic, de la versión 2 a la 3, y en todas ha terminado pasando lo mismo: necesitaba actualizarse por línea de comandos, y hemos tenido que forzarla, es decir, actualizar la base de datos por un lado y el código por otro, lanzando…
En este blog no somos de realizar largos y sesudos artículos, no obstante, en este caso es necesario explicar un proceso largo y nada intuitivo, por lo que se impone romper con nuestras reglas y hacer un tutorial extenso, que ayude con un proceso no muy documentado aún. Hasta principios…
Has montado Mautic en un servidor limpio, lo has probado y funciona todo. Estás configurando el correo electrónico, haces la comprobación de conexión, todo va bien. Pero es llegar al envío de prueba del correo, y se queda eternamente pensando, hasta llegar a un error 503 del servidor. Este…
El ataque a plataformas de WordPress por este tipo de malware ha saltado de forma masiva a principios de septiembre de 2.020. se caracteriza por insertar un código en JavaScript al principio de ciertos archivos de la web y artículos en la base de datos, de manera que la web…
El comando sed de Linux es una poderosa y polivalente herramienta que nos saca de más de un apuro, aunque no la lleguemos a utilizar en todo su potencial. Resulta especialmente útil para realizar sustituciones masivas, del tipo cambiar «bar» por «foo» en un centenar de archivos. La sintaxis básica…
Hace unos años escribimos un artículo sobre cómo generar un archivo DOCX desde el contenido de una página web que podéis consultar en este enlace. Ahora explicamos cómo imprimir por ejemplo el resultado de una búsqueda específica que hayamos programado en WordPress. En este caso,…
El My Book de Western Digital es uno de los dispositivos más utilizados para hacer backup con un Mac, gracias a su compatibilidad con Time Machine. Funciona tan bien, que cuando se dan situaciones como la que describimos a continuación, nos podemos volver locos. No son pocos los usuarios que,…
Fail2ban es una herramienta imprescindible para montar un servidor web hoy en día, si necesitáis saber más sobre ella, este enlace a su Wiki os lo aclara. Pero a veces bloquea a alguien que simplemente se equivoca al teclear una contraseña al…
Para los que trabajamos con WordPress, wp-cli es una herramienta salvavidas. Por su versatilidad, su potencia, y porque nos permite realizar cómodamente una gran cantidad de operaciones relacionadas con el despliegue y el mantenimiento de las plataformas. Su instalación es rápida y sencilla y su uso está bien documentado.
Recientemente, mientras recuperábamos un volcado de una base de datos de un WordPress en otro servidor, tuvimos un contratiempo al encontrarnos con el siguiente error: Error in query (1067): Invalid default value for ‘comment_date’ Eso nos ocurrió porque el servidor de destino, al ser un servidor de pruebas,…
Nuestra compañera Silvia Suria ha publicado recientemente un libro sobre comercio electrónico en formato Kindle, titulado Errores comunes en la creación de un comercio electrónico. El enlace de la obra es éste: Ir a Amazon Kindle En ella explica los problemas…
El error «Unable to serialize value» viene generado por una codificación errónea del archivo CSV para las traducciones. Para los que trabajan con Windows, recordaros que hay que codificar siempre en UTF-8. Para comprobarlo, hay que ejecutar en la línea de comandosphp -dmemory_limit=5G bin/magento setup:static-content:deploy de_DE –jobs=0 -f…
En Magento 1.x el error en el login puede venir por problemas de caché en navegador o por problemas en versiones antiguas de código. Si no es vuestro caso y ya lo habéis chequeado todo, probad a ampliar la RAM de vuestro servidor, seguro que os funciona de nuevo. Y…
A veces al migrar una base de datos de Moodle nos hemos encontrado con el error siguiente: Error: “#1071 – Specified key was too long; max key length is 767 bytes” La solución más sencilla es ejecutar estas 3 instrucciones en la base de datos de destino antes…
Si has hecho todo lo que te recomiendan las webs sobre limpieza de WeKnow.ac y sigues teniendo esa molesta redirección en tu Google Chrome, la solución más sencilla pasa por desinstalar Google Chrome con la herramienta para Mac «Clean My Mac» (sólamente con desinstalar el navegador arrastrándolo a la papelera…
Aunque normalmente seguimos las guías de howtoforge.com, para que un servidor Web (LAMP) funcione correctamente debe tener instalados y configurados como mínimo los siguientes elementos: Módulos: mod_expires mod_cached mod_deflate mod_headers mod_mem_cache mod_disk_cache mod_pagespeed Cachés: OPcache Memcache Redis Además de instalar todo esto, recomendamos configurar el módulo de…
En esta ocasión os vamos a explicar qué hay que hacer cuando en la instalación de un Moodle 3.x con motor de base de datos MariaDB, llegamos al punto en el que chequea si el sistema coumple los requisitos mínimos y nos muestra estos errores: Información Informe Plugin Estado mysql_full_unicode_support#File_format…
8 de junio de 2018. Empiezo escribiendo este artículo con la fecha de hoy porque voy a explicar qué ha ocurrido con los dominios .es que los gestiona la entidad publica Red.es, del Ministerio de Energía, Turismo y Agenda Digital, y cómo podemos evitar en gran medida un desastre…
El 3 de junio saltaron las alarmas entre los clientes de PcComponentes: se estaban realizando compras fraudulentas con sus tarjetas. Por lo que se cuenta en esta noticia (ver noticia), parece ser que PcComponentes ha tenido un problema de seguridad y las cuentas de usuarios se han…
Hace poco hemos tenido un error al actualizar un conocido plugin de WordPress. El error se mostraba en lugar del Slider que se había preparado: Revolution Slider Error: You have some jquery.js library include that comes after the revolution files js include. This includes make eliminates the revolution slider…
Si al entrar en el detalle de cada cliente en el backend de Magento 1.9 os devuelve el mensaje: error: error in [unknown object].fireEvent(): event name: address_country_changed error message: cannot read property ‘show’ of undefined. Lo que debéis hacer es ir a la administración de bases de datos que tengáis…
El Reglamento General de Protección de Datos de la Unión Europea que es de obligado cumplimiento el próximo mes de mayo (el día 26) nos trae a todos de cabeza. Nuevos procesos, consentimientos explícitos o calificación de datos son algunas de las novedades a incorporar. Moodle como…
Para actualizar una plataforma Magento 1.X en producción, seguiremos los siguientes pasos: 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. Descomprimimos el archivo tar -zxvf magento-1.9.X.tar.gz o unzip magento-1.9.X.zip, donde…
Hace poco tuve un problema con un servidor: se quedó sin espacio en disco. Al limpiarlo, empezó la base de datos a dar errores. Fuí al log de MySQL y me encontré con muchas líneas de error, pero el que me llamó la atención me decía que «Incorrect key file…
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…
A veces me he encontrado con que ha habido que corregir a mano la url o el nombre de la imagen de algún producto en una base de datos de Magento. Cuando esto pasa, hemos de saber que hay que trabajar con 2 tablas: catalog_product_entity_varchar catalog_product_entity_media_gallery Comparte!…
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…
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:
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-60080e8078c44729843292/] Comparte!…
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-60080e8078d4f735308909/] Y…
Para descargar la versión más reciente de Magento 1.x lo mejor es utilizar [crayon-60080e8078e89656690730/] Comparte!…
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…
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…
Para todos aquellos interesados en el mundillo de WordPress, el 22 y 23 de abril tendremos una nueva edición de la WordCamp Madrid. Para estar enterados de todo lo que acontece en cada momento hasta que empiece el evento, podeis daros de alta en su newsletter:…
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…
Cuando sacaron la actualización de Woocommerce a la versión 2.0, oí muchas críticas y quejas, y he decidido que lo mejor es que explique qué ocurrió. Como bien nos explican en este artículo en inglés, el problema fue no respetar la compatibilidad hacia atrás (sus razones tenían, pero fue…
[crayon-60080e80790c4960892503/] 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-60080e80790c9872536881/] Al ejecutarlo, si está todo correcto y no hay nada en cola, saldrá algo así:…
Recientemente parte de nuestro equipo dió un taller en la WordCamp de Sevilla (2016) sobre desarrollo en WordPress con Gantry. Podéis descargar el PDF con la documentación haciendo clic aquí. ¡Que la disfruteis! Comparte!…
Cuando en Magento estamos trabajando con listados de productos en categorías y activamos el atributo «isAnchor» en la categoría para que salga el buscador por atributos, el list.phtml que muestra el listado no es el que tiene la plantilla en plantilla-que-estamos-usando/template/catalog/product/list.phtml, sino el que se encuentra en la…
Si administráis un sitio web que genera una gran cantidad de archivos temporales, como por ejemplo un sitio web de comercio electrónico, puede que en algún momento os encontréis con un error como este que os paraliza la web y, lo que es peor, os impide el acceso por phpMyAdmin:…
Tabla de contenidos1 El motor de Docker2 Imágenes3 Registros4 Contenedores En este artículo veremos qué componentes tiene Docker. El motor de Docker, compuesto por el cliente y el servidor Docker. Las imágenes de Docker Los registros Los…
Si tenemos un WordPress y estamos trabajando con JQuery, puede que no se ejecute debido al siguiente error: [crayon-60080e80793cc371188050/] Para solucionar esto, simplemente envolveremos nuestro código JQuery con [crayon-60080e80793d2906499937/] ¿Por qué ocurre esto?. Sencillo, estamos ejecutando JQuery en modo «noConflicto» [crayon-60080e80793d4803175192/] por lo que…
A veces sucede que cuando se instala un plugin en MAgento, o lo desinstalamos, o actualizamos la plataforma de alguna forma, la parte del front se ve perfectamente y funciona todo, pero al intentar entrar en el backend, no podemos acceder al mismo. Nos ponemos un poco nerviosos, porque…
Empezamos una serie de artículos hoy en la que explicamos qué es un contenedor Docker, para qué sirve, cómo lo usaremos y por qué vamos a trabajar con él. El contenedor Docker es una tecnología que nos permite empaquetar y desplegar las aplicaciones que desarrollemos de una forma eficaz, rápida,…
En desarrollo, estamos acostumbrados a que el despliegue de una aplicación en producción sea un dolor de muelas, y no nos gusta llegar al momento «paso a producción», por la de posibles errores de última hora que nos encontramos. ¿Cuántas veces nos hemos encontrado que el desarrollo realizado en un…
A veces puede ocurrirte que tu cámara integrada de tu MacBook Pro no funcione, y el sistema te diga que no reconoce ninguna cámara en tu equipo. No te desesperes en ese caso, abre una ventana de Terminal y escribe [crayon-60080e8079617010976980/] Te pedirá tu contraseña de usuario administrador…
Puede que al configurar vuestro servidor Ubuntu 14.04 os hayáis encontrado con un mensaje como este al reiniciar Apache. No dejéis que la línea final, «The Apache error log may have more information», os despiste. El log de error de Apache probablemente no tenga información útil sobre el «incidente»,…
En Esencial Sistemas siempre estamos evaluando soluciones y desarrollos con el fin de darle a nuestros clientes la mejor opción del mercado acorde con sus necesidades. Y debido a ello, hemos empezado a colaborar con Facturascripts, ya que creemos que se trata de la mejor opción actualmente que…
A veces, en Magento ocurre que generar un listado de productos en stock en el front es un dolor de muelas, así que aquí os dejo el código que tenéis que meter en el archivo .phtml para filtrar por stock y obtener aquellos productos que tengan stock mayor que 0…
Esta minientrada servirá para ayudaros a resolver un problema como el que tuvimos recientemente con una instalación de un módulo en un Magento. A pesar de seguir las instrucciones al pie de la letra al instalar (volcar carpetas y archivos, limpiar cachés, desactivarlas, activarlas…), nos daba un error 500 al activarlo,…
Cuando realizamos una web, es conveniente no tener las imágenes en servidores de terceros, sino en nuestros propios servidores, o en un CDN. ¿Cómo descargamos las imágenes de otro servidor? Podemos hacerlo de varias formas: [crayon-60080e8079a4f169549768/] O: [crayon-60080e8079a54048215352/] Y la más eficiente de todas, si tenemos…
Cuando, después de una actualización vía código de los productos y/o sus categorías y atributos, necesitamos reindexar de nuevo las tablas implicadas en el proceso, podemos hacer: [crayon-60080e8079e05146117222/] para reindexar todas las tablas, o bien, si sólo necesitamos reindexar un conjunto determinado de tablas, podemos hacer: [crayon-60080e8079e0b093398339/]…
Hace poco, instalando un servidor Ubuntu me encontré con el siguiente error al tratar de instalar un paquete: [crayon-60080e807a0fe420936667/] Aunque había configurado aparentemente bien los repositorios de Ubuntu para la versión que estaba instalando, ese error indicaba que necesitaba corregirlos de alguna forma. La solución pasó simplemente por…
Es probable que alguna vez os hayáis encontrado con que en vuestro servidor Ubuntu se ha dejado de lanzar la cron de ISPConfig por algún motivo desconocido, y necesitáis lanzarla a mano. Pero antes de hacerlo, es pertinente que activéis el modo de depuración para verificar que no hay ningún…
Hace poco estaba trabajando sobre un Ubuntu 14.04 LTS Desktop cuando empezó a darme errores icomprensibles: MySQL dejó de funcionarme, no podía levantarlo de nuevo, y otros servicios de la máquina fueron cayendo poco a poco. Decidí reiniciarlo y al hacerlo, empezó mi calvario. Me mostraba la pantalla de logado,…
En Moodle, cambiar el tamaño máximo del archivo subido en el sitio o en los cursos no es complicado, pues la propia plataforma nos indica los ajustes que hay que modificar en el php.ini y en Apache. Pero a veces ocurre que, a pesar de haberse propagado el cambio…
Recientemente montamos un LAMP con las últimas versiones de ISPConfig, Apache 2 y Mysql, y al probar un desarrollo propio, nos dió este error al intentar subir una imagen pequeña por código: [crayon-60080e807a255925560100/] Si en ese momento miramos el…
Si en un Moodle recién instalado, cuando intentamos añadirle un módulo, plugin o plantilla: se nos queda en blanco la pantalla, nos da un error de permisos no válidos, en el error.log de nuestros logs nos encontramos con este error: [error] FastCGI: server «/var/www/XXX/cgi-bin/php5-fcgi-*-80-dominio.com» stderr: PHP message: PHP Fatal error: …
Las plataformas de elearning basadas en código abierto serán el centro de atención del próximo evento OpenExpo que se celebrará el próximo martes 11 de junio de 2013 en Madrid. El evento, que se celebrará en el Centro de Innovación Alvarado (C/ Bravo Murillo, 133 de Madrid) el próximo 11…
Seguro que más de una vez habeis tenido una web con su certificado SSL, y os ha dado el error de que hay elementos no seguros en ella. Este error es muy sencillo de corregir y se da cuando en una página que va sobre HTTPS, tiene referencias a elementos…
En esta ocasión explicaremos cómo montar campos desplegables (o selects, como querais llamarlos) en formularios en Drupal 7. Hasta la versión 6, había dos soluciones, o programarlos tú, o montar el módulo Hierarchical Select. En la versión 7, este módulo ya no puede utilizarse para esta versión porque…
Probablemente muchos de vosotros habréis tenido dificultades para acceder a los enlaces del footer de Magento. Esto se debe, una vez más, a la particular distribución/dispersión de los archivos en esta plataforma. A grandes rasgos, los enlaces del pie de Magento pueden estar en dos lugares bien diferentes: en un…
Instalas un Moodle 2.3.4, importas algunos cursos y los modificas ligeramente, adaptándolos a las nuevas necesidades. Y de repente, al borrar un elemento del curso (etiqueta, chat o cualquier recurso o actividad), nos devuelve el siguiente error: Detectado un error de codificación, debe ser corregido por un programador: PHP catchable…
Primero explicamos brevemente qué es wget. Según la definición de la Wikipedia: GNU Wget es una herramienta libre que permite la descarga de contenidos desde servidores web de una forma simple. Una vez lo tenemos claro, vamos a ver cómo instalamos esta herramienta en nuestro Mountain…
Llega tu cliente y no quiere que le generes un PDF, sino un archivo DOC para abrirlo cómodamente con su Word o herramienta similar. ¿Cómo se hace eso? Muy fácil, este código os genera un archivo con texto dentro y lo descarga a tu equipo. <?php header(«Content-type: application/vnd.ms-word»);…
Hemos terminado la instalación, aparentemente todo ha ido bien y cuando entramos en la administración de Magento, nos aparece el mensaje: «Your web server is configured incorrectly. As a result, configuration files with sensitive information are accessible from the outside. Please contact your hosting provider». La solución es sencilla: en…
Cuando afronteis un proyecto en Magento u otra plataforma de comercio electrónico, podeis usar todos los módulos que se os apetezcan, pero cuando llegue la hora de configurar la parte de forma de pago, si os piden configurarlo para un banco, olvidaos de todo e id a los módulos que…
¿Qué ocurre cuando has hecho una web y una de las capas tiene un posicionamiento absoluto y el resto es relativo y miras la web con Internet Explorer 7 u 8? Pues que tienes casi todas las papeletas de que el orden de las capas no sea el mismo que…
Una vez que tenemos lista nuestra flamante lista de usuarios a los que le vamos a hacer un mailing y tenemos el contenido del mailing, se supone que sólo tenemos que darle al botón de enviar y listo, ¿no?. Pues realmente no es así. Aparte de la lista de mails,…
Toda la aventura empezó cuando quisimos acceder con smartphones al contenido de nuestro WD de 2 teras. Para poder acceder, WD nos daba una aplicación llama WD 2go. Nos la instalamos y… nos dimos cuenta de que el HD necesitaba también tener instalado el mismo software, claro. Para saber si…