Gestores de contenidos

e-Learning, Gestores de contenidos, Soporte, Trucos

Dónde descargar versiones anteriores de Moodle

Es difícil tener Moodle actualizado a la ultimísima versión, porque la actualización no es “hacer un clic”. De hecho tampoco es recomendable porque los temas y addons no se actualizan tan rápido como el core, y porque pueden surgir problemas con la última versión. Así que cuando quieres actualizar Moodle te encuentras con que tienes que descargar versiones que no están en su página web. Aquí os dejamos los enlaces para descargar todas las versiones de Moodle. Versiones obsoletas sin soporte (legacy). Versiones sólo con soporte de actualizaciones de seguridad. Versiones con soporte. Versiones más recientes. Desde estos enlaces puedes encontrar la versión o versiones que necesitas y actualizar tu Moodle a la penúltima versión (no recomiendo la última).

Diseño Web, Gestores de contenidos, Sistemas, Trucos

Permisos de carpetas y archivos en WordPress

Una pregunta que nos hacen, y nos hacemos muy a menudo: ¿qué permisos necesita WordPress en el servidor para funcionar? Lo primero que hay que tener en cuenta es que esto depende mucho de la configuración del servidor web (Apache, Nginx…) el modo de funcionar etc. Es decir hay muchas configuraciones que pueden afectar a esto. Hablaremos de manera genérica. Nota: el cambio de permisos podéis hacerlos por ssh o por FTP. En breve haremos un vídeo sobre cómo cambiarlos por FTP. Permisos de que necesita WordPress en archivos y carpetas. En la mayoría de los casos: 755 para carpetas y 644 para archivos. En ciertos casos donde la configuración del hosting no está bien realizada, o donde varios usuarios suben ficheros por FTP los mejores permisos son 775 para carpetas y 664 para archivos. En ciertas ocasiones cambiar estos permisos no resuelve los problemas en WordPress porque hay problema de usuarios y grupos en la configuración del hosting. Normalmente el usuario de las carpetas no coincide con el usuario de Apache. Eso debe resolverlo el que gestione el servidor.

Diseño Web, Gestores de contenidos, Soporte, Trucos

WordPress no para de pedir usuario y contraseña de FTP.

Problema. En ocasiones nos hemos encontrado con este problema en algún cliente. Estás en el backend (administración), y para acceder algunos apartados pide usuario y contraseña de FTP. Además, cuando intentas instalar un plugin, no deja porque no tiene las credenciales de FTP. Causa y solución. La causa del problema es que los permisos están mal. configurados en este hosting. Pueden ser los permisos de las carpetas (deberían ser 755 directorios y 644 ficheros en la mayoría de los casos) o que el usuario en que se ejecuta la web no tiene permiso para escribir en el directorio. Obviamente ambos están relacionados, pero por temas de seguridad, no podemos dar cualquier permiso a WordPress. Lo primero a probar como solución sería cambiar los permisos por FTP. Grabaremos un vídeo sobre esto, pero es fácil asignar los que hemos dicho más arriba. Si aún así no funciona, lo que debemos hacer es que los administradores del alojamiento nos corrijan el usuario y grupo de los directorios de nuestra web. Deben ser los que corre Apache o el usuario web bajo los que corre Apache. Con este usuario, y los permisos adecuados, WordPress no da problemas. PERO, los administradores puede tardar un tiempo en solucionar este problema, y mientras tanto necesitamos actualizar o instalar componentes. En este caso os damos dos soluciones provisionales. Ambas deberían ser provisionales, y sólo mientras instalamos o actualizamos (luego las quitamos). Si no podemos tener problemas de seguridad. Añadir la siguiente línea a wp-config.phpdefine(‘FS_METHOD’,’direct’); Lo puedes poner debajo de DB_COLLATEPuedes ver más información aquí. Directo fuerza Direct File I/O  en php al transferir ficheros, y a guardarlos con el usuario de Apache,Pero puede abrir agujeros de seguridad si el servidor no está bien configurado.Así que ponemos esta línea, guardamos y deberíamos poder actualizar e instalar lo que queramos desde el backend.Cuando acabemos, quitamos la línea de nuevo. Configurar usuario y contraseña de FTP en wp-config.De nuevo esto crea riesgos de seguridad porque están los datos de FTP en un fichero al que pueden acceder los usuarios (si está mal configurado).Añadimos lo siguiente al fichero (sólo la parte en negrita): define(‘FTP_HOST’, ‘ftp.MIDOMINIO.com’);  > Servidor de FTPdefine(‘FTP_USER’, ‘USUARIO_FTP’);  > usuario FTPdefine(‘FTP_PASS’, ‘LA_CONTRASEÑA’);  >contraseña FTPdefine( ‘FTP_BASE’, ‘/httpdocs/wp/’ );  > Directorio donde tenemos instalado wordpressdefine(‘FTP_SSL’, false); > solo en el caso que tengamos SFTP De nuevo lo quitamos al acabar.

