5 cosas que todo desarrollador de WordPress debería conocer
WordPresses una herramienta buenísima y muy potente, pero sólo si conoces todo acerca de él podrás sacarle el máximo provecho.
En esta lista te traigo 5 cosas que debes saber si utilizas WordPresscomo plataforma para crear tus proyectos web.
1.- WP_query() en vez de query_posts()
Aunque se me ocurren muchas razones para o utilizar nunca query_posts, vamos a dejarlo en que jamás deberías utilizar query_posts.
Algunas razones para decir esto es que arranca muchas operationes en background. WP_query (el antiguo get_posts) no hace esto y el resultado es el mismo, pero con un código mucho más limpio y liviano.
En resumen, cuando WordPressrealiza la carga de la consulta principal ANTES de cargar los ficheros del theme (plantilla). Si utilizas query_posts, estás realizando dos cargas de la función principal; la inicial y la propia del query_posts. Si a esto le añadimos las consultas que realiza WordPresspor sí solo, el número no es de sólo dos consultas, sino que sube a unas siete u ocho.
Soluciones:
- Puedes utilizar WP_Query donde tú quieras, te permite generar múltiples búcles en una página. Por esto, la barra lateral, los loops secundarios de una página o cualquier cosa es mejor realizarla con WP_Query.
- Utiliza el filtro pre_get_posts para modificar el búcle principal. Si necesitas modificar de alguna manera el bucle original (por ejemplo suprimir alguna categoría de ser mostrada en él) utiliza el filtro para modificar la consulta principal y no realices otra consulta extra con query_posts.
- Utiliza get_posts() si no necesitas un búcle. A veces mostramos una única entrada o extracto en nuestras plantillas porque el diseño así lo requiere. En estos casos no es bueno hacer un búcle para un sólo post. Extrae ese único post con get_posts() y listo. Te ahorras una gran consulta a la base de datos. Esto también es aplicable para varios posts, la función devolverá un array con los posts solicitados.
2.- Pon en cola tus scripts y estilos
Cuando creas un tema, plugin o personalizas algo de lo anterior debes tener en cuenta los ficheros externos que cargas.
Cada WordPresscontiene muchas cosas y si llamas a una librería de javascript dos veces puede que rompas el funcionamiento del sitio.
Una solución simple es utilizar la función wp_enqueue_script para cargar y registrar una librería, de esta forma te aseguras de que la cargas una sola vez y no hay más copias de ella. También es una buena opción para cargar los ficheros de un framework como Bootstrap o Skeleton, muy a tener en cuenta.
3.- Conoce todos los feeds disponibles
Para explotar las suscripciones de los usuarios (usuarios recurrentes), ¿qué mejor forma que darles la opción de suscribirse a cada sección de nuestra web de forma independiente?
He aquí una pequeña lista con los feeds disponibles en WordPress:
- Principal / General – dominio.com/feed
- General de comentarios – dominio.com/comments/feed
- Comentarios de un post – dominio.com/post-url/feed
- Categorías y etiquetas – dominio.com/categoria/nombrecategoria/feed o dominio.com/etiqueta/nombreetiqueta/feed
- También puedes incluir o excluir categorías del feed – dominio.com/?cat=44,23,12&feed=rss2
- Autor – dominio.com/author/nombredelautor/feed
- Búsqueda – dominio.com/?s=terminodebusqueda&feed=rss2
- Custom post type – dominio.com/feed/?post_type=nombredelcustomposttype
- Etiqueta Custom – dominio.com/feed/?post_type=custom_post_type_name&taxonomy_name=taxonomy
4.- Cómo añadir la imagen a tus feed
Si quieres que un post salga en el feed con una imagen preestablecida, basta con añadir esta funcion al fichero functions.php de tu plantilla:
function featured_image_in_feed( $content ) { global $post; if( is_feed() ) { if ( has_post_thumbnail( $post->ID ) ){ $output = get_the_post_thumbnail( $post->ID, 'medium', array( 'style' => 'float:right; margin:0 0 10px 10px;' ) ); $content = $output . $content; } } return $content; } add_filter( 'the_content', 'featured_image_in_feed' ); |
Fuente: WordPress: Add featured image to RSS feed
5.- Optimiza tu base de datos
Bien utilizando un plugin (recomiendo este) o bien manualmente, es bueno optimizar la base de datos con cierta frecuenta; una vez cada 15 días, por ejemplo. Parece algo absurdo e insignificante, pero es algo que optimiza realmente la carga del sitio web.
¿Recomendarías algo más? ¡Déjame un comentario!