Глеб

Глеб

С нами с 19 сентября 2014; Место в рейтинге пользователей: #234

Как вывести количество комментариев?

Выводим количество комментариев (TicketComments) любых ресурсов (тикеты и простые ресурсы MODX) в любом месте.

Прошелся по страницам сообщества и собрал в один сниппет. Спасибо Василию Наумкину!

Создаем сниппет countComments:
<?php
// считаем комменты тикетов
if ($res = $modx->getObject('Ticket',$id)) {
    if ($res->get('comments') == 0) { return "0";}
    else {return $res->get('comments');}
}

// считаем комменты ресурсов
if ($q = $modx->newQuery('modResource', $id)) {
    $q->leftJoin('TicketThread','TicketThread', "`TicketThread`.`name` = 'resource-{$id}'");
    $q->leftJoin('TicketComment','TicketComment', "`TicketThread`.`id` = `TicketComment`.`thread`");
    $q->select('COUNT(`TicketComment`.`id`) as `comments`');
    
    $count = 0;
    if ($q->prepare() && $q->stmt->execute()) {
    	$count = (integer) $q->stmt->fetch(PDO::FETCH_COLUMN);
    }
    if ($count == 0) { return "0";}
    else {return $count;}
}
Вызывать внутри ресурса так:
[[!countComments? &id = `[[*id]]`]]
Вызывать вне ресурса так:
[[!countComments? &id = `[[+id]]`]]
Василий Stepanov
27 мая 2017, 06:52
modx.pro
3
929
+1

[msFavorites] - апгрейд компонента.

msFavorites — списки избранного.


— работа с любыми ресурсами
— работа с любыми пользователями

Основное отличие от ранних версий работа без каких либо сниппетов, нужно только инициализировать скрипт.
Интерактивные примеры тут msfavorites.vgrish.ru/

Володя
25 мая 2017, 16:34
modx.pro
4
6 143
+7

Вопрос о Fenom и переменных

Всем привет! Перехожу на феном и ломаю шаблоны в голове.
Столкнулся со следующим:

Если вставлять в phpthumbon параметр &input напрямую строкой – все работает

{$_modx->runSnippet('phpthumbon', [
   'input' => 'picture.jpg'
   'options' => 'w=556&h=376&zc=1&q=61'
])}

А вот если я вставлять ту же самую строку, но переменной, то облом:

{var $imgurl = 'picture.jpg'} 
{$_modx->runSnippet('phpthumbon', [
   'input' => '{$imgurl}'
   'options' => 'w=556&h=376&zc=1&q=61'
])}

Подскажите, почему моя схема не работает?
Роман Ильин
09 мая 2017, 05:40
modx.pro
3
6 844
0

Пишем свой информер погоды для сайта


Данный тикет не относится к разработке под MODX, но так как информер я разместил на MODX-сайте, то делюсь наработками здесь.
Вкратце: скрипт парсит XML с погодой и по нескольким условиям выводит результат на сайте.
Итак, XML для своего города берем тут и вставляем ссылку с дописанным /data/ в $rss = simplexml_load_file(...).
Значки «погоды» прилагаются.
Пример работы посмотреть можно тут.
Василий Stepanov
29 апреля 2017, 15:02
modx.pro
4
1 608
+1

[localizator] Мультиязычность, СЕО, автоперевод...



Языковые версии \ сателиты без контекстов, с автоматическим переводом всех полей ресурса + сео, да еще и автоперевод лексиконов — это я уместил в названии localizator.
but1head
23 апреля 2017, 20:57
modx.pro
42
30 441
+32

Реализация раздела "Вопрос - ответ"

День добрый.
Необходимо на сайте реализовать функционал «Вопрос — ответ». Для этого выбрал компонент «Tickets».
что-то типа того — www.moihottur.ru/faq/

читал вот эту тему modx.pro/help/2793/ похожие проблемы.

Необходимо чтобы кнопка «ответить» была только у администратора сайта.

если вызвать так
[[!TicketComments? 
    &allowGuest=`1`
    &autoPublishGuest=`0`
    &autoPublish=`0`
]]
то чанк tpl.Tickets.comment.one.guest игнорируется

а если так:
[[!TicketComments? 
    &allowGuest=`0`
    &autoPublishGuest=`0`
    &autoPublish=`0`
]]
то отзывы не могут писать неавторизованные пользователи.

Как быть в этой ситуации?
Какая возможна реализация без костылей как предлагал автор в теме modx.pro/help/2793/

Глеб
19 апреля 2017, 11:38
modx.pro
4
4 100
+1

Поголовная проблема с .WWW у многих – как решить?

Приветствую

Тестировал сегодня сайт на HTTPS и в целом все работает нормально. На сайте также настроен редирект с www.site.ru на site.ru, но заметил, что картинки, скрипты, стили и другие файлы доступны сразу по двум адресам: www.site.ru/images/image.png и site.ru/images/image.png.

Решил посмотреть что же там у меня в .htaccess, а там на первый взгляд все нормально: есть правила редиректов с www на без www и с http на https и другие правила, а созданные в админке страницы редиректят корректно.

За неимением точных познаний в настройке правил редиректа решил найти инфу в сети, а также посмотреть как обстоят дела у других сайтов на MODX, в том числе некоторых людей. Каково же было мое удивление, когда я обнаружил у семи из десяти первых попавшихся мне сайтов такую же ошибку в работе.

Подскажите пожалуйста как корректно настроить редиректы для всех файлов сайта.
weranda
17 апреля 2017, 10:56
modx.pro
3
998
0

Как в AjaxForm отключить jGrowl ?

Подскажите как удалить нафиг этот плагин и сделать вывод сообщений в нужном диве.
Хочется сделать чтобы после успешной отправки формы эта форма пропадала и на ее месте показывалось сообщение.
Через событие af_complete можно этого добиться, но jGrowl все портит своим появлением.
UDAV
14 апреля 2017, 16:49
modx.pro
6
5 669
+2

Удаление старых версий пакетов

Многие пользователи знают, что MODX хранит кучу старых версий дополнений, чтобы вы могли откатиться на них в любое время.

Но, это требуется крайне редко, а место пакеты занимают. Их можно удалять вручную, но это довольно утомительно, поэтому я набросал несложный консольный скрипт для автоматического удаления.

Скрипт нужно положить в корневую директорию и запустить. Он выберет все установленные версии, кроме самой последней, и корректно удалит их через родной процессор.

Судя по коду этого процессора, никак повредить системе он не может, потому что деинсталляцию самого пакета не делает, а только удаляет файлы версии. Но, в любом случае, использовать на свой страх и риск!
Василий Наумкин
24 марта 2017, 06:35
modx.pro
40
4 236
+24

[addData] Добавление дополнительных данных

Компонент addData для MODX позволяет добавлять дополнительные данные к ресурсу. Если взять магазин, для примера, то к товару можно легко добавлять требуемые характеристики. При желании эти характеристики можно сгруппировать и дать описание каждой характеристики, который будет отображаться в Popover при наведении (используется Bootstrap3).
Марат Марабар
23 марта 2017, 14:02
modx.pro
11
4 417
+13