Всего 115 816 комментариев

Вася
21 июня 2022, 13:00
+1
в настройках upload_files добавьте расширение php
И тогда сможете создавать файлы php
NEREBROV
21 июня 2022, 12:50
0
  1. Хостинг beget. Платная версия. MODX Revolution 2.8.3-pl
  2. Свободное место конечно есть.
  3. Версию PHP не могу узнать никак. Пытался найти через файловый менеджер. Пробовал создать php файл и вставить туда:
    < ?php phpinfo(); ? >
    но modx запрещает создавать php файлы.
Не подскажете как я могу узнать версию?
NEREBROV
21 июня 2022, 12:34
0
В моём случае этот чанк используется в 2 шаблонах. в конкретном случае @INLINE нужен
&tpl=`@INLINE <div class="col">[[$tpl-e_carousel]]</div>`
NEREBROV
21 июня 2022, 12:30
0
1. &processTVs нужен, ибо чанк [[$tpl-e_carousel]] — выводит карточки мероприятий в карусели (на скрине) и на другой странице уже без карусели, а из-за pdoPage при переходе из страницы карточек мероприятий на главную — пропадают изображения у меня — &processTVs спасает ситуацию. Другого выхода не нашёл.
2. Вот что выдаёт журнал:
[2022-06-21 12:30:10] (ERROR @ /home/k/k92334t1/leshoz/public_html/core/model/modx/modparser.class.php : 541) Could not find snippet with name id:1.
[2022-06-21 12:30:10] (ERROR @ /home/k/k92334t1/leshoz/public_html/core/model/modx/modparser.class.php : 541) Could not find snippet with name id:1.
[2022-06-21 12:30:10] (ERROR @ /home/k/k92334t1/leshoz/public_html/core/model/modx/modparser.class.php : 541) Could not find snippet with name id:1.
[2022-06-21 12:30:12] (ERROR @ /home/k/k92334t1/leshoz/public_html/core/model/modx/modparser.class.php : 541) Could not find snippet with name id:1.
[2022-06-21 12:30:12] (ERROR @ /home/k/k92334t1/leshoz/public_html/core/model/modx/modparser.class.php : 541) Could not find snippet with name id:1.
[2022-06-21 12:30:12] (ERROR @ /home/k/k92334t1/leshoz/public_html/core/model/modx/modparser.class.php : 541) Could not find snippet with name id:1.
Роман
21 июня 2022, 09:13
0
Если до этого все работало, скорее всего проблема в хостинге. Проверьте есть ли свободное место, не изменялась ли версия PHP.
tararaxnes
20 июня 2022, 23:15
0

msOptionsPrice2(msoptionsprice2-2.5.22-beta), я установил на MODX Revolution 2.8.3-pl.
Все работает отлично, кроме expander на Product modification tab, см. вложение.
Артур
20 июня 2022, 22:13
0
Переустанавливать пробовал? С документацией сверялся? Как понимать?
Отправка сообщений через Ajax
Ты же рассылку делаешь на почту, причём тут ajax? Автору писал?
Ivan
20 июня 2022, 22:12
0
&tpl=`tpl-e_carousel`
Артур
20 июня 2022, 22:10
0
Во-первых, думаю параметр &processTVs не нужен. Во-вторых, посмотри что в журнале ошибок написано.
Артур
20 июня 2022, 14:24
0
Возможность обновлять, как вручную пачкой/единично, так и cron скриптом, хоть раз в минуту.
Александр Мельник
20 июня 2022, 12:24
0
я имел ввиду, что использование collections или же «настройки форм» позволяет назначать создаваемым ресурсам корректные шаблоны. Тоесть если создает менеджер ресурс. Кликнула правой кнопкой мыши по Услуги и выбирает — создать ресурс, то при создании ему автоматически будет добавлен шаблон — Услуга. А мой плагин уже ориентируется на этот шаблон и понимает из какого вспомогательного ресурса (те что на скрине внутри 48) ему нужно забрать содержимое blocklist и скопировать его в создаваемый ресурс.
Павел
20 июня 2022, 11:14
0
Вроде дело оказалось с местом на хостинге. Расширил и все стало ок.

