@@ -71,20 +71,20 @@ extension RemotePostCreateParameters {
7171 if previous. authorID != authorID {
7272 changes. authorID = authorID
7373 }
74- if previous. title != title {
75- changes. title = title
74+ if ( previous. title ?? " " ) != ( title ?? " " ) {
75+ changes. title = ( title ?? " " )
7676 }
77- if previous. content != content {
78- changes. content = content
77+ if ( previous. content ?? " " ) != ( content ?? " " ) {
78+ changes. content = ( content ?? " " )
7979 }
8080 if previous. password != password {
8181 changes. password = password
8282 }
83- if previous. excerpt != excerpt {
84- changes. excerpt = excerpt
83+ if ( previous. excerpt ?? " " ) != ( excerpt ?? " " ) {
84+ changes. excerpt = ( excerpt ?? " " )
8585 }
86- if previous. slug != slug {
87- changes. slug = slug
86+ if ( previous. slug ?? " " ) != ( slug ?? " " ) {
87+ changes. slug = ( slug ?? " " )
8888 }
8989 if previous. featuredImageID != featuredImageID {
9090 changes. featuredImageID = featuredImageID
@@ -227,7 +227,14 @@ struct RemotePostUpdateParametersWordPressComEncoder: Encodable {
227227 try container. encodeIfPresent ( parameters. password, forKey: . password)
228228 try container. encodeIfPresent ( parameters. excerpt, forKey: . excerpt)
229229 try container. encodeIfPresent ( parameters. slug, forKey: . slug)
230- try container. encodeIfPresent ( parameters. featuredImageID, forKey: . featuredImageID)
230+ if let value = parameters. featuredImageID {
231+ if let featuredImageID = value {
232+ try container. encode ( parameters. featuredImageID, forKey: . featuredImageID)
233+ } else {
234+ // Passing `null` doesn't work.
235+ try container. encode ( " " , forKey: . featuredImageID)
236+ }
237+ }
231238
232239 // Pages
233240 if let parentPageID = parameters. parentPageID {
@@ -316,7 +323,14 @@ struct RemotePostUpdateParametersXMLRPCEncoder: Encodable {
316323 try container. encodeIfPresent ( parameters. password, forKey: . password)
317324 try container. encodeIfPresent ( parameters. excerpt, forKey: . excerpt)
318325 try container. encodeIfPresent ( parameters. slug, forKey: . slug)
319- try container. encodeIfPresent ( parameters. featuredImageID, forKey: . featuredImageID)
326+ if let value = parameters. featuredImageID {
327+ if let featuredImageID = value {
328+ try container. encode ( parameters. featuredImageID, forKey: . featuredImageID)
329+ } else {
330+ // Passing `null` doesn't work.
331+ try container. encode ( " " , forKey: . featuredImageID)
332+ }
333+ }
320334
321335 // Pages
322336 if let parentPageID = parameters. parentPageID {
0 commit comments