Ich habe auf meiner Website einen benutzerdefinierten Beitragstyp namens "clock" und eine Taxonomie namens "clock_category". Es funktioniert gut und auf alle Uhren kann vom REST -Endpunkt zugegriffen werden https://myapp.dev/wp-json/wp/v2/clock
Aber ich weiß nicht, wie ich sie nach der Uhrenkategorie filtern soll. Ich möchte alle Uhren aus Holz haben
Ich habe verschiedene URLs ausprobiert, aber keine davon scheint zu funktionieren https://myapp.dev/wp-json/wp/v2/clock?clock_category=woodhttps://myapp.dev/wp-json/wp/v2/clock? clock_category = 10
und viele mehr. Alles was ich bekam war die vollständige Ergebnismenge.
Hier ist der Code
<?php
add_action( 'init', 'clock' );
function clock() {
$labels = array(
"name" => __( 'Clock', 'mywp' ),
"singular_name" => __( 'clock', 'mywp' ),
"menu_name" => __( 'Clock', 'mywp' ),
"all_items" => __( 'All Clock', 'mywp' ),
"add_new" => __( 'Add New Clock', 'mywp' ),
"add_new_item" => __( 'Add New Clock', 'mywp' ),
"edit_item" => __( 'Edit Clock', 'mywp' ),
"new_item" => __( 'New Clock', 'mywp' ),
"view_item" => __( 'View Clock', 'mywp' ),
"search_items" => __( 'Search Clock', 'mywp' ),
"not_found" => __( 'No Clock Found', 'mywp' ),
"not_found_in_trash" => __( 'No Clock found in trash', 'mywp' ),
"parent_item_colon" => __( 'Parent Clock', 'mywp' ),
"featured_image" => __( 'Feature Image for Clock', 'mywp' ),
"set_featured_image" => __( 'Set featured Clock image', 'mywp' ),
"remove_featured_image" => __( 'Remove featured image for Clock', 'mywp' ),
"use_featured_image" => __( 'Use featured image for Clock', 'mywp' ),
"archives" => __( 'Clock archives', 'mywp' ),
"insert_into_item" => __( 'Insert into Clock', 'mywp' ),
"uploaded_to_this_item" => __( 'Uploaded to this Clock', 'mywp' ),
"items_list_navigation" => __( 'Clock list navigation', 'mywp' ),
"items_list" => __( 'Clock List', 'mywp' ),
"parent_item_colon" => __( 'Parent Clock', 'mywp' ),
);
$args = array(
"label" => __( 'Clock', 'mywp' ),
"labels" => $labels,
"description" => "Clock",
"public" => true,
"publicly_queryable" => true,
"show_ui" => true,
"show_in_rest" => true,
"rest_base" => "clock",
"has_archive" => false,
"show_in_menu" => true,
"exclude_from_search" => false,
"capability_type" => "post",
"map_meta_cap" => true,
"hierarchical" => false,
"rewrite" => array( "slug" => "clock", "with_front" => true ),
"query_var" => true,
"supports" => array( "title", "editor", "thumbnail", "custom-fields", "page-attributes", "post-formats" ),
"taxonomies" => array( ),
);
register_post_type( "clock", $args );
}
add_action( 'init', 'create_clock_tax' );
function create_clock_tax() {
register_taxonomy(
'clock_category',
'clock',
array(
'label' => __( 'Clock Category' ),
'rewrite' => array( 'slug' => 'clock_category' ),
'hierarchical' => true,
)
);
}
Hoffe, jemand hilft mir dabei. Ich habe versucht, dies für 5 Stunden zu lösen und nichts scheint zu funktionieren.
Wir können die Argumente des /wp/v2/clock
-Endpunkts hier überprüfen:
https://myapp.dev/wp-json/wp/v2/
Wenn wir beim Registrieren der benutzerdefinierten 'show_in_rest' => true,
-Taxonomie das Argument clock_category
hinzufügen, wird dieses GET/POST-Argument unterstützt:
clock_category: {
required: false,
default: [ ],
description: "Limit result set to all items that have the
specified term assigned in the clock_category taxonomy.",
type: "array",
items: {
type: "integer"
}
},
und dieses GET-Argument:
clock_category_exclude: {
required: false,
default: [ ],
description: "Limit result set to all items except those that have the
specified term assigned in the clock_category taxonomy.",
type: "array",
items: {
type: "integer"
}
}
Außerdem wird der Endpunkt /wp/v2/clock_category
hinzugefügt.
So filtern Sie die Zeitangaben nach einer einzelnen Zeitkategorie-ID:
https://myapp.dev/wp-json/wp/v2/clock?clock_category=10
oder nach mehreren Uhrenkategorie-IDs:
https://myapp.dev/wp-json/wp/v2/clock?clock_category=10,11,12
So schließen Sie eine einzelne Kategorie-ID aus:
https://myapp.dev/wp-json/wp/v2/clock?clock_category_exclude=13
oder von mehreren Uhrenkategorie-IDs ausschließen:
https://myapp.dev/wp-json/wp/v2/clock?clock_category_exclude=13,14