Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PHP ActiveX) WordPress Create PostSee more WordPress ExamplesDemonstrates how to create a WordPress post. For more information, see https://wordpress.org/plugins/application-passwords/
<?php // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // For versions of Chilkat < 10.0.0, use new COM('Chilkat_9_5_0.Chilkat.Http') $http = new COM("Chilkat.Http"); // Use your WordPress login, such as "admin", not the application name. $http->Login = 'wp_username'; // Use the application password, such as "Nths RwVH eDJ4 weNZ orMN jabq" // See WordPress Application Passwords Plugin $http->Password = 'app_password'; $http->BasicAuth = 1; // Note: For this to work, you'll likely need to update your .htaccess file on your WordPress server. // Otherwise you'll get this error: // // 401 : Sorry, you are not allowed to create posts as this user // // Your default .htaccess file probably looks like this: // // <IfModule mod_rewrite.c> // RewriteEngine On // RewriteBase / // RewriteRule ^index\.php$ - // RewriteCond %{REQUEST_FILENAME} !-f // RewriteCond %{REQUEST_FILENAME} !-d // RewriteRule . /index.php // </IfModule> // # END WordPress // // Add the following line immediately after the "RewriteEngine On" line: RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}] // Your .htaccess file should look like this after the edit: // // <IfModule mod_rewrite.c> // RewriteEngine On // RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}] // RewriteBase / // RewriteRule ^index\.php$ - // RewriteCond %{REQUEST_FILENAME} !-f // RewriteCond %{REQUEST_FILENAME} !-d // RewriteRule . /index.php // </IfModule> // # END WordPress // For versions of Chilkat < 10.0.0, use new COM('Chilkat_9_5_0.Chilkat.JsonObject') $json = new COM("Chilkat.JsonObject"); $json->UpdateString('title','This is a test post'); $json->UpdateString('content','<p>This is the HTML body of my post</p>'); // The status can be "draft" or "publish" $json->UpdateString('status','draft'); // Add tags -- but you need to know the ID of an existing tag. // See Chilkat's other WordPress example for creating a tag, or getting the ID of an existing tag. $tagIdx = 0; $json->I = $tagIdx; // When Chilkat sees the literal string "[i]" in the JSON path, it replaces the "i" with the value of the "I" property. $json->UpdateInt('tags[i]',56); $tagIdx = $tagIdx + 1; $json->I = $tagIdx; $json->UpdateInt('tags[i]',75); // .. // resp is a Chilkat.HttpResponse $resp = $http->PostJson3('https://cknotes.com/wp-json/wp/v2/posts','application/json',$json); if ($http->LastMethodSuccess == 0) { print $http->LastErrorText . "\n"; exit; } if ($resp->StatusCode != 201) { print $resp->BodyStr . "\n"; print 'status code = ' . $resp->StatusCode . "\n"; exit; } // For versions of Chilkat < 10.0.0, use new COM('Chilkat_9_5_0.Chilkat.JsonObject') $jResp = new COM("Chilkat.JsonObject"); $jResp->Load($resp->BodyStr); print 'Post ID = ' . $jResp->IntOf('id') . "\n"; print 'Post URL = ' . $jResp->stringOf('link') . "\n"; ?> |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.