Проблема с отложенной публикацией Tickets
Заметил такую проблему, при создании нового тикета не возможно поменять дату публикации, на более старую выводится все равно дата публикации настоящая,
такая же проблема с отложенной публикацией, при назначении даты публикации после наступления назначенной даты тикет не публикуется, при том что если это просто modx документ то он публикуется без проблем
такая же проблема с отложенной публикацией, при назначении даты публикации после наступления назначенной даты тикет не публикуется, при том что если это просто modx документ то он публикуется без проблем
Комментарии: 28
Хотелось бы услышать ответ Василия
Сортировка идет по publishedon или createdon? Кэшированный вызов?
Вообще, хорошо бы приложить чанк/сниппет вызова.
В крайнем случае, в чанке для отображения нужной даты можно оформить вызов как
Вообще, хорошо бы приложить чанк/сниппет вызова.
В крайнем случае, в чанке для отображения нужной даты можно оформить вызов как
[[!dateAgo? &input=`[[*publishedon]]`]]
немного не то
я про это
не срабатывает дата публикации
и так же если изменить дату опубликован на другую дату ничего не меняется дата остается та когда ресурс был опубликрван
я про это
не срабатывает дата публикации
и так же если изменить дату опубликован на другую дату ничего не меняется дата остается та когда ресурс был опубликрван
По отложенной публикации нормально а
так же если изменить дату опубликован на другую дату ничего не меняется дата остается та когда ресурс был опубликован
остается в силе
так же если изменить дату опубликован на другую дату ничего не меняется дата остается та когда ресурс был опубликован
остается в силе
Может, вызов даты вызывается кэшируемым, в результате чего дата берется из кэша?
[[Кэшируемый-сниппет]]
[[!Некэшируемый-сниппет]]
да нет с этим вроде все нормально вот вызов
[[!TicketMeta? &tpl=`tickets.meta` &tplFile=`tickets.meta.file` &getUser=`0` &getSection=`0` &getFiles=`0` &unusedFiles=`0`]]
tickets.meta<div class="info" data-id="[[+id]]">
<span>[[+date_ago]]</span>
</div>
Здравствуйте! Подскажите, как вы решили проблему с отложенной публикацией? у меня и без выводов на странице, в админке после просрочки времени тикет не публикуется, сколько не обновляй страницу. Публикуется только если в ручную нажать опубликовать, либо, что тоже странно — перейдя на редактирования тикета, нажав «сохранить» все сразу публикуется, именно тем временем, которое я указал. Но как вы уже поняли с просрочкой, так как я, увидев, что ничего не работает, зашел и «в ручную» опубликовал тикет…
Публикация и снятие с публикации происходят как раз на сайте. У админки другие задачи.
Не очень понимаю, что нужно сделать :( у обычного документа в modx отложенная публикация работает… а в тикетах нет :(( я думал дело в кэше тикетов… это не то решение — bezumkin.ru/sections/tips_and_tricks/351/#comment-8488? правда не про тикеты речь шла…
У тикетов не предусмотрен механизм автопубликации. Подозреваю, что из-за того, что это фрондэнд компонент. Его создает пользователь и либо сохраняет в черновик, либо публикует. Третьего не дано.
уууххххх. беда :(
весь сайт перевел на них, так как удобнее. и доверился фразе из документации
Так же секция тикетов и сам тикет это расширенный стандартный «modDocument» по этому имеет все те же TV поля, плейсхолдеры и логика работы.странно… ведь доп поле же есть такое… я думаю, Василий бы убрал его, как минимум, написал бы пометочку, если отложенная автопубликация не работает. Очень странно :(
В чем проблема? Сделайте плагин на событие OnDocFormSave
switch ($modx->event->name) {
case 'OnDocFormSave':
if ($resource instanceof Ticket) {
$contexts = array();
$query = $modx->newQuery('modContext');
$query->select($modx->escape('key'));
if ($query->prepare() && $query->stmt->execute()) {
$contexts = $query->stmt->fetchAll(PDO::FETCH_COLUMN);
}
$modx->cacheManager->autoPublish(array_diff($contexts, array('mgr')));
}
break;
}
Спасибо!!!
кстати у меня в админке, у ресурса не появляется статус опубликован после назначенной даты… активируется только, если зайти в ресурс, и снова нажать сохранить, тогда сразу публикуется, я даже не нажимаю опубликовать специально, и на сайт выводится время, которое я указывал, но это бутафория потому что я по сути обновил ресурс спустя 10 минут просроченной даты. Именно поэтому думал, что дело в кэше
Если обновить сайт после назначенной даты, то ресурсы должны опубликоваться, что можно проверить в админке.
пробовал только обновлять страницу в админке и на сайте, ничего не менялось. отчищать кэш сайта не пробовал на тот момент… в любом случае не понимаю, почему это на автомате не делается… ресурсы вызываются через
[[!pdoPage?
&ajaxMode=`scroll`
&showHidden=`1`
&hideContainers=`1`
&tpl=`news_list`
&tplOdd=`news_list2`
&includeTVs=`image`
&parents=`28,44,45,53,47,51,61,62,102,112`
]]
при добавлении параметра &element=`getTickets`
почему то тв image отваливается из новостей…
Тикет публикуется или нет?
тикет публикуется но дата не меняется, то есть в админке она меняется, а на сайте нет
[[!dateAgo? &input=`[[+pub_date]]`]]
вообще ничего не произошло, ничего не появилось даже
[[+pub_date:default=`[[+publishedon]]`]]
— так выводится что-нибудь (в чанке). (возможно, у вас не +, а * в вызове, если чанк вызывается в шаблоне самой новости)
если вывожу так
<div class="row article_list" data-id="[[+id]]">
<div class="col-md-3">
<figure>
<img src="[[!phpthumbon? &input=`[[+preview]]` &options=`w=220&h=160&zc=1&f=jpg`]]" alt="[[+pagetitle]]">
</figure>
</div>
<div class="col-md-9">
<h3><a href="[[~[[+id]]]]">[[+pagetitle]]</a></h3>
<div class="info" data-id="[[+id]]">
<span>[[+pub_date:default=`[[+publishedon]]`]]</span>
<!--<span>Просмотров: [[+views]]</span>
<span><a href="[[~[[+section.id]]]]">[[+section.pagetitle]]</a></span>-->
</div>
<p>[[+introtext:phphypher=`250`]]</p>
</div>
</div>
то результат такой 1422873840
если так <div class="row article_list" data-id="[[+id]]">
<div class="col-md-3">
<figure>
<img src="[[!phpthumbon? &input=`[[+preview]]` &options=`w=220&h=160&zc=1&f=jpg`]]" alt="[[+pagetitle]]">
</figure>
</div>
<div class="col-md-9">
<h3><a href="[[~[[+id]]]]">[[+pagetitle]]</a></h3>
<div class="info" data-id="[[+id]]">
<span>[[!pub_date:default=`[[+publishedon]]`]]</span>
<!--<span>Просмотров: [[+views]]</span>
<span><a href="[[~[[+section.id]]]]">[[+section.pagetitle]]</a></span>-->
</div>
<p>[[+introtext:phphypher=`250`]]</p>
</div>
</div>
то пусто
Отлично, значит результат есть.
Теперь, если дату необходимо представить с возможностями «тикетов» — (сегодня/вчера, 5 минут назад) и так далее, то вам необходимо поставить дополнение DateAgo modstore.pro/packages/utilities/dateago и вызывать в нужном месте таким:
Если же такой необходимости нет, то преобразовать текущий результат (unix timestamp) в обычную дату можно следующим образом:
Формат даты, соответственно, настраивается по желанию (вот перечень доступных).
Теперь, если дату необходимо представить с возможностями «тикетов» — (сегодня/вчера, 5 минут назад) и так далее, то вам необходимо поставить дополнение DateAgo modstore.pro/packages/utilities/dateago и вызывать в нужном месте таким:
[[!dateAgo? &input=`[[+pub_date:default=`[[+publishedon]]`]]`]]
или таким образом:[[+pub_date:default=`[[+publishedon:dateAgo]]`:dateAgo]]
Если же такой необходимости нет, то преобразовать текущий результат (unix timestamp) в обычную дату можно следующим образом:
[[+pub_date:default=`[[+publishedon:strtotime:date=`%a %b %e, %Y`]`:strtotime:date=`%a %b %e, %Y`]]
(возможно, без последнего ":strtotime:date=`%a %b %e, %Y`", но точно не скажу).Формат даты, соответственно, настраивается по желанию (вот перечень доступных).
да теперь все выводит как надо спасибо вам большое
%)
Здравствуйте! что делать, если не публикуется?
ДА я тоже так и не добился работоспособности функционала, перешел на ресурсы и Collections очень удобно попробуйте может подойдет
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.