Wie filtere ich benutzerdefinierten Post-Typ durch benutzerdefinierte Taxonomie in der neuesten WordPress RESTful API?

Ich habe eine benutzerdefinierte Post-Typ namens Uhr und eine Taxonomie namens clock_category auf meiner Website. Es funktioniert gut und auf alle Uhren kann vom REST Endpunkt https://myapp.dev/wp-json/wp/v2/clock zugegriffen werden

Aber ich weiß nicht, wie man sie nach der Kategorie Uhr filtert, ich möchte alle Uhren aus Holz bekommen

Ich habe verschiedene URLs ausprobiert, aber keine scheint zu funktionieren https://myapp.dev/wp-json/wp/v2/clock?clock_category=wood https://myapp.dev/wp-json/wp/v2/clock ? Uhr_Kategorie = 10

und viele mehr. Alles, was ich bekam, war die volle Ergebnismenge.

Hier ist der Code

 __( '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, dass mir jemand dabei hilft. Ich habe versucht, dies für 5 Stunden zu lösen und nichts scheint zu funktionieren.

Solutions Collecting From Web of "Wie filtere ich benutzerdefinierten Post-Typ durch benutzerdefinierte Taxonomie in der neuesten WordPress RESTful API?"

Wir können die Argumente des /wp/v2/clock Endpoints hier überprüfen:

 https://myapp.dev/wp-json/wp/v2/ 

Wenn wir das Argument 'show_in_rest' => true, hinzufügen, wird beim Registrieren der benutzerdefinierten clock_category Taxonomie eine Unterstützung für dieses GET / POST-Argument hinzugefügt:

 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 .

So filtern Sie die Uhr Beiträge um eine einzige Uhr Kategorie 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 

Ausschließen von einer einzelnen Kategorie-ID:

 https://myapp.dev/wp-json/wp/v2/clock?clock_category_exclude=13 

oder aus mehreren Uhrenkategorie-IDs ausschließen:

 https://myapp.dev/wp-json/wp/v2/clock?clock_category_exclude=13,14