古腾堡内部页面链接搜索框

时间:2019-05-02 作者:Razvan Cuceu

我试图在WordPress自定义块中创建一个字段或选择框,用户可以在其中选择页面并存储其ID或URL,就像默认的内部链接字段一样。

enter image description here

唯一的区别是,我只需要该字段,而不需要指向超链接的文本。

我的临时解决方案是从wp api创建一系列帖子,如下所示

var posts = [];
$.getJSON(\'/wp-json/wp/v2/pages?per_page=100\', function(data) {
    $.each(data, function(index, elem) {
        posts.push({
            label: data[index][\'title\'][\'rendered\'],
            value: data[index][\'id\']
        })
    })
});
然后创建一个包含所有页面的选择框

el(SelectControl, {
    className: \'page-selector\',
    label: \'Link\',
    value: linkURL1,
    options: posts,
    onChange: function(label) {
        props.setAttributes({
            linkURL1: label
        })
    },
})
这很好,但有大约80页,很难找到我想要的。看起来是这样的:enter image description here

我现在尝试的是用默认的wordpress内部链接选择器替换选择框,如第一幅图所示。

那是古腾堡的一部分吗?

1 个回复
SO网友:Razvan Cuceu

我找到了一个解决方案,并考虑将其发布在这里,因为其他人可能需要它

el(URLInput, {
  className: props.className,
  value: attributes.linkURL,
  placeholder: i18n.__(\'Set the specific url\'),
    onChange: function( url ) {
      props.setAttributes({ linkURL: url });
    }
})
正是我所需要的。

相关推荐

WordPress与Android的多站点REST API连接被拒绝-在邮递员中使用IP地址时重定向到主页

我已经构建了一个子目录类型的multisite,并在本地主机上安装了wp rest api。下一步是使用rest api将多站点连接到我的android应用程序。这就是问题所在。我已将地址替换为a)localhost/mil/wp-json/... 至b)10.0.2.2:80/mil/wp-json/...结果:ECONNREFUSED(Connection Refused) . 以下是完整的跟踪:D/TRENDTASK: doInBackground do: http://10.0.2.2:80/mi