Diseño Web, Gestores de contenidos, Soporte

Las páginas protegidas con contraseña no funcionan en WordPress con caché (plugin, Cloudfront o Cloudflare).

Recientemente hemos estado peleando con esto, y os dejamos la solución. Problema. El problema detectado es que no te funcionan las páginas protegidas con contraseña en WordPress. En nuestro caso por más que ponías la contraseña correcta en algunas páginas te la volvía a preguntar. En otras páginas simplemente aparecía el texto sin poner la contraseña. Causa. Para entender lo que está pasando hay que comprender cómo funcionan las páginas protegidas por contraseña en WordPress. Cuando proteges una página, y el usuario pone la contraseña, el truco es que WordPress la comprueba, guarda la contraseña en una cookie llamada wp-postpass_COOKIEHASH donde COOKIEHASH es un número generado (un hash).Para ello va a la url wp-login.php?action=postpass Las causas del error pueden ser varias: Se ha modificado el wp-login.php (por ejemplo para cambiar el acceso de usuario) o alguna redirección o bloqueo no deja llegar a esa página. En tal caso no puede comprobar la contraseña y no funciona.Prueba a acceder a tudominio/wp-login.php para ver si funciona. Se está impidiendo acceder o guardar la cookie wp-postpass_*Esto suele ser por un CDN o caché, lo vemos más adelante. El caché está guardando esta cookie demasiado tiempo y la contraseña ha cambiado.Cambia los tiempos de expiración de las cookies (en concreto la que hemos dicho). La configuración del servidor o de la web está impidiendo que de la página vaya a wp-login y vuelva a la página. Esto está relacionado con los “HTTP referrers“. En estos casos dejando pasar estos en el firewall o quitando cosas como <meta name=”referrer” content=”no-referrer”> de la web se arregla. Obviamente hay alguna causa más pero esto son los principales. Solución si tienes CDN o caché tipo Cloudfront de Amazon o Cloudflare. Si estás trabajando con Cloudfront de Amazon o Cloudflare, la causa seguramente será la cookie. En este caso tienes que ir a la configuración de tu CDN y decir que deje pasar (whitelist) la cookie wp-postpass_*. En Amazon Cloudfront por ejemplo funciona así. Pero debería funcionar en cualquier CDN o plugin de caché. Comprueba también que los HTTP referrer no los está eliminando el CDN, es decir que los deje pasar como los manda el origen (muchos CDN eliminan los headers). Esperamos que con esto se os quiten muchos dolores de cabeza porque es un error de los “raros”.

Diseño Web, Gestores de contenidos

Los sliders no están permitiendo Videos con Autoplay con sonido por restricciones de los navegadores.

Hace unos días, en la web de un cliente, intentamos poner un vídeo para que se ejecutara automáticamente al cargar la página (Autoplay). Pero no conseguíamos que se escuchara el sonido. Después de darle unas cuantas vueltas, e investigar un poco, descubrimos la causa y os la dejamos aquí por si os pasa (o nos pasa de nuevo a nosotros). Parece ser que los plugins de slider más comunes, están deshabilitando el sonido en el Autoplay, por restricciones de los navegadores.Los navegadores están intentando “mejorar la experiencia del usuario”, y los usuarios encontraban molesto el que se cargaran las páginas con sonido. Así que han deshabilitado esta opción. Como podéis ver aquí, siempre se permitirá el Autoplay SIN sonido, pero con sonido sólo en ciertos casos muy concretos. Como dice Google “a los usuarios les va a encantar”. A los desarrolladores, y a los clientes, no tanto.

Diseño Web, Gestores de contenidos, Seguridad

WPScan: base de datos de vulnerabilidades de WordPress con plugin y API para escanear tu web (y otras).

Para aquellos que os preocupa la seguridad de vuestros sitios en WordPress, hoy os dejamos una gran herramienta. WPScan es una base de datos de vulnerabilidades de WordPress (página oficial aquí). Es decir, van almacenando todos los fallos tanto de core como de temas y plugin de este gestor de contenidos. En cada fallo puedes ver su severidad, referencias, guía de tiempos e información adicional.También permite informar de vulnerabilidades. Esta funcionalidad ya lo haría un gran recurso, pero es que además tiene dos otras muy útiles. Plugin de WordPress para poder escanear tu página web basándose en esta base de datos. Obviamente útil para usuarios de WordPress y diseñadores web. API para poder usar la base de datos externamente. Esto te permite usarla desde tu ordenador o desde un servidor y escanear cualquier página.Muy útil para desarrolladores y expertos en seguridad. Y también para los “hackers”. Con todo está claro que es una herramienta de seguridad muy potente (forma parte de la mayoría de las distribuciones de seguridad y pentesting), y que en malas manos puede ser el mejor aliado del hacker. De hecho si buscas “WPScan WordPress” en Google, obtendrás muchos resultados sobre cómo “hackear WordPress con WPScan”. Porque con esta herramienta podemos analizar cualquier web hecha en WP, y nos dirá todas la información sobre sus versiones, plugins, usuarios (si puede), temas. Con esa información, probará las vulnerabilidades conocidas de cada una y te dirá cuales ha encontrado. Para un hacker es como un amigo que te dice “los agujeros están aquí y aquí”.Para un desarrollador (nosotros) una manera de reforzar la seguridad de su sitio en WordPress. Vosotros decidís cómo usarlo.

Diseño Web, Gestores de contenidos, Trucos

Cómo activar y configurar los impuestos en WooCommerce

WooCommerce por defecto viene sin los impuestos activados. Es necesario activarlos, y configurar las reglas de Tasa Estándar (21%), Tasa Reducida (por ejemplo un IVA menor) o Tasa cero (sin impuestos). En este vídeo os enseñamos a activar y configurar los impuestos en WooCommerce. Nota1: explicamos cómo crear una regla general para todos los países y qué significa cada campo. Luego cada tienda es diferente y puede que tengáis que crear reglas por países, regiones, comunidades, ciudades… Pero el sistema es el mismo. Nota2: en España los impuestos tienen que estar desglosados. Es importante. Le dedicaremos otro artículo a esto. Resumen del proceso. Básicamente tenéis que: Ir a WooCommer > Ajustes > General y marcar la pestaña Activar impuestos Una vez hecho esto aparece la pestaña Impuestos. Ahí tenéis que, en la primera pantalla ( Opciones de impuestos ) configurar si queréis introducir los precios con o sin IVA, si queréis que afecte a los envíos, si queréis que aparezcan los impuestos detallados etc. Aquí las opciones que mencionamos en el vídeo son importantes. Después vamos a la pestaña de las Tarifas que queremos usar (sobre todo la Tarifa Estándar) y ahí tenemos que añadir una nueva fila con el porcentaje requerido según las condiciones que necesitéis. En nuestro caso un 21% para todos los destinos. Con esto ya estaría, recordando que, aunque podéis poner una Tarifa por defecto, luego en cada producto podéis cambiar el tipo de Tarifa que le aplica.

Diseño Web, Gestores de contenidos, Trucos

DNI del cliente en la factura de WooCommerce con WooCommerce Checkout Manager y WooCommerce PDF Invoices & Packing Slips.

Hace unos días os explicamos que en WooCommerce hay que hacer unos cambios para adecuarse a la legislación española.En resumen son: – Hacer que los números de factura sean consecutivos. – Incluir el DNI del cliente en la factura. – Desglosar el I.V.A. en la factura. El punto 1 se resuelve con plugins como PDF Invoices & Packing Slips.El punto 2 puede resolverse con plugins específicos (pero de poco recorrido probado), como explicamos en este post. PERO, como puede que no nos fiemos de esos plugins o que ya tengamos que usar WooCommerce Checkout Manager para otras cosas (como elegir los campos obligatorios en la compra), vamos a enseñar a añadir el campo de DNI/CIF con estos dos plugins.Nota: nivel medio de conocimientos. NIF/CIF con WooCommerce Checkout Manager y WooCommerce PDF Invoices & Packing Slips. Vamos a suponer entonces que tienes PDF Invoices & Packing Slips y WooCommerce Checkout Manager instalados. 1) Lo primero que vamos a hacer es crear un campo nuevo para el DNI en Checkout Manager. Para ello vamos, en el menú del backend a WooCommerce->Ajustes->Finalizar Compra->Facturación (WooCheckout-> Facturación) y pinchamos en Añadir nuevo campo. Seleccionamos un Campo de texto, que marcamos como obligatorio, ponemos el nombre que queramos (NIF/CIF) y el aviso que queramos. Es importante el último campo que será parte del nombre de la variable donde se guarde este campo (ya no se puede cambiar el nombre). En nuestro caso nifcif. Debe quedar algo así: Podemos comprobar que ahora al realizar la compra debería pedirnos este campo. Haced una prueba porque la vais a necesitar luego. 2) Ahora vamos a hacer que se incluya en la factura. Para eso necesitamos hacer dos cosas a) descubrir qué nombre tiene la variable de este campo en el sistema y b) añadirlo a una plantilla de factura. a) Para descubrir que nombre tiene la variable vamos a instalar el plugin Store Toolkit for WooCommerce (ya hablaremos sobre el otro día). Una vez activado vamos a ir a un pedido en el que hayamos metido el DNI (hacemos una prueba antes) y, al final, veréis un listado de campos. Debería aparecer uno que acabe en lo mismo que pusisteis en el último espacio al crear el campo (nombre de la variable).En nuestro caso el campo se llama _billing_nifcifUna vez sabéis esto podéis desactivar el plugin Store Toolkit. b) Ahora hay que crear una plantilla nueva en PDF Invoices & Packing Slips . Si os vais al backend a WooCommerce->Facturas PDF-> General tenéis las instrucciones. Ahí dice :”  Copia todos los archivos de wp-content/plugins/woocommerce-pdf-invoices-packing-slips/templates/Simple a tu tema (o tema hijo) en wp-content/themes/tutemahijo/woocommerce/pdf/yourtemplate para personalizarlos. “Por lo tanto es mejor que hayáis creado un tema hijo (nosotros no lo hicimos y la actualización del tema nos borró las modificaciones). Una vez hayas copiado el contenido de Simple a tu directorio de plantilla, tendrás un fichero invoice.php. Edítalo y, en el apartado de address-billing-address añade la siguiente línea: <?php $this->custom_field(‘custom_fieldname’, ‘Custom field:’); ?> En nuestro caso: <?php $this->custom_field(‘ _billing_nifcif’, ‘NIF/CIF:’); ?> Tiene que quedar así: Fijaos que hemos añadido un br antes para que salte una línea. Ahora en WooCommerce->Facturas PDF-> General , el desplagable debería dejaros elegir la plantilla creada. Sacad una factura nueva (podéis coger un pedido, mandar la factura a la papelera y regenerarla). Ahora deberíais ver el DNI en el apartado de dirección de facturación. Esperamos que os sirva.

