Я создаю плагин для Wordpress, где я извлекаю данные из XML-фида и отправляю все эти данные с помощью функции wp_insert_post(). Плагин запускается каждый час, поэтому я должен предотвращать двойные сообщения.Только сообщение, если оно еще не существует
Я попытался добавить фильтр и сравнить post_date с XML-фидом с тем, что было в Wordpress (поскольку я даю сообщение тот же пост_данец, что и XML), но он не работает, и я не могу понять почему ..
Вот мой код:
add_filter('posts_where', 'checkPosts'); //I add a filter
$query = new WP_Query('post_type=event'); // Make a query for the custom post_type 'event'
if(!$query->have_posts()) { //If it doesn't have any posts with the same post_date post it
$post_id = wp_insert_post($post);
wp_set_object_terms($post_id, $genres, 'genre');
}
remove_filter('posts_where', 'checkPosts');
function checkPosts($where = '') {
$where .= " AND post_date = ".$post_date;
return $where;
}
Может кто-то показать мне мои ошибки или дать мне другую технику, чтобы предотвратить одинаковые сообщения в Wordpress?
Да, это имело смысл, но, к сожалению, это не сработало. Я не уверен на 100%, если правильно использую запрос, но это первый раз, когда я действительно нуждаюсь в нем. –