admin管理员组文章数量:1336633
I use template_lock
to lock some Gutenberg blocks. But I would like to use it in three differents post type.
get_post_type_object();
admit only string, no array.
How to use several post type without repeat three times the same function please ?
function wp_template_lock_subject_imposed() {
$post_type_object = get_post_type_object( 'subject-imposed' );
$post_type_object->template = array(
array( 'acf/text-introduction'),
array( 'acf/text-paragraph')
);
$post_type_object->template_lock = false;
}
add_action( 'init', 'wp_template_lock_subject_imposed' );
function wp_template_lock_subject_free() {
$post_type_object = get_post_type_object( 'subject-free' );
$post_type_object->template = array(
array( 'acf/text-introduction'),
array( 'acf/text-paragraph')
);
$post_type_object->template_lock = false;
}
add_action( 'init', 'wp_template_lock_subject_free' );
function wp_template_lock_dissertation() {
$post_type_object = get_post_type_object( 'dissertation' );
$post_type_object->template = array(
array( 'acf/text-introduction'),
array( 'acf/text-paragraph')
);
$post_type_object->template_lock = false;
}
add_action( 'init', 'wp_template_lock_dissertation' );
I use template_lock
to lock some Gutenberg blocks. But I would like to use it in three differents post type.
get_post_type_object();
admit only string, no array.
How to use several post type without repeat three times the same function please ?
function wp_template_lock_subject_imposed() {
$post_type_object = get_post_type_object( 'subject-imposed' );
$post_type_object->template = array(
array( 'acf/text-introduction'),
array( 'acf/text-paragraph')
);
$post_type_object->template_lock = false;
}
add_action( 'init', 'wp_template_lock_subject_imposed' );
function wp_template_lock_subject_free() {
$post_type_object = get_post_type_object( 'subject-free' );
$post_type_object->template = array(
array( 'acf/text-introduction'),
array( 'acf/text-paragraph')
);
$post_type_object->template_lock = false;
}
add_action( 'init', 'wp_template_lock_subject_free' );
function wp_template_lock_dissertation() {
$post_type_object = get_post_type_object( 'dissertation' );
$post_type_object->template = array(
array( 'acf/text-introduction'),
array( 'acf/text-paragraph')
);
$post_type_object->template_lock = false;
}
add_action( 'init', 'wp_template_lock_dissertation' );
Share
Improve this question
edited May 25, 2020 at 11:06
Jandon
asked May 25, 2020 at 10:56
JandonJandon
1471 silver badge9 bronze badges
1 Answer
Reset to default 1This is more of a PHP question than a WordPress one but you could do the following:
function wp_template_lock_example() {
// Make an array of your post types
$post_types = array('subject-imposed', 'subject-free', 'dissertation');
// Loop the array and apply the template details to each.
foreach ( $post_types as $post_type ) {
$post_type_object = get_post_type_object( $post_type );
$post_type_object->template = array(
array( 'acf/text-introduction'),
array( 'acf/text-paragraph')
);
$post_type_object->template_lock = false;
}
}
add_action( 'init', 'wp_template_lock_example' );
Hope it helps!
本文标签: Gutenberg blockstemplatelock with several post type
版权声明:本文标题:Gutenberg blocks - template_lock with several post type 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1742399361a2467570.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论