Diseño Web, Gestores de contenidos, Soporte, Trucos

Cómo solucionar problemas con Divi con el Support Center y el Safe Mode.

Divi es una de las plantillas más usadas en WordPress. Pero cuando falla, también una de las que más quebraderos de cabeza da. Porque suele fallar con pantallas en blanco, o el editor dando vueltas, y sin errores en ningún lado. A principios de este año, los creadores de Divi han sacado un nuevo apartado con varias funcionalidades muy útiles para poder arreglar problemas con su plantilla: el Support Center. Qué es Support Center y qué funciones útiles tiene. Support Center es un apartado dentro de Divi que incluye varias funcionalidades extra enfocadas a resolver problemas con la plantilla. Os resumimos alguna: System Status. Un resumen de la configuración de tu servidor, con opciones que son correctas, y recomendaciones para mejorar. Esto ya es muy útil, porque Divi tiene unos mínimos para que funcione correctamente, estos pueden cambiar en nuevas versiones, y es bueno poder comprobarlo en tu web.Y específicamente que ve Divi que está “mal” en tu servidor. Después hay unas opciones más centradas en el soporte de Elegan Themes, como la manera para que su soporte se conecte a tu web (Elegant Themes Support) y un acceso a documentación sobre el tema y su soporte documentado (Divi Documentation & Help).Las dos últimas opciones son mucho más interesantes. Safe Mode Esta opción te permite activar el “modo seguro” en el que se deshabilitarán todos los plugins no esenciales para el funcionamiento de la plantilla. Así puedes ver de manera rápida si un plugin es el que está causando los errores.Además te indica qué plugins ha deshabilitado (o va a deshabilitar) y te permite activarlos de manera rápida (desactivando Safe Mode).Parece una tontería…pero es MUY útil. Logs Aquí puedes ver el contenido del fichero donde WordPress guarda los registros si tienes activada la opción de  WP_DEBUG_LOG .También útil para ver lo que pueda estar ocurriendo. Gran avance Elegant Themes. Buena herramienta para los usuarios de Divi.

e-Learning, Gestores de contenidos, Soporte

Error Call to undefined function current_language() al correr el cron de Moodle

Otro de los errores típicos que nos encontramos al dar soporte a los clientes. En este caso se trata al ejecutar el cron que necesita Moodle para las tareas de mantenimiento y limpieza. En el manual de Moodle indica que hay que ejecutar: /usr/bin/php /ruta/hacia/moodle/admin/cli/cron.php Este comando (con versiones actuales de Moodle, y dependiendo de la versión que tengas en tu servidor) puede dar el siguiente error: Call to undefined function current_language() in /var/www/clients/client10/web87/web/lib/setuplib.php:713 Causa. La causa de este error es que el script cron.php de las nuevas versiones de Moodle tienen comandos que no son compatibles con versiones anteriores a la 7.2 y tu servidor está ejecutando (al menos esa instancia) con una versión anterior. Solución. La solución es cambiar el comando que recomiendan y ejecutar la 7.2 (o superior). Así: /usr/bin/php7.2 /ruta/hacia/moodle/admin/cli/cron.php Si te da error ve a /usr/bin/ a ver que versiones tienes. Si no tienes superior a la 7.1 te toca instalar o pedir que te instalen una versión superior. Una vez que veas que funciona en cli, puedes ponerlo en un cron job. Nota: los números que he usado son actuales. Con problemas futuros habrá que probar con otras versiones, siempre superiores a la que te da el error.

Scroll al inicio