Autonomía digital y tecnológica

Código e ideas para una internet distribuida

¿Son nuestros los espacios digitales que alquilamos?: el ataque de fuerza bruta a WordPress en los servidores de CDMon

Imago voragine.net
• Por
Imagina que llegas un día a tu casa y al ir a meter la llave en la cerradura del portal, un señor policía te sujeta la mano y te dice, con mucha educación, que no puedes pasar. Tú le dices que vives allí, y le enseñas la llave como prueba. Él te explica que hay una banda de ladrones rubios en el barrio y que no dejan pasar a ningún rubio como medida preventiva, por orden del propietario. Maldita ascendencia nórdica, piensas, sin acabar de creértelo. Llamas a tu casero que te confirma que él mismo he contratado a los policías. Te dice que lo siente, pero que por la seguridad de tu vivienda, no puede dejarte pasar. Una historia absurda pero real: esto es lo que les pasó hace un mes a los inquilinos de CDMon.

Markdown y WordPress

Imago voragine.net
[actualizado el ] • Por
Ésta es la primera entrada que publico en voragine.net usando markdown. Estoy escribiendo en el editor de WordPress y es increíble no tener que levantar los dedos del teclado para crear una lista, poner texto en negrilla o crear un enlace. Aumento considerable de comodidad y rapidez no tener que ir de teclado a ratón y de ratón a teclado.

Personalizando el loop de WordPress con WP_Query->set() para casos y plantillas determinados

Imago voragine.net
[actualizado el ] • Por
Configurar una query para conseguir el loop que necesitamos en una plantilla determinada de WordPress es fácil: basta crear una query personalizada mediante WP_Query. Hay veces que solo queremos modificar una variable de la query, y para un caso concreto, no para toda la template. Por ejemplo en la template archive.php y solo para las queries que afecten a una taxonomía determinada. En estos casos, quizás prefiramos no ensuciar el archivo de la template, archive.php en nuestro ejemplo. Lo que podemos hacer es hacerlo usando el método set() de WP_Query en una función que incluiremos en el archivo functions.php de nuestor theme.

Cómo añadir campos a las secciones de Ajustes (Settings) del administrador de WordPress

Imago voragine.net
• Por
Para añadir campos suplementarios al apartado de Ajustes del administrador de WordPress podemos usar la Settings API. Primero tenemos que registrar el nuevo campo y luego añadirlo, usando las funciones register_setting() y add_settings_field() respectivamente.

Imagen destacada en un post en WordPress: sacándole partido a post_thumbnail

Imago voragine.net
[actualizado el ] • Por
La funcionalidad featured image de WordPress permite programar con mucha más flexibilidad cómo se muestran las imágenes asociadas a un post. Además provee de una manera de gestionar las imágenes destacadas que no es tediosa ni difícil para los editores, que lo pueden hacer desde la página de edición de una entrada. implementar esta funcionalidad no es nada complicado.

Cómo cambiar el valor por defecto del nombre de usuario a mostrar públicamente en WordPress

Imago voragine.net
• Por
En el perfil de cada usuario hay una opción que permite definir cómo nombrarle en el sitio cuando se hace referencia a él: bien con su nombre de usuario, con su nombre y sus apellidos... La opción por omisión es el nombre de usuario.El problema viene cuando se quiere cambiar este comportamiento por omisión del display_name para no tener que cambiarlo en cada usuario, y para que nuevos registros contengan ya la opción correcta.

Registro de usuarios en WordPress sin plugin mediante formulario: código mejorado

Imago voragine.net
[actualizado el ] • Por
Hace tiempo publicábamos cómo crear un formulario de registro de usuarios en WordPress, para permitir que nuevos usuarios se den de alta en nuestra web sin necesidad de pasar por el gestor. Publicamos ahora el código mejorado, más organizado y con alguna funcionalidad extra: se incluye el código para notificar por correo al administrador de la página el registro del nuevo usuario, y el envío también por correo de los datos de inicio de sesión al usuario. También se incluye la manera de rellenar campos personalizados del perfil, que hemos tenido que crear previamente.

Cómo añadir campos extra al perfil de un usuario en WordPress

Imago voragine.net
• Por
Añadir campos al perfil de los usuarios de nuestra página funcionando bajo WordPress, y así conseguir personalizarlos es sencillo. Únicamente tenemos que añadir algo de código al archivo functions.php del tema que estemos usando: por un lado el código que añadirá las cajas a la página de edición del perfil en el administrador de WorPress; por otro, la acción que creará y actualizará ese registro en la base de datos.

Iniciar y abandonar sesión en WordPress mediante formulario, sin usar el panel de administración

Imago voragine.net
• Por
Hace tiempo explicábamos cómo añadir usuarios a WordPress sin pasar por el panel de administración, mediante un formuario que insertaba los usuarios directamente en la base de datos. Para permitir a un usuario iniciar o abandonar su sesión, una vez registrado, hay que introducir dos formularios, uno por cada acción, y que cada uno llame a la función adecuada de WordPress. Por último hay que contemplar la página en la que aterriza el usuario que acaba de iniciar sesión, o salir de ella.Para montar un sistema completo de incio y abandono de sesión necesitaremos unos cuantos archivos que colocaremos en la carpeta del theme que estemos usando:
  • Alojar en un archivo el formulario para iniciar sesión, y el formulario para abandonar sesión, por ejemplo en user-forms.php
  • Insertar en otro archivo las acción para iniciar y abandonar sesión, por ejemplo, en user.php. Este paso no es extrictamente necesario, pero hace que tengamos todo el código relativo a gestión de usuarios controlado en el mismo archivo, cuestión de orden.
  • Llamar al archivo user.php desde el archivo header.php para que así las acciones de se ejecuten antes de cargar las cabeceras de la página y podamos redirigir convenientemente a la URL que queramos, y llamar al archivo user-forms.php desde el lugar en el que deseemos que aparezcan los formularios.