El módulo de publicaciones pospack relacionadas es una manera simple y fácil de agregar publicaciones contextuales en las que sus visitantes podrían estar interesados cuando llegan a una publicación en su sitio. Para usar esta función, vaya a la configuración de JetPack de su sitio y active el módulo. Toda la magia ocurre detrás de escena, en WordPress.com Cloud: el motor de búsqueda de lenguaje natural del Jetpack escanea todas sus publicaciones, analiza todo su contenido en función de varios factores y devuelve una lista de publicaciones relacionadas para cada una de sus publicaciones. Ahora que Jetpack ha hecho su Magic 1, descubramos cómo personalizar esas publicaciones asociadas o cómo personalizar su exhibición en su sitio.

Reemplace una de las publicaciones relacionadas con un resultado personalizado a veces puede ser útil para insertar una determinada publicación entre las publicaciones relacionadas devueltas para una publicación o más en su sitio. Puede usarlo para promover una de sus publicaciones utilizando. Como la primera asociada Publicación que aparece en la parte inferior de otra publicación popular. Para usar el filtro jetpack_relatedPosts_filter_hits, necesitaremos 2 cosas:
El ID de publicación que queremos insertar en sus publicaciones relacionadas.
Si desea insertar esa publicación asociada solo para una determinada publicación, necesitará la ID de publicación en la que desea cambiar la lista predeterminada de publicaciones similares.
/**
* Reemplace una de las publicaciones relacionadas por un resultado personalizado
*
* @Param Array $ Hits Matriz of Post IDS Devuelve por JetPack.
* @Param String $ post_id ID de publicación de la publicación para la cual tenemos informe Recupery.
*
* @return array $ Hits Matriz de ID de publicación utilizados para construir nuestra lista de publicaciones relacionadas.
*/
Función jeherve_inject_custom_related_post ($ hits, $ post_id) {// ‘2194’ es la publicación para la que actualmente estamos obteniendo publicaciones
if (2194 == $ post_id) {
// Agregar ID de publicación ‘1036’ al frente de nuestra lista predeterminada de informes.
array_unshift ($ hits, array (‘id’ => 1036));
// Eliminar el último elemento de la lista, por lo que mantenemos la misma cantidad de publicaciones relacionadas en total.
array_pop ($ hits);
}
devolver $ hits;
}
add_filter (‘jetpack_relatedPosts_filter_hits’, ‘jeherve_inject_custom_related_post’, 20, 2);
Agregue publicaciones similares a su flujo RSS JetPack de forma predeterminada en la parte inferior de las publicaciones individuales. También puede usar las publicaciones relacionadas con Jetpack Brutte para construir nuestra propia lista de publicaciones relacionadas. Esta clase puede ser muy útil porque tiene control total sobre los resultados y podrá mostrarla en cualquier lugar. En el siguiente ejemplo, agregaremos esa lista al final del contenido de publicación en los flujos RSS.
/**
* Agregue la publicación relacionada con JetPack a RSS Feed.
*
* @param cadena $ contenido publicar contenido.
*
* @return cadena $ contenido publicar contenido.
*/
Función jeherve_related_posts_feed ($ content) {
// Regrese temprano si no estamos en el feed RSS.
if (! is_feed ()) {
devolver $ contenido;
}
// Si JetPack y las publicaciones relacionadas han activas, comencemos.
If (class_existes (‘jetpack_relatedPosts’) && métod_exist (‘jetPack_relatedPosts’, ‘init_raw)) {
// Use la clase RAW para obtener 3 publicaciones reportadas.
$ RELATION = JETPACK_RELATEDPOSTS :: init_raw ()
-> set_query_name (‘jetpackme-shortcode’) // opcional, nombre sea cualquiera
-> get_for_post_id (
get_the_id (),
Array (‘tamaño’ => 3)
);
if ($ relacionado) {
$ RELATION_LIST = ”;
Foreach ($ relacionado como $ resultado) {// Obtener las identificaciones postales relacionadas
$ RELATION_POST_ID = GET_POST ($ resultado [‘id’]);
/**
* Desde allí puedes casi cualquier cosa, usando la identificación posterior.
*
* En este ejemplo, construiremos una lista.
*/
$ Relation_List. = Sprintf (
‘
%3 $ s
‘
Esc_attr (get_the_title ($ report_post_id),
Get_permalink ($ RATIST_POST_ID),
get_the_title ($ RATIST_POST_ID)
);
}
/**
* Envolvemos todas esas publicaciones reportadas en las etiquetas y agregemos esa lista al final de nuestro contenido de publicación.
*
* También agregaremos un titular, pero solo si se configuró para mostrarse en su configuración de publicación relacionada con Jetpack.
*/
$ Relation_options = jetpack_opptions :: get_option (‘RelationPosts’);
if ($ reportado_options [‘show_headline’]) {
$ Headline = Sprintf (
‘
%s
‘
Esc_html __ (‘Informe’, ‘Jetpack’)
);
} más {
$ Headline = ”;
}
Devolver sprintf (
‘%1 $ s%2 $ s
%$ 3 s
‘
$ contenido,
APLICE_FILTERS (‘JETPACK_RELATEDPOSTS_FILTER_HEADLINE’, $ Headline),
$ reportado_list
);
}
devolver $ contenido;
}
// Fallback pasado, solo en caso de que Jetpack y las publicaciones relacionadas ya no estén allí.
devolver $ contenido;
}
add_filter (‘the_content’, ‘jeherve_related_posts_feed’);
Muestre el nombre de la publicación de publicación en cada publicación similar de forma predeterminada, JetPack muestra información adicional sobre cada publicación asociada bajo el título: la categoría a la que usa las etiquetas. Esta información es buena para mostrar a sus lectores, porque les ayuda a decidir si pueden estar interesados en publicar o no. Lo que puede no saber es que podría agregar un contexto adicional allí. Si más autores publican en su sitio, puede ser útil mostrar el nombre del autor en cada publicación para que los lectores puedan elegir publicaciones de su autor favorito. Para hacer esto, usaremos el filtro JetPack_RelatedPosts_Filter_Post_Context, como:/**
* Muestre el autor de la publicación después del contexto de publicaciones existente.
*


* @param cadena $ contexto contextual que se muestra a continuación cada uno reportado.
* @Param String $ post_id ID de publicación de la publicación para la cual tenemos informe Recupery.
*
* @return string $ contexto de contexto, incluida la información sobre el autor de la publicación.
*/
Función jeherve_related_authors ($ context, $ post_id) {
// Obtener la identificación del autor.
$ post_author = get_post_field (‘post_author’, $ post_id);
// Obtener el nombre de la pantalla del autor.
$ autor_display_name = get_the_author_meta (‘display_name’, $ post_author);
// Agregue el nombre del autor después del contexto.
if (isset ($ autor_display_name) &&! vacía ($ autor_display_name) {
Devolver sprintf (
__ (‘ %1 $ s por %$ 2 s ‘, ‘my-plugin-lug’),
$ contexto,
Esc_html ($ autor_display_name)
);
}
// Fallback final.
devolver $ contexto;
}
add_filter (‘jetpack_relatedPosts_filter_post_text’, ‘jeherve_related_authors’, 10, 2); también puede usar ese filtro para no mostrar ninguna información en las publicaciones relacionadas, como sigue:
add_filter (‘jetpack_relatedPosts_filter_post_text’, ‘__return_empty_string’);
¡Eso es para este mes!Si está interesado en las publicaciones de JetPack, le recomiendo que consulte nuestra documentación de asistencia para descubrir más filtros que podría usar.También puede explorar nuestro código de referencia para descubrir todos los demás ganchos de jetpack.
1. ¿Desea obtener más información sobre las herramientas utilizadas para calcular publicaciones similares para su sitio?Lea aquí sobre Elasticsearch y cómo se ejecuta en la nube de WordPress.com.
homefinance blog