Ich habe in den letzten Tagen versucht, eine Kategorie aus einem Archiv einfacher digitaler Downloads auszuschließen, das in einem benutzerdefinierten Widget angezeigt wird. Eine Kategorie mit der Bezeichnung "benutzerdefiniertes Projekt" kann ich jedoch nicht ausblenden Egal was ich versuche.
Dies ist der Code, den ich zu verwenden versuche, basierend auf Anweisungen von https://codex.wordpress.org/Class_Reference/WP_Query
$argsQuery = array(
'posts_per_page' => 3,
'post_type' => 'download',
'tax_query' => array(
array(
'taxonomy' => 'download_category',
'field' => 'slug',
'terms' => 'custom-project',
'include_children' => true,
'operator' => 'NOT_IN'
)
),
);
$get_latest_downloads = new WP_Query( $argsQuery );
$i=1;
while ( $get_latest_downloads->have_posts() ) : $get_latest_downloads->the_post();
//WIDGET BODY CODE
$i++;
endwhile;
Ich habe auch versucht, 'cat' anstelle von 'tax_query' zu verwenden, aber ohne Erfolg, da die Kategorie 'custom-project' immer noch in der Schleife der Beiträge angezeigt wird.
$argsQuery = array(
'posts_per_page' => 3,
'post_type' => 'download',
'cat' => '-5',
);
$get_latest_downloads = new WP_Query( $argsQuery );
$i=1;
while ( $get_latest_downloads->have_posts() ) : $get_latest_downloads->the_post();
//WIDGET BODY CODE
$i++;
endwhile;
Ich bin sicher, dass der Name des Slugs und die Kategorie-ID korrekt sind. Jede Art von Hilfe wird sehr geschätzt.
In Ihrer Steuerabfrage sollten Sie NOT IN
anstelle von NOT_IN
verwenden. Dies verhindert, dass Ihre Steuerabfrage funktioniert (vorausgesetzt, die anderen Felder sind korrekt).
In Ihren Argumenten für WP_Query()
sollten Sie category__not_in
anstelle von cat
verwenden. Ändern Sie also Ihren Code in:
$argsQuery = array(
'posts_per_page' => 3,
'post_type' => 'download',
'category__not_in' => 5 ,
);
https://codex.wordpress.org/Class_Reference/WP_Query
category__not_in (array) - Kategorie-ID verwenden.
$ argsQuery = array ( 'posts_per_page' => 3, 'post_type' => 'download', 'category__not_in' => array (5) , // Array, kein String );