Post-Migrator/services/wordpress/create-post.go

34 lines
913 B
Go

package wordpress
import (
"encoding/json"
"federated.computer/wp-sync-slowtwitch/utilities"
)
type CreatePost struct {
Title string `json:"title"`
Content string `json:"content"`
Excerpt string `json:"excerpt"`
FeaturedMedia int `json:"featured_media"`
Author int `json:"author"`
Tags []int `json:"tags"`
Status string `json:"status"`
Categories []int `json:"categories"`
Slug string `json:"slug"`
Date string `json:"date"`
}
type CreatePostResponse struct {
Id int `json:"id"`
Link string `json:"link"`
}
func (parameters *CreatePost) Execute(baseUrl, user, pass string) CreatePostResponse {
endpoint := baseUrl + "wp/v2/posts"
body := utilities.PostHttpRequestToWordpress(endpoint, user, pass, parameters)
var post CreatePostResponse
err := json.Unmarshal(body, &post)
utilities.CheckError(err)
return post
}