На время проведения реконструкции сайт переведён в режим "ТОЛЬКО ЧТЕНИЕ" (Read only). Приносим свои извинения!
MaxHub
Полезности по Maxsite CMS

Проблема: RSS в записях в "будущем" не отображается.

Вопросы-ответы / 16 сентября 2017

Я активно использую механизм отложенных записей. То есть пишу несколько постов на неделю вперед, и живу спокойно. Но есть одна незадача - при появлении такого поста на сайте, он не появляется в фиде RSS - до тех пор, пока не зайдешь в запись и не пересохранишь её.

Никто ни с чем подобным не сталкивался? Есть идеи, как побороть?

Комментариев: 8
  1. Александр, а галочка "Публикация в RSS" стоит у таких записей?

  2. Да, стоит ((

  3. Да, стоит ((

    Тогда другой вопрос - а глобальное кеширование настроено? Пересохранение записи сбрасывает кеш - уж не кеш ли виновен в вашей проблеме?

  4. Я как-то не смотрел в сторону кеширования вообще.

    Сейчас полазил по админке, нашел галку "Динамическое кеширование" - она была выключена. Включил. Посмотрим...

    Кстати, это с 0.80 ошибка была - я собственно, одной из целей обновления на 0.96 и ставил решить проблему с "записями в будущем".

    Илья, подскажите, плиз, мануал по настройке кеша.

    Спасибо!

  5. подскажите, плиз, мануал по настройке кеша.

    Пока такого мануала нет. Но там и не так уж сложно самому разобраться. Вы нашли галочку динамического кеширования с основных опциях. Но есть ещё в настройках шаблона опция "Время кеширования главной страницы", на которую опираются многие кешируемые элементы. Также нужно посмотреть плагин global_cache - там свои опции.

    В контексте вашей проблемы - выключите все указанные точки настройки кеширования (галочки снять, время кеширования в ноль, плагин выключить) и проверить работу RSS. Если проблема останется, то тут нужно глубже рыть тогда и изучать работу кода файлов шаблона (результат вызова функции mso_get_pages), которые отвечают за вывод rss.

  6. Илья, спасибо!

    Вот не думал, что в шаблоне есть свое кеширование... У меня там везде стоял 0, global_cache - в неактивных.

    Попробовал поставить время кеширования - 5 минут (по идее, после этого фид тоже должен пересобраться).

    Если нет - полезу искать проблему "со скальпелем".

    Спасибо за подсказки!

  7. Не помогло ни так, ни так... (ни при сброшенных настройках кеширования, ни с включенными)

    Буду делать вскрытие, о результатах - сообщу smile

  8. Не выходит каменный цветок.Завел issue на github.

    Решение MAX оттуда:

    Это кэширование rss, которое по умолчанию 24 часа. С отложенной публикацией возникает неопределенность — кэш не в курсе что запись должна быть опубликована. Наверное можно уменьшить время rss кэша, например до 1 часа.

    В \shared\type\feed\home.php в конце функция mso_add_cache()

    mso_add_cache($cache_key, ob_get_flush());

    замените на

    mso_add_cache($cache_key, ob_get_flush(), 3600);

    Это установит время кэша 3600 секунд.