Gancho / ação após WP_Query obtém postagens para consultar tabelas personalizadas para o meta pós-relacionado

Eu vejo que há ganchos para manipular WP_Query antes que ele obtenha suas postagens (parse_query, pre_get_posts), mas não consigo encontrar nenhum ganchos para depois que o object WP_Query for preenchido. Eu tenho uma tabela personalizada para os metadados pós-associados específicos do plug-in que eu gostaria de obter depois de um object WP_Query estar preenchido.

Solutions Collecting From Web of "Gancho / ação após WP_Query obtém postagens para consultar tabelas personalizadas para o meta pós-relacionado"

Como você não afirmou o que você está tentando alcançar e acabou de mencionar você precisa buscar dados associados. Você tem duas opções para consultar sua tabela personalizada:

  1. Você precisa fazer uma consulta personalizada separadamente usando o ID da postagem a partir do object de postagem durante a iteração sobre as postagens.
  2. Modifique as junções da consulta principal do WordPress, portanto o WordPress obtém os dados da sua tabela personalizada já associados às respectivas postagens.

O exemplo a seguir demonstra o primeiro método.

< ?php function populate_posts_data( $posts, $query ) { global $wpdb; if ( !count( $posts ) ) return $posts; // posts array is empty send it back with thanks. while ( $posts as $post ) { // query to get custom post data from custom table $query = "SELECT * FROM {$wpdb->prefix}my_plugin_table WHERE post_id={$post->ID}"; $results = $wpdb->get_results( $query ); } return $posts; } add_filter( 'the_posts', 'populate_posts_data' ); ?> 

Para o segundo método, você precisará olhar para os posts_where, posts_join, posts_groupby e posts_orderby filters. Por exemplo, você pode dar uma olhada no exemplo da coluna personalizada do @ scribu.

Tente com publish_post , save_post ou wp_insert_post

leia mais aqui