Sample code for 30+ languages & platforms
Visual FoxPro

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 Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loHttp
LOCAL loJson
LOCAL loResp
LOCAL loJResp

lnSuccess = 0

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

loHttp = CreateObject('Chilkat.Http')

* Use your WordPress login, such as "admin", not the application name.
loHttp.Login = "wp_username"
* Use the application password, such as "Nths RwVH eDJ4 weNZ orMN jabq"
* See WordPress Application Passwords Plugin
loHttp.Password = "app_password"
loHttp.BasicAuth = 1

* Create the tag "ChatGPT" if it does not already exist.
loJson = CreateObject('Chilkat.JsonObject')
loJson.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.
loResp = CreateObject('Chilkat.HttpResponse')
lnSuccess = loHttp.HttpJson("POST","https://cknotes.com/wp-json/wp/v2/tags",loJson,"application/json",loResp)
IF (lnSuccess = 0) THEN
    ? loHttp.LastErrorText
    RELEASE loHttp
    RELEASE loJson
    RELEASE loResp
    CANCEL
ENDIF

loJResp = CreateObject('Chilkat.JsonObject')
loJResp.Load(loResp.BodyStr)

* Check if the tag already exists..
IF (loResp.StatusCode = 400) THEN
    IF (loJResp.HasMember("code") = 1) THEN
        IF (loJResp.StringOfEquals("code","term_exists",1) = 1) THEN
            * The tag already exists.
            ? "The tag already exists."
            ? "Tag ID: " + STR(loJResp.IntOf("data.term_id"))
            RELEASE loHttp
            RELEASE loJson
            RELEASE loResp
            RELEASE loJResp
            CANCEL
        ENDIF

    ENDIF

    * Fall through to check for errors.
ENDIF

* Check for errors.
IF (loResp.StatusCode <> 201) THEN
    ? loResp.BodyStr
    ? "status code = " + STR(loResp.StatusCode)
    RELEASE loHttp
    RELEASE loJson
    RELEASE loResp
    RELEASE loJResp
    CANCEL
ENDIF

* We get here if the tag was created..
? "The tag was created."
? "Tag ID = " + STR(loJResp.IntOf("id"))

RELEASE loHttp
RELEASE loJson
RELEASE loResp
RELEASE loJResp