- Confundir el tamaño de imagen que sacará tu HTML con la VERSIÓN de la imagen que utilizas. Una cosa es elegir como imagen la versión thumbnail, que tiene, por ejemplo 150x150px. Y otra muy distinta es que luego tu la muestres con una anchura de 800px, 100% o lo que te dé la gana.
- No configurar el tamaño de los medios. Por defecto tenemos estos 3 tamaños. Pero, por un lado, podemos configurarlos a nuestro gusto (a mi me gusta que la miniatura sea de 300, la media de 800 y la large de 1920). Y por otro lado, podríamos crear nuevos tamaños de miniatura con la función add_image_size. Si todo esto lo defines después de haber subido tus imágenes, recuerda regenerarlas, puedes usar el plugin Regenerate Thumbnails.
Ejemplo:
add_image_size( 'custom-size', 220, 180 ); // 220 pixels wide by 180 pixels tall, soft proportional crop mode
Referencia: https://developer.wordpress.org/reference/functions/add_image_size/ - No poner el campo de fecha como timestamp y querer ordenar o comparar fechas.
- Intentar editar una página cuyo content está controlado por una plantilla.
- No utilizar estilos para elementos que se repiten. Primero tenemos la definición de estilos globales, que puede hacerse tanto en Gutenberg Full Site Editing, como en Oxygen como en Elementor.
Para objetos propios, que hayamos creado nosotros, deberemos usar nuestras propias clases CSS. En Oxygen esta práctica es muy fácil e intuitiva. Y lo haremos de la misma forma que lo haríamos creando nuestro propio tema en Underscores. Pero en Elementor tendrás que jugar con los widget Globales siempre que su contenido sea dinámico, claro. Porque al guardar un widget global, guardamos todo, incluido su contenido. - Poner current post id en un formulario para crear nuevos posts (o en el de editar sin que el form esté en la single del post).
- Dejar accesibles estructuras que no necesitas. El archive se puede desactivar desde la configuración del CPT y la single, requiere una redirección 301. En el caso de algo realmente privado podemos cambiar publicly_queryable pero nos dará un 404, para estos casos te recomiendo hacer un CCT (link al video).
Ejemplo de redirección 301:
add_action( 'template_redirect', 'redirige_post' );
function 'redirige_post' () {
if ( is_singular( 'cpt-slug' ) ) {
wp_redirect( home_url(), 301 );
// o aquí lo que quieras
exit;
}
} - Copiar y pegar código sin entender lo que hacemos. Si aún no controláis bien WordPress a nivel de código, os recomiendo jugar con los snippets que utilicéis. Si has puesto un snippet que saca el rol del usuario conectado, juega con él, intenta sacar su nombre, lo que sea. Y juega un poco con él para ir entendiendo cómo funciona. Ejemplo buscando en la documentación de WordPress.
- No utilizar ninguna herramienta para debuggear o inspeccionar errores. Sin tener que irnos a nada avanzado, puedes hacer 2 cosas. La primera es utilizar la consola de Chrome. En el apartado consola, vamos a poder ver cualquier error, por ejemplo, si no nos funciona la carga de imágenes en un formulario, enseguida veremos que quizá tengamos un error cargando la librería de JQuery (tal vez porque haya otro plugin cargándola de forma incorrecta). Por otro lado, recordad que tenéis la función WP_DEBUG que podéis activar desde vuestro archivo wp-config.php en la raíz de vuestra instalación de WordPress:
// Activa el modo debug
define('WP_DEBUG', true);
// Coloca todos los errores en un archivo de texto en /wp-content/debug.log
define('WP_DEBUG_LOG', true);
// No muestres los errores en la pantalla, solo colócalos en el log /wp-content/debug.log
define('WP_DEBUG_DISPLAY', false);
// Asegura que los errores no se muestren en el frontend
@ini_set('display_errors', 0); - No separar el diseño de la funcionalidad. Los temas de WordPress sirven para controlar el estilo y apariencia de nuestra web y en ningún caso deberían llevar funciones. Cuando utilizáis temas tipo “Restaurant” que te meten funciones para la carta, el menú y otras mierdas, lo que estáis haciendo es casaros con la apariencia de la web. Ya que si un día quieres cambiar de tema, perderás las funciones. ¡No tiene puto sentido!. Para trabajar funciones tenemos los plugins. Una función debería funcionar independientemente del tema o estilo que tenga la web. Y quien dice plugins, dice plugins de terceros, el tuyo propio, o código en Code Snippets. ¡Pero jamás metáis funciones en el archivo functions.php! ese archivo es para funciones ligadas al tema.