javascript - 在 Wordpress Gutenberg 自定义块中显示自定义帖子类型列表
问题描述
我正在尝试让我的 Wordpress 插件/主题的用户(它使用自定义帖子类型来处理产品)制作一个显示这些自定义帖子之一摘要的块。我试图通过在我的插件中创建一个自定义块来实现这一点,基于官方教程。在 Gutenberg 后端,我想简单地显示一个选择框,其中包含所有自定义帖子作为选项,但我愿意接受建议。
我试图阅读我可以在块的 javascript 文件中传递给getEntityRecords函数的内容,但文档似乎真的很少。如果有人能指出我正确的方向,我将不胜感激。我也尝试过设置'taxonomy'
而不是'postType'
,但它也不起作用。如果没有好的 API 文档,可能的选项和参数很难猜测。
这是(部分)我的代码。我想知道第getEntityRecords
3 行的可能参数。
edit: withSelect( function( select ) {
// setting postType to 'product' does not work for me here
var pages = select('core').getEntityRecords('postType', 'page', { per_page: 10 });
return {
posts: pages
};
} )( function( props ) {
if ( ! props.posts ) {
return "Loading...";
}
if ( props.posts.length === 0 ) {
return "No posts";
}
var className = props.className;
var post = props.posts[ 0 ];
var options = [];
for (var i = 0; i < props.posts.length; i++) {
var option = el(
'option',
{ value: props.posts[i].id },
props.posts[i].title.rendered
);
options.push(option);
}
var select = el(
'select',
{ className: className },
options
);
return select;
} ),
解决方案
如果您遇到与我相同的问题:在声明您必须拥有的自定义帖子类型时,'show_in_rest' => true,
因为这些块是基于 restAPI 的;)希望这会有所帮助
推荐阅读
- json - 无法使用 powershell 创建正确的 json 对象
- amazon-web-services - EMR 集群不会因 stepfunction 失败而终止
- jmeter - 100 个用户同时发出 20 个不同 http 请求的 JMeter 测试计划
- apache-camel - Camel ActiveMQ 回复问题
- python - Matplotlib 时间序列热图可视化行修改
- javascript - 使用 Jest 测试 jquery ajax 调用
- javascript - 如何在javascript中从地图中获取最后一个索引和值
- python-3.x - 如何使用内置函数作为参数编写用户定义的函数,该函数具有我想在其上运行循环的参数?
- python-3.x - 在python中上传boto3文件
- django - 如何在 Django 中显示今天、昨天和过去 7 天的数据?