Я пытаюсь создать функцию, которая позволила бы мне изменить заголовок установленного мета-блока (т. Е. Изменить заголовок мета-блока «Авторы» на «Команда» и т. Д.)
Я не хотел использовать JS или должен был сбросить исходный мета-блок и заново добавить его.
Я начал со следующего в соответствии с другим потоком, который перечислил код следующим образом:
// hook to the 'add_meta_boxes' action
add_action('add_meta_boxes', 'change_meta_box_titles');
function change_meta_box_titles($post_type, $post)) {
global $wp_meta_boxes; // array of defined meta boxes
// cycle through the array, change the titles you want
}
Я застрял на части "циклически перебирать массив и менять названия, которые вы хотите".
Каков наилучший способ сделать это? Использование foreach для цикла? Или сценарий «переключение / случай»? Я новичок в этом, кто-нибудь может привести пример, как это сделать?
Обновление: пример Стивена Харриса работает для Core Meta (спасибо!):
add_action('add_meta_boxes', 'change_meta_box_titles');
function change_meta_box_titles() {
global $wp_meta_boxes; // array of defined meta boxes
// cycle through the array, change the titles you want
$wp_meta_boxes['post']['normal']['core']['authordiv']['title']= 'Team Member';
}
Обновление: исправлено для пользовательских мета
Чтобы заставить это работать с вашими пользовательскими мета, измените вашу add_action следующим образом, чтобы она запускала ваш код заголовка изменения после добавления мета-блока:
add_action('add_meta_boxes', 'change_meta_box_titles', 999);