Hoy en AyudaWordPress.com | ![]() |
Cómo personalizar las entradas relacionadas de JetPack Posted: 16 Sep 2014 05:33 AM PDT Vale que hay muchos plugins con los que mostrar entradas relacionadas desde hace años, incluso puedes mostrar entradas relacionadas sin plugin, pero está también claro que JetPack se está convirtiendo en un estándar y mucha gente aprovecha lo que tiene antes que buscar otras alternativas, aunque sean mejores.
El problema con el módulo de entradas relacionadas de JetPack es que, por defecto, no permite prácticamente ninguna personalización, ni de ubicación, ni de aspecto, es tal cual, te guste o no. Pero esto no es del todo cierto, pues hay personalizaciones que se pueden hacer al módulo de entradas relacionadas de JetPack, mediante códigos ofrecidos por los desarrolladores, que puedes incluir en un plugin específico o en el fichero Cambiar el número de entradas relacionadas que se muestranPor defecto, el módulo de entradas relacionadas añade 3 entradas como mucho. Puedes cambiar este número mediante el filtro //Cambiar número de entradas relacionadas de jetpack function jetpackme_more_related_posts( $options ) { $options['size'] = 6; return $options; } add_filter( 'jetpack_relatedposts_filter_options', 'jetpackme_more_related_posts' ); En este ejemplo se mostrarán 6 entradas relacionadas. Mover las entradas relacionadas a la parte superior del contenidoLas entradas relacionadas se colocan antes de los comentarios, y esto no es siempre la mejor opción. Si quieres puedes cambiar este comportamiento por defecto y moverlas a la parte superior por encima del contenido de la entrada con el filtro //Mover entradas relacionadas a la parte superior del contenido function jetpackme_move_related_posts_to_top( $options ) { $options['show_above_content'] = true; return $options; } add_filter( 'jetpack_relatedposts_filter_options', 'jetpackme_move_related_posts_to_top' ); Insertar entradas relacionadas en el contenidoOtra opción interesante puede ser mostrar las entradas relacionadas en cualquier parte de tu contenido. Hacerlo es tan sencillo como incluir el Lo mejor de todo es que si insertas este Poner las entradas relacionadas en cualquier lugar del tema a elegirSi quieres controlar exactamente dónde se mostrarán las entradas relacionadas, y no te vale ponerlas en la parte superior ni quieres estar poniendo Lo primero es añadir el siguiente código a tu plugin de funciones o //Quitar entradas relacionadas de jetpack function jetpackme_remove_rp() { $jprp = Jetpack_RelatedPosts::init(); $callback = array( $jprp, 'filter_add_target_to_dom' ); remove_filter( 'the_content', $callback, 40 ); } add_filter( 'wp', 'jetpackme_remove_rp', 20 ); Ahora puedes mostrar las entradas relacionadas de dos maneras, o usando el <?php echo do_shortcode( '[jetpack-related-posts]' ); ?> Cambiar el texto “Relacionado” que sale sobre las entradas relacionadasOtro truco sencillo. En esta ocasión cambiamos el texto por defecto, “Related”, por algo como “Quizás también te interese …” //Cambiar texto entradas relacionadas jetpack function jetpackme_related_posts_headline( $headline ) { $headline = sprintf( '<h3 class="jp-relatedposts-headline"><em>%s</em></h3>', esc_html( 'Quizás también te interese ...' ) ); return $headline; } add_filter( 'jetpack_relatedposts_filter_headline', 'jetpackme_related_posts_headline' ); Reemplazar una de las entradas relacionadas por un resultado definido por ti, una entrada concretaLo que hay que hacer es indicar el ID de la entrada que queramos que aparezca siempre, esté relacionada o no. En este código de ejemplo usamos el ID de entrada //Entrada relacionada fija function jetpackme_append_related_post( $hits, $post_id ) { array_unshift( $hits, array( 'id' => 2345 ) ); return $hits; } add_filter( 'jetpack_relatedposts_filter_hits', 'jetpackme_append_related_post' ); Excluir entradas concretas para que no aparezcan en las relacionadasUna variación de lo anterior sería no incluir, sino excluir entradas concretas, para que no aparezcan nunca en las relacionadas. De nuevo, los números del ejemplo de código son IDs de entrada que queremos excluir: //Excluir entradas de las relacionadas por ID function jetpackme_exclude_related_post( $exclude_post_ids, $post_id ) { $exclude_post_ids[] = 1144; // Excluye la entrada con ID 1144 $exclude_post_ids[] = 6502; // Excluye también la entrada con ID 6502 return $exclude_post_ids; } add_filter( 'jetpack_relatedposts_filter_exclude_post_ids', 'jetpackme_exclude_related_post' ); Excluir categorías enteras para que no aparezcan sus entradas en las relacionadasPasa muchas veces que tienes alguna categoría genérica que, por incluir palabras clave de todo cuño, aparecen a menudo en las entradas relacionadas, y preferirías excluirlas. Pues nada, en el siguiente ejemplo logramos excluir la categoría con el //Excluir categoria de entradas relacionadas de jetpack function jetpackme_filter_exclude_category( $filters ) { $filters[] = array( 'not' => array( 'term' => array( 'category.slug' => 'cosas-mias' ) ) ); return $filters; } add_filter( 'jetpack_relatedposts_filter_filters', 'jetpackme_filter_exclude_category' ); Que no aparezcan entradas relacionadas en entradas concretasSi sabes de entradas concretas donde no quieras que los lectores se distraigan con esas atractivas entradas relacionadas puedes hacer que no aparezcan simplemente usando el siguiente truco, donde ponemos los ID de las entradas donde no habrá lista de relacionadas: //Sin entradas relacionadas en las siguientes entradas function jetpackme_no_related_posts( $options ) { if ( is_single( array( 17, 19, 1, 11 ) ) ) { $options['enabled'] = false; } return $options; } add_filter( 'jetpack_relatedposts_filter_options', 'jetpackme_no_related_posts' ); Puedes, además, utilizar gran cantidad de Tags condicionales en la línea con el Incluir páginas en los resultados de entradas relacionadasSi añades lo siguiente a tu plugin de funciones también se buscarán resultados relacionados entre las páginas que tengas, no solo entradas. //Incluir páginas en relacionadas de jetpack function jetpackme_add_pages_to_related( $post_type, $post_id ) { if ( is_array( $post_type ) ) { $search_types = $post_type; } else { $search_types = array( $post_type ); } // Añade páginas $search_types[] = 'page' return $search_types; } add_filter( 'jetpack_relatedposts_filter_post_type', 'jetpackme_add_pages_to_related' ); Por supuesto, todo esto lo puedes hacer si tienes un WordPress completo y libre, de WordPress.org, no en servicios como WordPress.com Bueno, ¿qué te parece?, son un montón de buenos trucos ¿no? Pues ¡hala, te toca compartir los tuyos!. Si sabes alguno más nos lo cuentas en los comentarios. |
You are subscribed to email updates from Ayuda WordPress To stop receiving these emails, you may unsubscribe now. | Email delivery powered by Google |
Google Inc., 20 West Kinzie, Chicago IL USA 60610 |
No hay comentarios:
Publicar un comentario