- Не работает отложенная публикация в wordpress
- Описание проблемы
- Причины проблемы
- Решение проблемы отложенной публикации
- Заметки Лёвика
- web программирование, администрирование и всякая всячина, которая может оказаться полезной
- WordPress запись просрочена, не работает отложенная публикация
- Комментарии (2) к записи “Wordpress запись просрочена, не работает отложенная публикация”
- Не работает запланированная публикация
- Google: для восстановления позиций после Core Updates улучшайте контент
- State of SEO 2021: самые крупные вызовы и угрозы
- Как исправить ошибку пропущенного расписания или “Публикация просрочена” в WordPress
- И здесь WordPress дает удар под дых
- Cron Jobs
- WordPress Cron
- Исправление ошибки пропущенного расписания WordPress
- Шаг 1. Установите и активируйте пропущенное расписание WP
- Шаг 2. Проверьте, нет ли пропущенных сообщений в расписании
- Шаг 3: Загрузите WP Crontrol
- Шаг 4: Наслаждайтесь отпуском, дополнительным часом сна, админским днем, чем угодно!
- Последние мысли
Не работает отложенная публикация в wordpress
Всем привет. Хотя я работаю с wordpress довольно давно, никогда не использовал функцию отложенной публикации (просто не было нужды в этом). Вчера у меня возникла такая потребность. Поэтому, в этом посте я хочу коротко описать проблемы, которые появились у меня при использовании отложенной публикации, а также пути их решения.
Описание проблемы
Если коротко, то отложенная публикация из коробки у меня попросту не заработала. Я часто раньше видел вопросы пользователей о том, что у них не работает данная функция. Поэтому, я решил сам не исследовать проблему, а сразу посмотреть, как другие люди решают этот вопрос.
Причины проблемы
Очевидно, что корень проблемы кроется в настройках хостинга. По умолчанию многие хостинг-провайдеры блокируют возможность создания Socket-соединения. С другой стороны, wordpress для отложенных действий не использует стандартный CRON (который идёт вместе с *UNIX), а создаёт свой виртуальный крон wp-cron.php.
Как работает wp-cron.php? Довольно просто. Когда кто-то запрашивает некоторую страницу сайта (не важно: страницу админки или страницу основного сайта), wordpress в том числе активизирует и файл wp-cron.php. Код, описанный в этом файле, проверяет: есть ли новые задачи. Если новые задачи есть, они выполняются.
Так в чём же проблема? WordPress должен активизировать файл wp-cron.php с помощью создания Socket-соединения. Соответственно, если хостинг-провайдер запретил выполнение этой функции, то и отложенная публикация работать не будет.
Решение проблемы отложенной публикации
Существует несколько решений данной проблемы. Самый очевидный из них — это изменение настроек вашего сервера. Вы должны сделать так, чтобы из php работали локальные Socket-вызовы. Возможно, нужно изменить конфиги. Возможно, у вас даже не подключен Socket-модуль.
К сожалению, далеко не всегда мы имеем возможность изменять окружение сайта. Поэтому, нужны другие решения. Первое из них я назвал бы грязным. Оно состоит из нескольких шагов:
- Изменение файла wp-cron.php (никогда не делайте так. ). Вы должны убрать все проверки, которые блокируют прямой вызов файла а-ля https://hixon.ru/wp-cron.php. От версии к версии файл wp-cron.php может меняться, но, скорей всего, вам нужно будет убрать проверку на POST-запрос, а также на размер запроса.
- Дёргать URL вида https://hixon.ru/wp-cron.php тогда, когда вам нужно выполнение некоторых отложенных действий. То есть, если вы сделали отложенную публикацию на 23.06.2014 15-00, то нужно, например, дёрнуть этот URL в 23.06.2014 15-01. Как это сделать? Есть много способов, один из них описан тут — https://hixon.ru/programmirovanie-2/medlennaya-zagruzka-pervoj-stranicy-sajta-na-asp-net-mvc.html
Второй способ заключается в использовании какого-нибудь плагина, который чинит внутренний CRON wordpress. Лично мне понравился плагин WP Missed Schedule Fix Failed Future Posts. Важно, что из-за особенностей реализации плагина, он принесет на сайт дополнительную нагрузку. Поэтому, если вы каждый день не используете отложенную публикацию, то стоит выключить плагин.
Источник
Заметки Лёвика
web программирование, администрирование и всякая всячина, которая может оказаться полезной
WordPress запись просрочена, не работает отложенная публикация
Вместо немедленной публикации записи иногда требуется отложенная публикация. Не все знают, что можно запланировать запись на более позднее время — достаточно вместо кнопки опубликовать нажать ссылку “Изменить” рядом с ней. К примеру, перед отпуском можно написать несколько статей, либо желательно опубликовать статью в заранее определённое время, когда не сможешь находиться у компьютера.
Но, не всё так гладко..
Решив воспользоваться данной возможностью, я понадеялся на автоматическую публикацию записей wordpress. Однако, заглянув чуть позже в админку, увидел несколько записей с пометкой “Запись просрочена“.
Проблему с отложенной публикацией (а точнее с непубликацией) помогает решить WordPress плагин WP Missed Schedule. Установить можно непосредственно из админки wordpress (не забываем активировать после установки).
Плагин может опубликовать все ранее запланированные и просроченные посты. Публикация происходит каждые 5 минут, при этом обновляется не более 5 постов. Для посетителей работа плагина на быстродействии не сказывается (по крайней мере, не ощутимо).
Конечно, вариант с плагином может быть далёк от идеального (разве WP из коробки не должен “нормально” работать с отложенными записями?), но вполне подойдёт для тех, кто не хочет разбираться “почему не работает”
Опубликовано Суббота, Май 5, 2012 в 12:03 в следующих категориях: Без рубрики. Вы можете подписаться на комментарии к этому сообщению через RSS 2.0. Вы можете оставить комментарий. Пинг отключен.
Автор будет признателен, если Вы поделитесь ссылкой на статью, которая Вам помогла:
BB-код (для вставки на форум)
html-код (для вставки в ЖЖ, WP, blogger и на страницы сайта)
ссылка (для отправки по почте)
Комментарии (2) к записи “Wordpress запись просрочена, не работает отложенная публикация”
Если функция запланированной публикации заложена, значит должна работать. И не надо спихивать на плагин, если не знаете решение проблеммы.
[!SPAM DECTECTED somemoreinfo.ru]
Николай, благодарю за внимание к блогу, и к этой заметке в частности.
значит должна работать. И не надо спихивать на плагин, если не знаете решение проблеммы.
Конечно, должна!
Но, к сожалению, есть определённое количество пользователей, которые сообщают о том, что отложенная публикация WordPress не работает. И о том, что запись просрочена.
Поскольку разбираться с настройками хостинга готовы не все.. То вариант решения с плагином вполне приемлемый.
Есть предположение, что в последних версиях WordPress проблемы с отложенной публикации нет…
Если отложенная публикация не работает:
Проверьте часовой пояс (Settings -> General page)
Была ли сохранена заметка в черновики перед тем. Следует опубликовать кнопкой Shedule.
Возможно, на блоге не было посетителей. Следует осуществить выход из учётной записи и открыть главную страницу.
Если запланирована публикация большого количества записей (более 100) — также возможна некорректная работа.
Источник
Не работает запланированная публикация
- Поисковые системы
- Яндекс
- Каталоги сайтов
- Прочие поисковики
- Агрегаторы и доски объявлений
- Практика оптимизации
- Общие вопросы оптимизации
- Частные вопросы — ранжирование, индексация, бан
- Сервисы и программы для работы с SE
- Любые вопросы от новичков по оптимизации
- Ссылочные и пользовательские факторы
- Поисковые технологии
- Doorways & Cloaking
- Трафик для сайтов
- Поисковая и контекстная реклама
- Google Adwords
- Яндекс.Директ
- Тизерная и баннерная реклама
- Общие вопросы рекламы
- Монетизация сайтов
- Партнерские программы в Интернете
- Контекстная реклама
- Google AdSense
- Рекламная Сеть Яндекса
- Размещение тизерной и баннерной рекламы
- Общие вопросы
- Сайтостроение
- Веб-строительство
- Статистика и аналитика
- Доменные имена
- Администрирование серверов
- Хостинг
- Безопасность
- Usability и удержание посетителей
- Копирайтинг
- Социальный Маркетинг
- Вконтакте
- YouTube
- Facebook & Instagram
- TikTok
- Telegram
- Общие вопросы
- Общение профессионалов
- Семинары и конференции
- eCommerce, интернет-магазины и электронная коммерция
- Телефония и коммуникации для бизнеса
- Деловые вопросы
- Финансы
- Cчет в Яндекс.Деньгах
- Криптовалюты
- Инвестиции
- Экономика
- Правовые вопросы
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты — покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки — обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
- О сайте и форуме
- Самое разное
- Курилка
- Встречи и сходки
- Железо и софт
Google: для восстановления позиций после Core Updates улучшайте контент
State of SEO 2021: самые крупные вызовы и угрозы
Веду несколько страниц в Facebook. Все записи публикуем как «отложенные» через сам Facebook.
Со вчерашнего дня все отложенные посты перестали публиковаться в срок (точнее вообще перестали публиковаться) и выводится следующая ошибка:
Может кто в курсе, что это за ошибка и как избавиться от этой проблемы?
У меня отвалились сегодня публикуемые на страницу в ФБ RSS из группы в ФБ.
Пишет что стали не валидные и ошибки всякие.
Изучаю пока ситуацию.
Ситуаци повторяется. Только теперь при нажатии на ссылку «разместить эту публикацию сейчас» . ничего не происходит. Все мои отложенные публикации в течении 3 дней — не публикуются.
В коде замечаю следующую ошибку
Проблема замечена с разных компьютеров, IP, браузеров. При попытке написать в поддержку — также выскакивает ошибка «POST https://www.facebook.com/help/community/async/nux/ 500 (OK) «
Кто-нибудь еще сталкивается с этой проблемой?
Подобная ошибка бывает иногда в Фэйсбук. Нужно переставить пост в ручную и на эти дни воспользоваться внешним автопостингом.
ilarin, Спасибо большое за информацию.
уточнить забыл, что www.postcron.com меня не подводил. Его используют также крупнейшие западные компании.
Vergiliy:
Ситуаци повторяется. Только теперь при нажатии на ссылку «разместить эту публикацию сейчас» . ничего не происходит. Все мои отложенные публикации в течении 3 дней — не публикуются.
В коде замечаю следующую ошибку
Проблема замечена с разных компьютеров, IP, браузеров. При попытке написать в поддержку — также выскакивает ошибка «POST https://www.facebook.com/help/community/async/nux/ 500 (OK) »
Кто-нибудь еще сталкивается с этой проблемой?
Сталкиваюсь с аналогичной проблемой последнее время регулярно.
Для меня проблематично переформировывать записи вручную. Кроме того, сбивается время публикации.
Источник
Как исправить ошибку пропущенного расписания или “Публикация просрочена” в WordPress
Итак, вы потратили бесчисленные часы, создавая информативный, развлекательный и всесторонний высококачественный контент для своего блога. Вы также создали лояльную аудиторию, которая регулярно ожидает от вас публикаций в блогах, используя все лучшие инструменты WordPress.
Или просто нужно сделать так много другой работы, что вы не можете буквально сесть и дословно записывать каждое сообщение в блоге в то время, когда вы хотите его опубликовать.
Ну так что ты делать?
Вы заранее планируете свои публикации в панели управления WordPress, вот что!
Теперь вы можете расслабиться и насладиться поездкой на самолете на Багамы (приятно, правда? ), Или насладиться дополнительным часом сна, чтобы ваши читатели со всего мира не пропустили свой любимый утренний пост в блоге.
И здесь WordPress дает удар под дых
В идеальном мире заблаговременное планирование публикаций в блоге вашего веб-сайта – это надежный способ никогда не пропустить регулярно запланированные публикации, которые нравятся всем вашим читателям. Но иногда WordPress немного сбивается с толку, и после двухнедельного отпуска, вы обнаружваете что ни одна из публикаций вашего веб-сайта не была опубликована во время, вы понимаете, что все было в беспорядке, пока вас не было.
Фактически, вы приходите к выводу, что ни одна из ваших запланированных публикаций не была опубликована в соответствии с установленным вами расписанием, и что пока вас не было, ваш контент просто провисел с ошибкой ”Публикация просрочена“:
И что еще хуже, WordPress никогда не уведомлял вас о том, что чего-то не хватает. Итак, если бы вы только что занимались своей административной работой и регулярно проверяли свой веб-сайт, вы могли бы заметить после первых одного или двух пропущенных сообщений, что что-то пошло не так.
Ошибка пропущенного расписания “Публикация просрочена” WordPress
Если запланированная публикация WordPress не публикуется должным образом, на панели управления отображается сообщение “Публикация просрочена”.
Это означает, что пока вас не было, несмотря на то, что вы настроили публикацию своего сообщения в определенное время, этого не произошло. Это может произойти по ряду причин, хотя наиболее частая причина, которую я обнаружил, была связана с неудачной работой cron.
Cron Jobs
В двух словах, задание cron – это задача, которая запускается с заданным интервалом, которая будет выполняться регулярно, автоматически и без вмешательства человека. Пользователь должен настроить выполнение программы, и задача cron перейдет к ней.
Задания Cron могут быть запланированы на выполнение в фиксированное время, даты или интервалы и включать такие действия, как автоматическое резервное копирование, удаление временных файлов и даже планирование публикаций WordPress заранее для публикации в будущем. Это особенно полезно для повторяющихся задач, которые вы не хотите каждый раз настраивать вручную.
Тем не менее, как я упоминал ранее, WordPress иногда любит иметь собственное мнение и может не выполнять ваши задания cron, как было указано вами.
WordPress Cron
Как подробно объяснил Том Макфарлин, cron-задания WordPress – это то, что он считает «ложными cron-заданиями». Обычно, когда задание cron настраивается в операционной системе, сервер настроен на выполнение этого задания с требуемым интервалом, независимо от того, находится ли кто-нибудь за компьютером или нет.
Однако с заданиями cron в WordPress все работает немного иначе. Когда задание cron установлено, оно планируется и затем записывается в базу данных. Затем, когда пользователь нажимает на веб-сайт, задание cron сканирует систему, проверяя наличие любых запланированных задач и выполняет их.
Если один из посетителей вашего веб-сайта не посетит ваш веб-сайт непосредственно перед тем, как запланированная публикация будет опубликована, ваша публикация не будет выполняться, как планировалось, и вы обнаружите “Публикация просрочена” при следующем входе в свою панель управления WordPress.
Для тех из вас, у кого есть веб-сайты с хорошей посещаемостью, это может никогда не стать проблемой. Однако, если у вас настроено много заданий cron, которые должны выполняться очень регулярно, или если трафик вашего веб-сайта время от времени падает и пропадает, вы столкнетесь со многими неудачными заданиями cron.
Не волнуйтесь, есть относительно простое решение для предотвращения повторения подобных ошибок.
Исправление ошибки пропущенного расписания WordPress
Самый простой способ исправить ошибку пропущенного расписания на панели инструментов WordPress – использовать отличный плагин под названием WP Missed Schedule. Вот некоторые функции, которые WP Missed Schedule предоставляет владельцам веб-сайтов:
- Без снижения производительности сервера, даже при проверке внутренних заданий WordPress cron
- Пропущенные сообщения расписания – единственные проверенные задания cron, поэтому ресурсы не тратятся
- Любые запланированные будущие публикации, хранящиеся в базе данных, будут найдены и исправлены WP Missed Schedule с использованием индексной таблицы для запросов.
- Полное соответствие форматированию запросов к таблицам Hyperdb
- Ремонт 10 элементов в каждом сеансе каждые 15 минут, чтобы оставаться совместимыми с синдикацией каналов WordPress по умолчанию.
- Предназначен для простого или интенсивного использования запланированных будущих публикаций WordPress
- Совместимость с популярными плагинами WordPress, такими как W3 Total Cache и Jetpack.
- Автоматическая настройка
Давайте посмотрим, как установить и настроить WP Missed Schedule, чтобы избежать дорогостоящей ошибки, связанной с отказом ваших читателей от контента, который им нужен.
Шаг 1. Установите и активируйте пропущенное расписание WP
Первое, что вам нужно сделать, это загрузить плагин WP Missed Schedule с GitHub, службы хостинга, используемой разработчиками и проектами с открытым исходным кодом.
Внимание не используйте аналог на GitHub. Так как в нем был обнаружен бекдор.
Шаг 2. Проверьте, нет ли пропущенных сообщений в расписании
Теперь, когда WP Missed Schedule активирован и работает на вашем сайте, вы можете проверить запланированные публикации, которые были бы сочтены «пропущенными», если бы плагин не обнаружил ошибку заранее и не исправил ее.
Для этого перейдите в Плагины > Установленные плагины и прокрутите вниз до Пропущенного расписания WP. Затем нажмите «Miss» и посмотрите, какие сообщения были исправлены. Это гарантирует, что плагин работает правильно.
Если все работает так, как должно, и все ваши запланированные публикации будут опубликованы в нужное время, вы не увидите ни одной публикации, когда нажмете «Пропустить».
Шаг 3: Загрузите WP Crontrol
В дополнение к использованию плагина WP Missed Schedule у вас есть возможность загрузить плагин WP Crontrol для координации с WP Missed Schedule. Этот плагин, когда он активирован на вашем веб-сайте WordPress, позволяет вам просматривать и контролировать то, что происходит в системе WordPress cron.
Например, из админки вы можете:
- Просмотр всех событий cron и связанных с ними деталей
- Редактировать, удалять или немедленно запускать любые события cron
- Добавить новые события cron
- Массовое удаление событий cron
- Добавление, изменение или удаление пользовательских расписаний cron
Экран администратора также покажет вам предупреждающий знак, если ваша система cron работает неправильно. Например, если ваш сервер не может подключиться к самому себе или запустить запланированные события cron, вы увидите уведомление.
Шаг 4: Наслаждайтесь отпуском, дополнительным часом сна, админским днем, чем угодно!
Это оно! После активации WP Missed Schedule ваш веб-сайт готов постоянно проверять наличие неудачных заданий cron. Помните, что хотя вы можете проверить, работает ли плагин, вам не нужно ничего делать. WP Missed Schedule работает автоматически.
Последние мысли
Постоянное предоставление посетителям вашего веб-сайта высококачественного контента является ключом к поддержанию и развитию успешного веб-сайта. Иногда мы не можем находиться за нашими компьютерами, авторизоваться на нашем веб-сайте WordPress и предоставлять нашим читателям прямой поток информации. Вот почему WordPress предоставил нам решение для планирования нашего контента на будущие даты и время.
Я предлагаю использовать такой плагин, как WP Missed Schedule, чтобы легко и автоматически предотвратить публикацию ваших будущих сообщений. Наслаждайтесь отпуском, отдохните своей красотой, поработайте или просто ничего не делайте. Но не беспокойтесь о том, что ваш контент не публикуется, по крайней мере, когда WP Missed Schedule находится в вашем арсенале плагинов.
Источник