Sitios web con WordPress

Lo primero que uno piensa al crear un sitio web es en el dominio. Algún nombre de marca o palabra clave potente es lo ideal, .es otorga ciertas ventajas para el comercio online en España y .com es de las mejores extensiones de dominio internacionales. El alojamiento también es algo que hay que estudiar (por coste y por prestaciones y capacidad de respuesta… WebEmpresa, por ejemplo, es nuestra opción nacional).

Uno de los CMS (Content Management Systems) más utilizados para crear sitios webs -y el que usamos también en Narratech- es WordPress. En la web BuiltWith puedes investigar cuantos sitios web en el mundo lo usan.

Es muy importante contar con certificado SSL para que se acceda a tu web con prefijo https://, que aporta seguridad al usuario y se «premia» en buscadores. Y detalles como poner URLs con nombres significativos y que no acaben en barra, ayudan a poder comunicarlas a los usuarios (por ejemplo https://narratech.com/tool/wordpress).

Borrar todo aquello que sobre (plugins, temas, entradas que hayan podido quedar en la papelera, etc.) también es importante para aligerar al máximo la carga del sitio.

Temas

Lo primero que hay que entender es que para estructurar y sentar las bases del diseño de la web hay que elegir un tema (theme), limpio pero potente. Seguramente los más usados son los de pago, como DIVI o Elementor… o específicos para ciertos usos (una tienda online con WooCommerce podría StoreFront, de los mismos desarrolladores, por ejemplo). Pero también los hay gratuitos, como GeneratePress, OceanWP o Astra… aunque muchos ofrecen extras premium, la parte gratuita suele ser bastante versátil. Existen armazones más complejos como Orbital o Genesis, pero eso es para usuarios que quieran crear temas hijos y entrar a tocar bastante el código PHP.

Las funcionalidades, eso sí, es mejor dejarlas en manos de los plugins.

Plugins

Existen numerosos plugins, con versiones tanto gratuitas como de pago, y es interesante conocer los más populares y su tipología, un tema sobre el que hay muchos videos como este. SEO, optimización de imágenes y del funcionamiento general, caching, copias de seguridad, maquetadores de páginas, traducciones, notificaciones push, formularios de contacto, analíticas, eCommerce, tratamiento del SPAM, gestión de comunidades, inscripciones o reservas, organización de cursos, envío de correos, compartir o registrarse desde redes sociales, etc.

A la hora de estructurar la información del sitio también es importante pensar qué tipos de entradas (posts) vamos a tener, y qué campos (fields) de información van a tener dichas entradas.

Para definir campos cómodamente, sin necesidad de programar, se usa mucho otro plugin importante, llamado Advanced Custom Fields (ACF).

Para poder programar sin necesidad de crear tus propios plugins o insertar código PHP en los ficheros de WordPress, es posible usar plugins como Code Snipets o Lazy Blocks.

Advanced Custom Fields

Los campos personalizados que podemos añadir a una entrada con ACF son de muchos tipos, como por ejemplo:

  • Texto. Si la entrada contiene información sobre una persona, podemos añadir un fragmento de texto largo, como el resumen de su biografía, o uno corto como el identificador de usuario que tiene en LinkedIn. Este identificador lo podríamos mostrar directamente, o juntar con otros textos (añadiendo «https://www.linkedin.com/in/» por delante y «/» por detrás) para componer de manera automatizada y uniforme la URL del perfil de esa persona en dicha red social.
  • URL. Aún más simple sería guardando directamente la URL que nos interese, que luego tendremos que ver cómo mostrar (si va asociada a un texto, una imagen, etc.). Por ejemplo en YouTube hay canales que empiezan por «https://www.youtube.com/channel/«, otros por «https://www.youtube.com/c/«, etc. y es conveniente saber la URL entera.
  • Enlace. Otra posibilidad que ofrece ACF es dejar que añadamos el enlace completo (URL, texto asociado e incluso indicar si queremos que el navegador abra el enlace en otra ventana). Aquí estamos dando la libertad, entrada a entrada, de poner el enlace como se quiera… lo que puede ser útil en algunos casos particulares.

Lazy Blocks

Una de las funcionalidades que tiene es poder crear plantillas (templates), de manera que nada más crear cualquier tipo personalizado de entrada (entradas, páginas, personas, grupos…), nos saldrán unos bloques por defecto. Esto se utiliza para garantizar que, por ejemplo, todas las entradas lleven un cierto encabezado o pie de página. Es posible -aunque algo engorroso- obligar a que no se pueda cambiar esa estructura… algo más suave es simplemente bloquear algunos bloques importantes.

Otra de sus funcionalidades es poder crear bloques con código PHP específico para hacer tareas (por ejemplo, mostrar uno u otro bloque reutilizable según la configuración de idioma -si no pagas Polylang, es la manera de tener «bloques de código» diferentes para español e inglés… buscando el bloque reutilizable que quieras mostrar por su IDa-). Conviene desactivar que ciertos bloques con código que son de uso interno (ejemplo: Show Person Header by Locale, Show Tool Footer by Locale…) aparezcan en las sugerencias de inserción de bloques, cuando estamos editando con normalidad.

En general conviene plantear la mayoría de los bloques con código y de los bloques reutilizables normales de WordPress, como para ser usados libremente en el editor. Los bloques reutilizables sí admiten traducciones con Polylang (ejemplo: Person Header vs. Persona Encabezado).