php - 使用 wp_insert_post() 时如何在 post_content 中插入古腾堡块?
问题描述
我想在 php 中生成一个古腾堡块。
我目前正在开发一个 wordpress 插件,它可以从 youtube 导入视频并为每个视频创建一个帖子。我可以在 post_content 中插入 youtube 视频,但是当我使用古腾堡编辑器编辑帖子时,它不会显示为块。
我在这里阅读了大部分“块编辑器手册” https://developer.wordpress.org/block-editor/ 但除了如何创建自定义块之外我找不到任何东西。我也在谷歌上搜索过,但我发现的一切都是关于创建自定义块的。然而我发现gutenberg块作为html评论存储在post_content中,但评论似乎是通过gutenberg WYSIWYG编辑器用js生成的。
我知道我可以创建一个带有块的帖子并从我的数据库中复制 post_content 然后将其用作“模板”,但我认为这不是正确的方法。
是否有任何关于使用 wordpress 附带的块(即:嵌入、段落)并生成 html 评论的文档,该评论保存在 post_content 和 php 中?甚至可能吗?
解决方案
当您手动添加 YouTube 块时,单击“工具和选项”菜单(右侧)中的“代码编辑器”视图。在代码编辑器视图中,您将看到编辑器正确解析块所需的 HTML。
例如:
<!-- wp:core-embed/youtube {"url":"https://www.youtube.com/watch?v=VIDEOID","type":"video","providerNameSlug":"youtube","className":"wp-embed-aspect-16-9 wp-has-aspect-ratio"} -->
<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
https://www.youtube.com/watch?v=VIDEOID
</div></figure>
<!-- /wp:core-embed/youtube -->
推荐阅读
- asp.net-core - 在 asp.net 核心中定义参数页面指令时出错
- jenkins - Jenkinsfile 语法:从工作区提交到 Subversion SCM 存储库
- regex - 文件名完全匹配的正则表达式模式
- r - 如何有效地存储和检索列表中数据处理期间使用的参数/参数
- constraints - AMPL中二进制的网络流问题?
- identityserver4 - 使用 IdentityServer 代表客户端而不是用户调用 API?
- c# - 不对脚本的一个实例调用 FixedUpdate() 回调
- java - 30 秒后来自 SpeechClient 的 CancellationException
- python - beautifulsoup for-if 循环提取
- php - iOS Swift 5 - 通过调用 PHP 函数将文件上传到服务器