Всем спасибо
Константин
20 июня 2022, 11:00
0
Конечно хотелось бы научиться самому. Но это время. И удобнее было бы разобраться на готовом примере. А можно обратиться к вам, за денюшку конечно?
Zhan
20 июня 2022, 10:41
0
Я когда это добавляю, ничего не появляется
Артур
20 июня 2022, 10:25
0
Дублировать [[+page_nav]] не надо, отображение нумерации страниц и кнопки управляется с помощью js, тебе нужно попробовать изменить его так, чтобы кнопка появлялась, а нумерация не скрывалась.
Артур
20 июня 2022, 10:22
0
Я через инструмент «Настройка форм» и через компонент «Collections» стараюсь максимально автоматизировать правильное применение шаблонов, когда менеджер создает новый ресурс.
А можно подробнее?) Какие именно манипуляции позволяют автоматизировать наполнение blocklist?
Константин
20 июня 2022, 10:09
0
То есть сделать по умолчанию пагинацию по кнопке. И продублировать [[+page_nav]]. Потом найти в js минишопа код, который отвечает за скрытие номеров пагинации и закомментировать его?
Александр Мельник
20 июня 2022, 07:37
0
У меня работает следующим образом.
Смотрим скриншот.

Есть тв поле blocklist которое содержит в себе перечень всех возможных на сайте блоков. Под блоком я понимаю — название, указание на чанк в котором вьюшка и прочая инфа.
В ресурсе «Настройки (2)» перед началом работы с сайтом я заполняю это поле, причем заполняю максимально, тоесть все все блоки которые есть на данный момент.
Чтобы менеджеру было проще, а система в целом была гибче, есть еще группа ресурсов, на скрине это ресурсы в родителе «Настройка шаблонов (48)». Эти ресурсы уже отвечают за какой-то определенный тип страниц. Здесь я тоже перед началом работы создаю все все блоки, НО ненужные деактивирую, сортирую блоки, так чтобы они соответствовали макету этой страницы. Ну к примеру если это услуга, то я деактивирую все, кроме блоков
— хлебные крошки
— h1
— баннер
— текстовое поле
— форма заказа
— ссылка назад
Что происходит далее. Я через инструмент «Настройка форм» и через компонент «Collections» стараюсь максимально автоматизировать правильное применение шаблонов, когда менеджер создает новый ресурс.
И вот уже при создании нового ресурса срабатывает плагин, который просто наполняет этот новый ресурс блоками (заполняет тв поле blocklist). Если плагин видит, что создается ресурс с шаблоном 8 (к примеру это услуги) то он скопирует этот список с ресурса 56, где уже настроены блоки для услуг. Если не можем понять, какую именно страницу создает менеджер, то будет скопирован список блоков со страницы «Настройки», тоесть полный список и менеджер сам потом деактивирвует ненужное, расставит блоки в нужной очередности.
В итоге получается, что менеджер может:
— быстро создать страницу с уже заранее продуманными блоками под нее
— после создания изменить страницу как угодно, ведь скопировались абсолютно все блоки, просто они деактивированы. Ничто не мешает конкретно эту страницы «услуги» сделать совершенно другой и активировать на ней блок «слайдер» и блок «дополнительная форма обратной связи».
— изменить в какой-то момент настройки (перечень активных блоков) для тех же услуг (если смотреть на скрин то изменить блоки в ресурсе 53) и все создаваемые после этого страницы тоже изменятся.
Сам плагин очень примитивен.
<?php
switch ($modx->event->name) { 
    case 'OnDocFormSave':
        $template = $resource->get('template');
        switch ($template) {
            case '3': // продукция
                $example = 49;
                break;
            case '8': // услуги
                $example = 53;
                break;
            case '7': //новость
                $example = 56;
                break;
                      
            case '9': // типовые решения
                $example = 55;
                break;
                
            case '4': // инфо страница
                $example = 57;
                break;
                 
            case '19': // акции
                $example = 62;
                break;
            case '21': // реализованные проекты
                $example = 54;
                break;
            default:
            $example = 2;
                break;
        }

        if ( $resource->get('id')!=2 and $mode == 'new') {
           
            $where = array(
                'contentid' => $example
              , 'tmplvarid' => 3
            );
        $tv = $modx->getObject('modTemplateVarResource', $where);
        $value=  $tv->get('value');
           
            $resource->setTVValue('blockList', $value);
        }
        
    break;
}
Артур
19 июня 2022, 23:32
1
+1
Правильно, мой косяк, я забыл написать преобразование в масив
{set $photo_collection = json_decode($item.id | resource : 'photo_collection', true)}
  {if $photo_collection}
     {foreach $photo_collection as $item}
        {set $collection = $item.collection | fromJSON}
        {foreach $collection as $el}
            {$el.image}
        {/foreach}
    
     {/foreach}
  {/if}