Как использовать функцию в цикле foreach без переопределения проблем или размещения вне цикла foreach? - PullRequest
0 голосов
/ 03 мая 2019

Я создаю страницу администратора для моих тем.На странице администратора администраторы смогут перейти на страницу параметров и выбрать, сколько пользовательских типов сообщений они хотят открыть.У меня уже запущена первая часть (на странице, где указывается, сколько пользовательских типов сообщений они хотят и какими должны быть имена этих пользовательских типов сообщений).У меня возникли проблемы со второй частью: использование цикла foreach для получения информации, собранной на первом этапе, и передача ее через функцию для регистрации этого типа записей.

  • При использовании обычной функции возникает фатальная ошибка, связанная с невозможностью переопределить ту же функцию.
  • При выводе функции за пределы цикла foreach я будуя не могу получить информацию для элемента цикла.
  • Помещение функции в переменную заставляет меня задуматься, как я все еще могу использовать имя функции, чтобы add_action перехватывал ее в WordPress.
  • Я не могу найти решение, которое работает или, по крайней мере, я понимаю.Я обычно умею обращаться с PHP довольно хорошо, особенно в отношении работы в WordPress.И хотя проблема кажется простой, решение могло бы быть у меня над головой.

Начало цикла foreach:

foreach($custom_post_type_select as $custom_post_type) {
    $custom_post_type_number = $custom_post_type_integer+1;

    $custom_post_type_name = "custom_post_type_name_$custom_post_type_number";
    $register_custom_post_type_name = $custom_post_type_selection[$custom_post_type_name];

    $custom_post_type_marker = "custom_post_type_activate_$custom_post_type_number";
    $register_custom_post_type_activate = $custom_post_type_selection[$custom_post_type_marker];

Регистрация пользовательского типа записи:

function register_custom_post_type() {
$args = array(
    'public' => true,
    'labels' => array(
        'name' => $register_custom_post_type_name,
        'singular_name' => $register_custom_post_type_name,
    'public' => true,
    'has_archive' => true,
    'supports' => array('title'),
    'show_ui' => true);
register_post_type($register_custom_post_type_name,$args);};

if(stripos($register_custom_post_type_activate,'yes') !== false) {
    add_action('init','register_custom_post_type');}

И конец цикла foreach:

if(++$custom_post_type_integer == $custom_post_type_variable)
    break;}}

Как можно было бы использовать цикл foreach для получения правильной информации и функцию, которая вызываетсяadd_action

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...