我有一堆JSON格式的数据,我正试图将其保存到WordPress的新安装中。
我正在使用puppeteer 登录并创建每个页面,以及wp.blocks.createBlock
以编程方式创建块。
// Input the page title
const headingInput = document.querySelector("#post-title-0");
headingInput.innerHTML = json.data.heading;
var changeEvent = new Event("change", {
bubbles: true,
cancelable: true,
});
headingInput.dispatchEvent(changeEvent);
/**
* Next up, create each of the gutenberg blocks
*/
json.data.blocks.forEach((block) => {
if (
block.className == "feature text-feature"
) {
block.content.forEach((element) => {
if (element.hasOwnProperty("gutenbergBlock")) {
var el = wp.element.createElement;
insertedBlock = wp.blocks.createBlock(
element.gutenbergBlock,
element.attributes
);
wp.data.dispatch("core/editor").insertBlocks(insertedBlock);
}
});
}
});
// Attempt to trigger the save:
document
.querySelectorAll(".editor-post-publish-button")
.forEach((button) => {
console.log("clicking button!");
var clickEvent = new MouseEvent("click", {
view: window,
bubbles: true,
cancelable: false,
});
button.dispatchEvent(clickEvent);
});
在上面,我尝试单击save按钮来保存帖子,但是这部分不起作用。
是否有方法触发页面内容的保存?类似于:wp.blocks.save()
? 我查阅了文件,但找不到如此合适的。