Chilkat HOME Android™ Classic ASP C C++ C# Mono C# .NET Core C# C# UWP/WinRT DataFlex Delphi ActiveX Delphi DLL Visual FoxPro Java Lianja MFC Objective-C Perl PHP ActiveX PHP Extension PowerBuilder PowerShell PureBasic CkPython Chilkat2-Python Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ Visual Basic 6.0 VB.NET VB.NET UWP/WinRT VBScript Xojo Plugin Node.js Excel Go
(Excel) WordPress Media UploadSee more WordPress ExamplesDemonstrates how to upload a media file to WordPress. For more information, see https://developer.wordpress.org/rest-api/reference/media/#create-a-media-item
' This example requires the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. Dim http As Chilkat.Http Set http = Chilkat.NewHttp ' This example will use WordPress username / Application password authentication using the "Applications Password" plugin. ' See https://wordpress.org/plugins/application-passwords/ ' 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" http.Password = "app_password" http.BasicAuth = True Dim req As Chilkat.HttpRequest Set req = Chilkat.NewHttpRequest req.HttpVerb = "POST" ' Use the Content-Type that corresponds to the type of file you are uploading. ' WordPress supports uploading the following file types: ' Images ' ' .jpg (image/jpg) ' .jpeg (image/jpeg) ' .png (image/png) ' .gif (image/gif) ' .ico (image/x-icon) ' ' Documents ' ' .pdf (applicatin/pdf) ' .doc, .docx (application/msword) ' .ppt, .pptx, .pps, .ppsx (application/mspowerpoint) ' .odt ' .xls, .xlsx (application/msexcel) ' .psd (??? image/vnd.adobe.photoshop,application/x-photoshop,application/photoshop,application/psd,image/psd) ' ' Audio ' ' .mp3 (audio/mpeg) ' .m4a ' .ogg ' .wav (audio/wav) ' ' Video ' ' .mp4, .m4v (video/mp4) ' .mov (video/quicktime) ' .wmv (video/x-ms-wmv) ' .avi (video/avi) ' .mpg (video/mpeg) ' .ogv ' .3gp ' .3g2 req.ContentType = "image/jpg" req.Path = "/wp-json/wp/v2/media" success = req.LoadBodyFromFile("qa_data/jpg/starfish.jpg") If (success = False) Then Debug.Print req.LastErrorText Exit Sub End If req.AddHeader "Content-Disposition","attachment; filename=starfish.jpg" req.AddHeader "Expect","100-continue" Set resp = http.SynchronousRequest("www.yourserver.com",443,True,req) If (http.LastMethodSuccess <> True) Then Debug.Print http.LastErrorText Exit Sub End If Debug.Print "HTTP response status: "; resp.StatusCode Dim jsonResponse As Chilkat.JsonObject Set jsonResponse = Chilkat.NewJsonObject Dim success As Boolean success = jsonResponse.Load(resp.BodyStr) jsonResponse.EmitCompact = False Debug.Print jsonResponse.Emit() ' Sample JSON response: ' (Sample code for parsing the JSON response is shown below) ' { ' "id": 1915, ' "date": "2021-01-19T18:25:01", ' "date_gmt": "2021-01-20T01:25:01", ' "guid": { ' "rendered": "http:\/\/cknotes.com\/wp-content\/uploads\/2021\/01\/starfish.jpg", ' "raw": "http:\/\/cknotes.com\/wp-content\/uploads\/2021\/01\/starfish.jpg" ' }, ' "modified": "2021-01-19T18:25:01", ' "modified_gmt": "2021-01-20T01:25:01", ' "slug": "starfish", ' "status": "inherit", ' "type": "attachment", ' "link": "https:\/\/cknotes.com\/starfish\/", ' "title": { ' "raw": "starfish", ' "rendered": "starfish" ' }, ' "author": 1, ' "comment_status": "closed", ' "ping_status": "closed", ' "template": "", ' "meta": [ ' ], ' "permalink_template": "https:\/\/cknotes.com\/?attachment_id=1915", ' "generated_slug": "starfish", ' "description": { ' "raw": "", ' "rendered": "<p class=\"attachment\"><a href='https:\/\/cknotes.com\/wp-content\/uploads\/2021\/01\/starfish.jpg'><img width=\"120\" height=\"120\" src=\"https:\/\/cknotes.com\/wp-content\/uploads\/2021\/01\/starfish.jpg\" class=\"attachment-medium size-medium\" alt=\"\" loading=\"lazy\" srcset=\"http:\/\/cknotes.com\/wp-content\/uploads\/2021\/01\/starfish.jpg 120w, http:\/\/cknotes.com\/wp-content\/uploads\/2021\/01\/starfish-100x100.jpg 100w\" sizes=\"(max-width: 120px) 100vw, 120px\" \/><\/a><\/p>\n" ' }, ' "caption": { ' "raw": "", ' "rendered": "" ' }, ' "alt_text": "", ' "media_type": "image", ' "mime_type": "image\/jpeg", ' "media_details": { ' "width": 120, ' "height": 120, ' "file": "2021\/01\/starfish.jpg", ' "sizes": { ' "woocommerce_gallery_thumbnail": { ' "file": "starfish-100x100.jpg", ' "width": 100, ' "height": 100, ' "mime_type": "image\/jpeg", ' "source_url": "https:\/\/cknotes.com\/wp-content\/uploads\/2021\/01\/starfish-100x100.jpg" ' }, ' "shop_thumbnail": { ' "file": "starfish-100x100.jpg", ' "width": 100, ' "height": 100, ' "mime_type": "image\/jpeg", ' "source_url": "https:\/\/cknotes.com\/wp-content\/uploads\/2021\/01\/starfish-100x100.jpg" ' }, ' "full": { ' "file": "starfish.jpg", ' "width": 120, ' "height": 120, ' "mime_type": "image\/jpeg", ' "source_url": "https:\/\/cknotes.com\/wp-content\/uploads\/2021\/01\/starfish.jpg" ' } ' }, ' "image_meta": { ' "aperture": "0", ' "credit": "", ' "camera": "", ' "caption": "", ' "created_timestamp": "0", ' "copyright": "", ' "focal_length": "0", ' "iso": "0", ' "shutter_speed": "0", ' "title": "", ' "orientation": "0", ' "keywords": [ ' ] ' } ' }, ' "post": null, ' "source_url": "https:\/\/cknotes.com\/wp-content\/uploads\/2021\/01\/starfish.jpg", ' "missing_image_sizes": [ ' ], ' "_links": { ' "self": [ ' { ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/media\/1915" ' } ' ], ' "collection": [ ' { ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/media" ' } ' ], ' "about": [ ' { ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/types\/attachment" ' } ' ], ' "author": [ ' { ' "embeddable": true, ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/users\/1" ' } ' ], ' "replies": [ ' { ' "embeddable": true, ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/comments?post=1915" ' } ' ], ' "wp:action-unfiltered-html": [ ' { ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/media\/1915" ' } ' ], ' "wp:action-assign-author": [ ' { ' "href": "https:\/\/cknotes.com\/wp-json\/wp\/v2\/media\/1915" ' } ' ], ' "curies": [ ' { ' "name": "wp", ' "href": "https:\/\/api.w.org\/{rel}", ' "templated": true ' } ' ] ' } ' } ' Sample code for parsing the JSON response... ' Use the following online tool to generate parsing code from sample JSON: ' Generate Parsing Code from JSON Dim date_gmt As Chilkat.DtObj Set date_gmt = Chilkat.NewDtObj id = jsonResponse.IntOf("id") date = jsonResponse.StringOf("date") success = jsonResponse.DtOf("date_gmt",False,date_gmt) guidRendered = jsonResponse.StringOf("guid.rendered") guidRaw = jsonResponse.StringOf("guid.raw") modified = jsonResponse.StringOf("modified") modified_gmt = jsonResponse.StringOf("modified_gmt") slug = jsonResponse.StringOf("slug") status = jsonResponse.StringOf("status") v_type = jsonResponse.StringOf("type") link = jsonResponse.StringOf("link") titleRaw = jsonResponse.StringOf("title.raw") titleRendered = jsonResponse.StringOf("title.rendered") author = jsonResponse.IntOf("author") comment_status = jsonResponse.StringOf("comment_status") ping_status = jsonResponse.StringOf("ping_status") template = jsonResponse.StringOf("template") permalink_template = jsonResponse.StringOf("permalink_template") generated_slug = jsonResponse.StringOf("generated_slug") descriptionRaw = jsonResponse.StringOf("description.raw") descriptionRendered = jsonResponse.StringOf("description.rendered") captionRaw = jsonResponse.StringOf("caption.raw") captionRendered = jsonResponse.StringOf("caption.rendered") alt_text = jsonResponse.StringOf("alt_text") media_type = jsonResponse.StringOf("media_type") mime_type = jsonResponse.StringOf("mime_type") media_detailsWidth = jsonResponse.IntOf("media_details.width") media_detailsHeight = jsonResponse.IntOf("media_details.height") media_detailsFile = jsonResponse.StringOf("media_details.file") media_detailsSizesWoocommerce_gallery_thumbnailFile = jsonResponse.StringOf("media_details.sizes.woocommerce_gallery_thumbnail.file") media_detailsSizesWoocommerce_gallery_thumbnailWidth = jsonResponse.IntOf("media_details.sizes.woocommerce_gallery_thumbnail.width") media_detailsSizesWoocommerce_gallery_thumbnailHeight = jsonResponse.IntOf("media_details.sizes.woocommerce_gallery_thumbnail.height") media_detailsSizesWoocommerce_gallery_thumbnailMime_type = jsonResponse.StringOf("media_details.sizes.woocommerce_gallery_thumbnail.mime_type") media_detailsSizesWoocommerce_gallery_thumbnailSource_url = jsonResponse.StringOf("media_details.sizes.woocommerce_gallery_thumbnail.source_url") media_detailsSizesShop_thumbnailFile = jsonResponse.StringOf("media_details.sizes.shop_thumbnail.file") media_detailsSizesShop_thumbnailWidth = jsonResponse.IntOf("media_details.sizes.shop_thumbnail.width") media_detailsSizesShop_thumbnailHeight = jsonResponse.IntOf("media_details.sizes.shop_thumbnail.height") media_detailsSizesShop_thumbnailMime_type = jsonResponse.StringOf("media_details.sizes.shop_thumbnail.mime_type") media_detailsSizesShop_thumbnailSource_url = jsonResponse.StringOf("media_details.sizes.shop_thumbnail.source_url") media_detailsSizesFullFile = jsonResponse.StringOf("media_details.sizes.full.file") media_detailsSizesFullWidth = jsonResponse.IntOf("media_details.sizes.full.width") media_detailsSizesFullHeight = jsonResponse.IntOf("media_details.sizes.full.height") media_detailsSizesFullMime_type = jsonResponse.StringOf("media_details.sizes.full.mime_type") media_detailsSizesFullSource_url = jsonResponse.StringOf("media_details.sizes.full.source_url") media_detailsImage_metaAperture = jsonResponse.StringOf("media_details.image_meta.aperture") media_detailsImage_metaCredit = jsonResponse.StringOf("media_details.image_meta.credit") media_detailsImage_metaCamera = jsonResponse.StringOf("media_details.image_meta.camera") media_detailsImage_metaCaption = jsonResponse.StringOf("media_details.image_meta.caption") media_detailsImage_metaCreated_timestamp = jsonResponse.StringOf("media_details.image_meta.created_timestamp") media_detailsImage_metaCopyright = jsonResponse.StringOf("media_details.image_meta.copyright") media_detailsImage_metaFocal_length = jsonResponse.StringOf("media_details.image_meta.focal_length") media_detailsImage_metaIso = jsonResponse.StringOf("media_details.image_meta.iso") media_detailsImage_metaShutter_speed = jsonResponse.StringOf("media_details.image_meta.shutter_speed") media_detailsImage_metaTitle = jsonResponse.StringOf("media_details.image_meta.title") media_detailsImage_metaOrientation = jsonResponse.StringOf("media_details.image_meta.orientation") post = jsonResponse.StringOf("post") source_url = jsonResponse.StringOf("source_url") i = 0 count_i = jsonResponse.SizeOfArray("meta") Do While i < count_i jsonResponse.I = i i = i + 1 Loop i = 0 count_i = jsonResponse.SizeOfArray("media_details.image_meta.keywords") Do While i < count_i jsonResponse.I = i i = i + 1 Loop i = 0 count_i = jsonResponse.SizeOfArray("missing_image_sizes") Do While i < count_i jsonResponse.I = i i = i + 1 Loop i = 0 count_i = jsonResponse.SizeOfArray("_links.self") Do While i < count_i jsonResponse.I = i href = jsonResponse.StringOf("_links.self[i].href") i = i + 1 Loop i = 0 count_i = jsonResponse.SizeOfArray("_links.collection") Do While i < count_i jsonResponse.I = i href = jsonResponse.StringOf("_links.collection[i].href") i = i + 1 Loop i = 0 count_i = jsonResponse.SizeOfArray("_links.about") Do While i < count_i jsonResponse.I = i href = jsonResponse.StringOf("_links.about[i].href") i = i + 1 Loop i = 0 count_i = jsonResponse.SizeOfArray("_links.author") Do While i < count_i jsonResponse.I = i embeddable = jsonResponse.BoolOf("_links.author[i].embeddable") href = jsonResponse.StringOf("_links.author[i].href") i = i + 1 Loop i = 0 count_i = jsonResponse.SizeOfArray("_links.replies") Do While i < count_i jsonResponse.I = i embeddable = jsonResponse.BoolOf("_links.replies[i].embeddable") href = jsonResponse.StringOf("_links.replies[i].href") i = i + 1 Loop i = 0 count_i = jsonResponse.SizeOfArray("_links.wp:action-unfiltered-html") Do While i < count_i jsonResponse.I = i href = jsonResponse.StringOf("_links.wp:action-unfiltered-html[i].href") i = i + 1 Loop i = 0 count_i = jsonResponse.SizeOfArray("_links.wp:action-assign-author") Do While i < count_i jsonResponse.I = i href = jsonResponse.StringOf("_links.wp:action-assign-author[i].href") i = i + 1 Loop i = 0 count_i = jsonResponse.SizeOfArray("_links.curies") Do While i < count_i jsonResponse.I = i name = jsonResponse.StringOf("_links.curies[i].name") href = jsonResponse.StringOf("_links.curies[i].href") templated = jsonResponse.BoolOf("_links.curies[i].templated") i = i + 1 Loop |
© 2000-2022 Chilkat Software, Inc. All Rights Reserved.