SQL QUERY es necesario para obtener la categoría POST (taxonomía)? - DEBE ser una sentencia SQL

2

Trabajando en una herramienta fuera de Wordpress para consultar la base de datos de wordpress mediante POST_ID y devolver el Nombre de categoría asociado. Esto es para un sitio web de bienes raíces, y las categorías se denominan "mi_neighborhoods" y son referidas por wp_term_taxonomy.taxonomy.

En una de mis otras consultas para obtener todos los nombres de categoría que uso:

    SELECT *
    FROM wp_term_relationships
    LEFT JOIN wp_term_taxonomy
    ON (wp_term_relationships.term_taxonomy_id = wp_term_taxonomy.term_taxonomy_id)
    LEFT JOIN wp_terms on wp_term_taxonomy.term_taxonomy_id = wp_terms.term_id
    WHERE wp_term_taxonomy.taxonomy = 'mi_neighborhoods'  
    GROUP BY wp_term_taxonomy.term_id

Entonces tengo el POST_ID, necesito devolver el valor de "mi_neighborhoods" para esa publicación.

¿Alguien puede ayudar?

    
pregunta Michael Fever 15.02.2013 - 05:05

1 respuesta

5

Puede probar esta consulta SQL para la taxonomía ' mi_neighborhoods ' y tomemos POST_ID = 1304

SELECT t.*, tt.* FROM wp_terms AS t 
INNER JOIN wp_term_taxonomy AS tt ON (tt.term_id = t.term_id) 
INNER JOIN wp_term_relationships AS tr ON (tr.term_taxonomy_id = tt.term_taxonomy_id) 
WHERE tt.taxonomy IN ('mi_neighborhoods') AND tr.object_id IN (1304) 
ORDER BY t.name ASC;

En general, puedes obtenerlo de esta función:

wp_get_object_terms(1304, 'mi_neighborhoods'); 

EDITAR:

Aquí hay una consulta que le da id/name/slug de todos los términos que pertenecen a la taxonomía ' mi_neighborhoods ':

SELECT t.term_id, t.name, t.slug  
FROM wp_terms AS t 
INNER JOIN wp_term_taxonomy AS tt ON (t.term_id = tt.term_id) 
WHERE tt.taxonomy IN ('mi_neighborhoods') 
ORDER BY t.name ASC

y aquí es el mismo para todos los términos no vacíos:

SELECT t.term_id, t.name, t.slug 
FROM wp_terms AS t 
INNER JOIN wp_term_taxonomy AS tt ON (t.term_id = tt.term_id) 
WHERE tt.taxonomy IN ('mi_neighborhoods') AND tt.count > 0
ORDER BY t.name ASC
    
respondido por el birgire 15.02.2013 - 15:56

Lea otras preguntas en las etiquetas