Не присваивается родительская страница
-
Опубликую страницу (тип page) на моем WP сайте .
Это я делаю путем отправки POST запроса на мой сайт.Добавил в файл functions.php на моей WP темы код (см ниже), который принимает данные от post запроса и создает с этими данными страницу (тип page).
Страница нормально создаётся если я в переменой VZIALI_ODIN_JAZIK передаю значение ru, и страница создаётся такая: https://transscreen.ru/news9999
НО! Если в переменой VZIALI_ODIN_JAZIK передаю значение например en то страница не создаётся вообще, хотя статут ответа от POST запроса приходит 200.
Хотя в коде я указал что если в VZIALI_ODIN_JAZIK стоят данные отличные от ru, то нужно создать дочернюю страницу присвоив ей эту родительскую страницу https://transscreen.ru/en/ (у родительской страницы такой id: 42673) и вроде создаваемая страница должна создастся с таким url: https://transscreen.ru/en/news9999
Вопрос: Почему при создании дочерней страницы ей не присваивается родительская страница https://transscreen.ru/en/ ?
Код в файле functions.php который за это отвечает:
// Определение пароля для проверки запросов $my_special_password = "F6f*****СкрылДляВопроса*******0tf"; // ID родительской страницы $parent_page_id = 42673; // Функция для проверки пароля function check_request_password() { global $my_special_password; if (isset($_REQUEST['password']) && $_REQUEST['password'] === $my_special_password) { return true; } return false; } // Функция для создания страницы function create_translated_page() { global $parent_page_id; // Используем глобальную переменную if (!check_request_password()) { return; } $title = isset($_REQUEST['A_TITLE']) ? $_REQUEST['A_TITLE'] : 'No Title'; $content = "<br><br><br><img rel='preload' as='image' title='{$_REQUEST['PODPIS_TITILE_DLA_KARTINKI_DLA_INDEX_YANDEX_GOOGLE']}' src='https://transscreen.ru/all_webp_images/{$_REQUEST['G_PRISTAVKA_DLA_WEBP_KARTINKI']}' alt='{$_REQUEST['PODPIS_TITILE_DLA_KARTINKI_DLA_INDEX_YANDEX_GOOGLE']}' rel='nofollow' width='675' height='{$_REQUEST['IMAGE_HEIGHT']}' class='alignnone size-medium' /> <br><br> {$_REQUEST['TEXT_BOLSHOY_STATIY']}"; $language = isset($_REQUEST['VZIALI_ODIN_JAZIK']) ? strtolower(trim(strval($_REQUEST['VZIALI_ODIN_JAZIK']))) : ''; $url_end = isset($_REQUEST['E_PRISTAVKA_K_URL_NEWS_ZIFRA']) ? $_REQUEST['E_PRISTAVKA_K_URL_NEWS_ZIFRA'] : ''; // Формируем конечный URL $full_page_slug = $url_end; $page = array( 'post_title' => $title, 'post_content' => $content, 'post_status' => 'publish', 'post_type' => 'page', 'post_name' => $full_page_slug, ); // Если язык не 'ru', устанавливаем родительскую страницу if ($language !== 'ru') { $page['post_parent'] = $parent_page_id; } // Создание страницы и логирование возможных ошибок $result = wp_insert_post($page, true); if (is_wp_error($result)) { error_log($result->get_error_message()); } } // Добавляем функцию create_translated_page к инициализации WordPress add_action('init', 'create_translated_page');
Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]
- Для ответа на тему необходимо авторизоваться.