Brands (eteheme_brands) #
The schema defines all the fields that exist within a brand record. Any response from these endpoints can be expected to contain the fields below unless the _filter
query parameter is used or the schema field only appears in a specific context.
Schema #
id (integer) |
Unique identifier for the term. Read-only Context: view, embed, edit |
count (integer) |
The number of published posts for the term. Read-only Context: view, edit |
description (string) |
HTML description of the term. Context: view, edit |
link (string, URI) |
URL of the term. Read-only Context: view, embed, edit |
name (string) |
HTML title for the term. Context: view, embed, edit |
slug (string) |
An alphanumeric identifier for the term unique to its type. Context: view, embed, edit |
taxonomy (string) |
Type attribution for the term. Read-only Context: view, embed, edit One of: category, post_tag, nav_menu, link_category, post_format |
parent (integer) |
The parent term ID. Context: view, edit |
meta (object, array) |
Meta fields. Context: view, edit |
List Brands #
Query this endpoint to retrieve a collection of brands. The response you receive can be controlled and filtered using the URL query parameters below.
Definition #
GET /wp/v2/etheme_brands
Example Request #
$ curl <a href="https://example.com/wp-json/wp/v2/etheme_brands">https://example.com/wp-json/wp/v2/etheme_brands</a>
Example URL #
https://example.com/wp-json/wp/v2/etheme_brands
Arguments #
context |
The scope under which the request is made; determines the fields present in the response. Default: view One of: view, embed, edit |
page |
Current page of the collection. Default: 1 |
per_page |
Maximum number of items to be returned in result set. Default: 10 |
search | Limit results to those matching a string. |
exclude | Ensure the result set excludes specific IDs. |
include | Limit result set to specific IDs. |
order |
Order sort attribute ascending or descending. Default: asc One of: asc, desc |
orderby |
Sort collection by term attribute. Default: name One of: id, include, name, slug, include_slugs, term_group, description, count |
hide_empty | Whether to hide terms not assigned to any posts. |
parent | Limit result set to terms assigned to a specific parent. |
post | Limit results set to terms assigned to a specific post. |
slug | Limit results set to terms with one or more specific slugs. |
Create a Brand #
Definition #
POST /wp/v2/etheme_brands
Example Request from curl (in progress) #
$ curl <a href="https://example.com/wp-json/wp/v2/etheme_brands">https://example.com/wp-json/wp/v2/etheme_brands</a>
Example Request from wp #
$meta = (object) array( 'some_meta' => 'value' ); $image = array( 'src' => 'https://example.com/woocommerce/wp-content/uploads/sites/56/2013/06/T_2_back.jpg', 'alt' => 'some alt', 'title' => 'some title', 'caption' => 'some caption', 'description' => 'some description' ); $api_response = wp_remote_post( 'https://example.com/wp-json/wp/v2/etheme_brands', array( 'headers' => array( 'Authorization' => 'Basic ' . base64_encode( 'user_name:user_password' ) ), 'body' => array( 'name' => 'example brand', 'slug' => 'example-brand', 'description' => 'some description', 'meta' => $meta, 'image' => $image ) ) );
Arguments #
description (string) |
HTML description of the Brand. |
name (string) |
HTML title for the term. Required: 1(true) |
slug (string) |
An alphanumeric identifier for the term unique to its type. |
parent (integer) |
The parent term ID. |
meta (array, object) |
Meta fields. |
image (array, object) |
image data for brand src (string); Required: 1(true) alt (string) title (string) caption (string) description (string) Example array: |
$image = array( 'src' => 'https://example.com/wp-content/uploads/sites/56/2013/06/T_2_back.jpg', 'alt' => 'alt text', 'title' => 'title text', 'caption' => 'caption ', 'description' => 'description' );
Retrieve a Brand #
Definition & Example Request #
GET /wp/v2/etheme_brands/{brand_id}
Example Request #
$ curl <a href="https://example.com/wp-json/wp/v2/etheme_brands{brand_id}">https://example.com/wp-json/wp/v2/etheme_brands{brand_id}</a>
Example URL #
https://example.com/wp-json/wp/v2/etheme_brands{brand_id}
Arguments #
id | Unique identifier for the term. |
context |
Scope under which the request is made; determines the fields present in the response. Default: view One of: view, embed, edit |
Update a Brand #
Definition #
POST /wp/v2/etheme_brands/id
Example Request from curl (in progress) #
$ curl <a href="https://example.com/wp-json/wp/v2/etheme_brands/id">https://example.com/wp-json/wp/v2/etheme_brands/id</a>
Example Request from WP #
$meta = (object) array( 'some_meta' => 'value' ); $image = array( 'src' => 'https://example.com/wp-content/uploads/sites/56/2013/06/T_2_back.jpg', 'alt' => 'some alt', 'title' => 'some title', 'caption' => 'some caption', 'description' => 'some description' ); $api_response = wp_remote_post( 'https://example.com/wp-json/wp/v2/etheme_brands/id', array( 'headers' => array( 'Authorization' => 'Basic ' . base64_encode( 'user_name:user_password' ) ), 'body' => array( 'name' => 'new example brand', 'slug' => 'new-example-brand', 'description' => 'new some description', 'meta' => $meta, 'image' => $image ) ) );
To prevent uploading and setup the same image just remove the image param. If you want to change the image that already exists modify mata param:
$meta = (object) array( 'thumbnail_id' => 5054, // ID of image in media library );
Arguments #
id | Unique identifier for the term. |
description | HTML description of the term. |
name | HTML title for the term. |
slug | An alphanumeric identifier for the term unique to its type. |
parent | The parent term ID. |
meta | Meta fields. |
Delete a Brand #
Definition #
POST DELETE /wp/v2/etheme_brands/id
Example Request #
$ curl -X DELETEhttps://example.com/wp-json/wp/v2/etheme_brands/id
Example Request from WP #
$api_response = wp_remote_post( 'https://example.com/wp-json/wp/v2/etheme_brands/id', array( 'method' => 'DELETE', 'headers' => array( 'Authorization' => 'Basic ' . base64_encode( 'user_name:user_password' ) ), 'body' => array( 'force' => true, ) ) );
or
$api_response = wp_remote_post( 'https://example.com/wp-json/wp/v2/etheme_brands/id?force=true', array( 'method' => 'DELETE', 'headers' => array( 'Authorization' => 'Basic ' . base64_encode( 'user_name:user_password' ) ), ) );
Arguments #
id | Unique identifier for the term. |
force | Required to be true, Brands do not support trashing. |
To setup product brands for products, you can use the default WooCommerce Rest API and add to request etheme_brands
param: etheme_brands (array)
For example when creating the product
$api_response = wp_remote_post( 'https://example.com/wp-json/wc/v3/products/', array( 'method' => 'POST', 'headers' => array( 'Authorization' => 'Basic ' . base64_encode( 'consumer_key:consumer_secret' ) ), 'body' => array( 'name' => 'Premium Quality aaaaaaaaa', "regular_price" => "21.99", "description" => "Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.", "short_description" => "Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas.", 'etheme_brands' => array(45,48), "images" => array(array("src"=> "https://example.com/wp-content/uploads/sites/56/2013/06/T_2_front.jpg"), ), ) ) );
For example when updating the product
$api_response = wp_remote_post( 'https://example.com/wp-json/wc/v3/products/4953', array( 'method' => 'POST', 'headers' => array( 'Authorization' => 'Basic ' . base64_encode( 'consumer_key:consumer_secret' ) ), 'body' => array( "description" => "Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Vestibulum tortor quam, feugiat vitae, ultricies eget, tempor sit amet, ante. Donec eu libero sit amet quam egestas semper. Aenean ultricies mi vitae est. Mauris placerat eleifend leo.", 'etheme_brands' => array(45,48), ) ) );