WordPress 5.4-如何防止在自定义域中仅输入某些值

时间:2020-07-21 作者:Vishal

WordPress版本-5.4.2

我正在创建一个WordPress插件,在这个插件中,我需要一个帖子的元数据。我添加了元框accesstype visibility 成功地它是一个选择框,只有固定的3个值。它在块编辑器中工作正常,如下所示。

enter image description here

但是,当我通过进入选项启用自定义字段时。它允许我在文本框中添加任何值,并将其保存,如下所示。

enter image description here

我怎样才能隐藏accesstype visibility 还是添加一个选择框而不是文本框?

1 个回复
SO网友:Antti Koskinen

通过在元数据键上添加下划线,可以使元数据私有,并且在自定义字段列表中不可见。一、 e。_accesstype_visibility

您可以在WP Developer文档中找到更多详细信息,https://developer.wordpress.org/plugins/metadata/managing-post-metadata/#hidden-custom-fields

<小时/>

EDIT 24.7.2020

下面是一个如何使用的示例is_protected_meta() 筛选以使元密钥公开或私有。您可以在此处阅读有关过滤器的更多信息,https://developer.wordpress.org/plugins/hooks/filters/

// first hook we\'re filtering, second our callback, third priority, fourth # of parameters
add_filter( \'is_protected_meta\', \'my_prefix_is_protected_meta\', 10, 3 );
// available parameters can be found on the filter documentation
function my_prefix_is_protected_meta( $protected, $meta_key, $meta_type ) {
    // Force custom meta key to be protected
    if ( \'my_meta_key\' === $meta_key ) {
        $protected = true;
    }
    // Return filtered value so WP can continue whatever it was doing with the value
    return $protected;
}
你可以在你的主题functions.php 文件或中的custom plugin.