• DONATE to NULLED!
    Вы можете помочь Форуму и команде, поддержать финансово.
    starwanderer - модератор этого раздела будет Вам благодарен!

Помощь глюки wp_insert_post

Статус
В этой теме нельзя размещать новые ответы.

lena berkova

Местный житель
Регистрация
14 Янв 2009
Сообщения
437
Реакции
21
добавляю посты использя ф-ю wp_insert_post
PHP:
$my_post = array();
    $my_post['post_title']    = $item['post_title'] . date('d.m.y');
    $my_post['post_content']  = Parse($key, $item['alias'], $item['url']);
    $my_post['post_status']   = 'publish';
    $my_post['post_author']   = 1;
    $my_post['post_category'] = array((int)$CategoryID);
    $my_post['tags_input']    = $item['tags_input'];
    $my_post['post_date']     = date('Y-m-d H:i:s');
    $my_post['post_date_gmt'] = date('Y-m-d H:i:s');

    // Insert not empty post into the database
    if ($my_post['post_content'] != '')
    {
        var_dump(wp_insert_post($my_post));
        mylog('parse ' . $key);
    }

так вот иногд возращает ид вставленной записи а иногда 0
куда смотреть чтобы найти проблему?
 
Ну вообще если возвращает "0" значит произошла ошибка при вставке:
WordpressCodex написал(а):
The ID of the post if the post is successfully added to the database. On failure, it returns 0 if $wp_error is set to false, or a WP_Error object if $wp_error is set to true.
наверное имеет смысл проверять предварительно данные которые добавляются через функцию, на корректность?
 
функция срабатывает через раз
вот что выдает в ошибке
База данных WordPress возвратила ошибку MySQL server has gone away в ответ на запрос

уточню что иногда запись вставляется, иногда нет
мускуль загружен на серваке? как исправить?
 
Хостинг значит такой, раз отваливается мускуль при большом количестве запросов, общаться с техподдержкой на предмет смены тарифа - смены хостинга.
На некоторых хостингах идет "отлуп" запросов при большом одновременном количестве. Если все настроено самостоятельно на VDS - курить в сторону настройки mysql по таймауту например через вот это:
wait_timeout и connect_timeout в my.cnf
 
Кэширование в любом случае дает снижение нагрузки и на генерацию контента и на запросы в базу. Далее - оптимизация кода сайта, снижение количества запросов, если есть статические данные которые постоянно берутся из базы, по оптимизации кода на вордпресс что-то подобное было уже на форуме, да и в сети полно информации.
Возможно, что-то даст попытка расковырять функции коннектов в wordpress, но по моему, будет проще сменить хостинг, чем расковыривать функции на предмет установки таймаутов через скрипты.
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху