¿Explicación de los ganchos de filtro “posts_join” y “posts_fields”?

2

Soy nuevo en los ganchos de filtro "posts_" y quería saber algunas cosas de los que saben:

En esta pregunta , alguien publicó una respuesta usando posts_join que tomó un segundo parámetro de $query :

add_filter('posts_join',array(&$this,'posts_join'),10,2);

...

function posts_join($join,$query) {

}

¿Es esta una instancia de wp_query o algo similar?

Mismo ejemplo:

¿Cómo determinaría el tipo de publicación para poder hacer uniones personalizadas para cada tipo de publicación personalizada que tengo en el lado del administrador?

¿Qué hace el gancho de filtro posts_fields ? del ejemplo que he visto, parece que reemplaza las columnas en la cláusula SELECT de una llamada SQL .

¿Estoy en lo cierto al respecto, y tiene también más parámetros que pueden llamarse?

Encuentro algunos ejemplos pero no puedo obtener ninguna documentación sólida en ninguna parte.

    
pregunta Manny Fleurmond 31.12.2010 - 16:08

1 respuesta

7

Cuando utiliza uno de los métodos para consultar los argumentos de las publicaciones ( query_posts() , get_posts() o WP_Query objeto) que usted proporciona, se procesan y se convierten en consulta SQL. Esto sucede en el método WP_Query->&get_posts() .

Dado que los argumentos no son omnipotentes, hay muchos enganches que permiten modificar o anular partes de la consulta SQL resultante.

  • posts_join es parte de la consulta que maneja SQL JOINs: agregar tablas adicionales a la mezcla, por ejemplo, tablas relacionadas con taxonomías cuando son necesarias.

  • posts_fields parece controlar qué campos de la base de datos se devolverán en la consulta, parece que está predeterminado para todos los campos de la tabla posts .

respondido por el Rarst 31.12.2010 - 19:02

Lea otras preguntas en las etiquetas