Поддержка Проблемы и решения get_page_by_title не находит заголовок

  • Здравствуйте. Добавляю с записи через php вот таким макаром

    
    $post_data = array(
    	'post_title'    => $postTitle,
    	'post_content'  => $postcontent,
    	'post_status'   => 'publish',
    	'post_author'   => 1,
    	'post_category' => array( 5 ),
    	'post_date' => date("Y-m-d H:i:s", $wall[$i]->date)
        );
    $post_id = wp_insert_post( $post_data);
    

    Но перед тем как добавить запись пытаюсь проверить её на уникальность с помощью get_page_by_title.
    if (get_page_by_title($postTitle, "ARRAY_A", array('post')) == null) {//записываем в базу}

    Записи с символами в заголовке, например 8⃣ апреля — день Собора Архангела Гавриила. ☦ почему то ни находит. При чем на beget.ru находит и все хорошо работает. Но на другом хостинге, а именно hostland.ru ни работает. Ни могу понять в чем проблема.

    • Тема изменена 3 года назад пользователем nik24rus.
Просмотр 2 ответов — с 1 по 2 (всего 2)
  • Модератор Yuri

    (@yube)

    Не находит, скорее всего, из-за нетрадиционных символов типа 8⃣ и ☦. Сравните в phpmyadmin сопоставления поля post_title в таблице wp_posts на одном и другом хостинге. Могут быть разные: и utf8_general_ci, и utf8mb4_general_ci, utf8mb4_unicode_520_ci, и т.п. Версия wordpress, php и mysql тоже может иметь значение.

    Автор nik24rus

    (@nik24rus)

    Спасибо ) Была проблема с кодировкой в базе данных. Поставил utf8mb4 COLLATE utf8mb4_unicode_520_ci и все заработало )

Просмотр 2 ответов — с 1 по 2 (всего 2)
  • Тема «get_page_by_title не находит заголовок» закрыта для новых ответов.