Autonomía digital y tecnológica

Código e ideas para una internet distribuida

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.

Cómo conseguir un sitio multilingüe con un WordPress Multisite: un sitio para cada idioma

Imago voragine.net
[actualizado el ] • Por
Conseguir un sitio multilingüe ha sido uno de los problemas históricos de WordPress. En el principio de los tiempos se hacía diferenciando los idiomas por categorías, luego empezaron a aparecer plugins; por fin apareció uno completo, fiable y estable, y al poco tiempo se volvió de pago (aunque no dejó de ser una buena opción). La alternativa siempre ha sido crear una instalación independiente para cada idioma, lo cual solía ser un infierno a nivel de mantenimiento; desde la versión 3.0 de WordPress y la integración estable de la estructura multisite esta posibilidad se democratizó y dejó de crear héroes. Tras leer Build a multilingual site with WordPress, y haber probado previamente las opciones que acabo de comentar, he llegado a la conclusión de que la opción multisite para conseguir un sitio multilingüe es ventajosa.

Cómo y por qué crear un tema «hijo», child theme, para WordPress

Imago voragine.net
[actualizado el ] • Por
Los temas hijos, child themes, en WordPress son aquellos que heredan las características de otro tema "padre", parent theme, del que dependen. La utilidad de los child themes reside en poder personalizar un sitio sin tener que crear un tema desde cero, ya que lo que no se defina en el child theme, éste lo heredará del parent theme.