Abfrage, um Daten eines Beitrags zu erhalten, wenn in der Kategorie?

Sie würden denken, dass Sie verwenden könnten

$query = new WP_Query(array( 'p' => $idofpost, 'cat' => $numbers )); 

um den Post zurückzugeben, wenn es sich um eine bestimmte Kategorie handelt (oder Kategorien oder -number, um eine Kategorie auszuschließen).

Seltsamerweise gibt es immer den Post zurück, und $query->request man $query->request anschaut, sieht es so aus, als hätte der SQL-Server keine Erwähnung von Kategorie / Taxonomie.

Ist das ein Fehler oder fehlt mir etwas?

Solutions Collecting From Web of "Abfrage, um Daten eines Beitrags zu erhalten, wenn in der Kategorie?"

Ihre Abfrage funktioniert nicht, da Ihre Taxonomieabfrage einfach ignoriert wird. Dies ist kein Fehler, sondern erwartetes Verhalten.

Wenn Sie p als Parameter verwenden, werden alle anderen Abfrageparameter ignoriert / umgangen, z. B. post_type , tax_query und alle taxonomiebasierten Abfragen wie Kategorie- und Tag-Parameter, da Sie bestimmte Posts direkt als Referenz abfragen.

Ich bin mir nicht sicher, was Sie hier erreichen wollen, aber Sie müssen sich WP_Query und alle verfügbaren Parameter WP_Query und diejenigen verwenden, die für das, was Sie benötigen, direkt relevant sind. Außerdem kann dies ein strukturelles oder Planungsproblem auf Ihrer Seite sein, das Sie vielleicht dazu bringen wird, zu überdenken, was Sie zu tun und zu erreichen versuchen

BEARBEITEN

Aus den Kommentaren

Diese Art von Sinn macht Sinn, aber tatsächlich has_password, post_status, vielleicht andere, wird in diesem Fall korrekt filtern, ob die Post zurückgeben oder nicht

Das müssen Sie gehen und herumspielen und die SQL-Anfrage überprüfen. AFAIK, wenn Sie einen Post direkt mit p abfragen, wird der Post trotzdem zurückgegeben. Ich verstehe immer noch nicht genau, was genau in der WP_Query class passiert.

Der aktuelle Quellcode für die WP_Query class kompromittiert 3716 Codezeilen. query.php schließt den ersten Abschnitt in der Datei query.php , in dem die bedingten functionen definiert sind

Das ist viel zu viel, um den Kopf herumzulegen. Ich denke, der beste Weg wird sein, einige Tests selbst zu machen und verschiedene Szenarien zu testen und dies gegen den Quellcode zu überprüfen. Ich glaube nicht wirklich, dass dies ein Arbeitstag ist. Sie werden verrückt, wenn Sie wirklich versuchen und verstehen, was in WP_Query in ein oder zwei Tagen passiert, vielleicht auch einen Monat 🙂