WordPress sql : Alle Kategorien eines Beitrags abrufen

Lesezeit: 1 Minute

Ich habe einen Beitrag und er hat mehrere Kategorien. Wie kann ich alle Kategorien dieses Beitrags per SQL-Abfrage abrufen? Vielen Dank.

Sie können Beitragskategorien mit diesem SQL abrufen:

SELECT wt.* FROM wp_posts p
 INNER JOIN wp_term_relationships r ON r.object_id=p.ID
 INNER JOIN wp_term_taxonomy t ON t.term_taxonomy_id = r.term_taxonomy_id
 INNER JOIN wp_terms wt on wt.term_id = t.term_id
WHERE p.ID=1 AND t.taxonomy="category"

  • Macht keinen Sinn. Was Sie abfragen, sind Posts, keine Kategorien.

    – reggie

    10. Dezember 2021 um 12:04 Uhr

  • Die Abfrage wählt aus wt.* was im aktuellen Kontext ist wp_terms Tabelle wie im dritten INNER JOIN definiert.

    – Dimitar Atanasov

    9. Februar 2022 um 12:30 Uhr


Überprüfen Sie diesen Code –

$post_categories = wp_get_post_categories( $post_id );
$cats = array();

foreach($post_categories as $c){
    $cat = get_category( $c );
    $cats[] = array( 'name' => $cat->name, 'slug' => $cat->slug );
}

Referenz: http://codex.wordpress.org/Function_Reference/wp_get_post_categories

  • Dies ist keine SQL-Abfrage.

    – ChrisRae

    27. Oktober 2021 um 22:12 Uhr

versuchen

select c.*
from wp_categories c
inner join wp_post2cat pc on pc.category_id = c.cat_ID
inner join wp_posts p on pc.post_id = p.id
where p.id = 1

  • -1 Unterbricht bei jeder Installation mit einem Tabellenpräfix != wp_. Oh, und auch bei Installationen an mehreren Standorten.

    – Fuchsie

    25. Juli 2012 um 16:30 Uhr

  • WordPress hat diese Tabellen nicht

    – José Neto

    3. August 2019 um 18:58 Uhr

  • Sieht aus wie die wp_post2cat Die Tabelle wurde in der WordPress-Version 2.3 (damals 2007) entfernt und durch Tabellen mit Bezug zu “Begriffen” ersetzt.

    – Harry Holz

    1. Juli 2021 um 22:02 Uhr

1442170cookie-checkWordPress sql : Alle Kategorien eines Beitrags abrufen

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy