Sample code for 30+ languages & platforms
PHP Extension

WordPress Create Tag

See more WordPress Examples

Demonstrates how to create a new tag in Wordpress, or to find the ID of an existing tag.

Chilkat PHP Extension Downloads

PHP Extension
<?php

include("chilkat.php");

$success = false;

// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

$http = new CkHttp();

// Use your WordPress login, such as "admin", not the application name.
$http->put_Login('wp_username');
// Use the application password, such as "Nths RwVH eDJ4 weNZ orMN jabq"
// See WordPress Application Passwords Plugin
$http->put_Password('app_password');
$http->put_BasicAuth(true);

// Create the tag "ChatGPT" if it does not already exist.
$json = new CkJsonObject();
$json->UpdateString('name','ChatGPT');

// This will create the tag if it does not yet exist.
// If the tag already exists, then a 400 status code is returned.
// If the tag deoes not yet exist, then a 201 status code is returned.
$resp = new CkHttpResponse();
$success = $http->HttpJson('POST','https://cknotes.com/wp-json/wp/v2/tags',$json,'application/json',$resp);
if ($success == false) {
    print $http->lastErrorText() . "\n";
    exit;
}

$jResp = new CkJsonObject();
$jResp->Load($resp->bodyStr());

// Check if the tag already exists..
if ($resp->get_StatusCode() == 400) {
    if ($jResp->HasMember('code') == true) {
        if ($jResp->StringOfEquals('code','term_exists',true) == true) {
            // The tag already exists.
            print 'The tag already exists.' . "\n";
            print 'Tag ID: ' . $jResp->IntOf('data.term_id') . "\n";
            exit;
        }

    }

    // Fall through to check for errors.
}

// Check for errors.
if ($resp->get_StatusCode() != 201) {
    print $resp->bodyStr() . "\n";
    print 'status code = ' . $resp->get_StatusCode() . "\n";
    exit;
}

// We get here if the tag was created..
print 'The tag was created.' . "\n";
print 'Tag ID = ' . $jResp->IntOf('id') . "\n";

?>