Сборка для быстрого создания сайтов на MODX Готово

Сумма для сбора: 10 000 руб.

Последнюю неделю я активно занялся оформлением сборки MODX, чтобы ускорить создание новых сайтов. В сборке реализовано много мелочей, которые каждый раз приходится делать после установки MODX, например, создание страницы для 404 ошибки и указание её id в настройках, установка стандартного набора дополнений, robots.txt и sitemap.xml, редирект на основное зеркало (удаление www из адреса), настройка дружественных URL и всё в таком духе.



Под катом более подробно о том, что можно получить при установке сборки.

Список устанавливаемых дополнений

  • simpleUpdater — для лёгкого обновления версии MODX
  • FormIt — обработка форм, отправка заявок на электронную почту
  • autoRedirector — автоматический редирект при изменении URL страниц
  • CKEditor — визуальный редактор
  • Collections — для удобного отображения дочерних ресурсов
  • Console — на случай, если надо что оттдебажить или выполнить какой-то скрипт
  • FastUploadTV — удобная замена стандартному ТВ для картинок
  • MIGX — для создания табличек у ресурсов
  • Translit — автоматическая транслитерация адресов страниц
  • VersionX — сохраняет бэкапы элементов и ресурсов, чтобы всегда можно было откатиться
  • Ace — редактор кода
  • pdoTools — для вывода ресурсов и создания меню
  • AjaxForm — чтобы формы работали с помощью AJAX
  • MinifyX — объединяет стили и скрипты, минифицирует их
  • phpThumbOn — для создания превьюшек
  • tagElementPlugin — удобная навигация внутри админки
  • frontendManager — для редактирования ресурсов прямо из фронтенда

Системные настройки

  • allow_multiple_emails — 0 (чтобы у каждого пользователя была своя электронная почта)
  • friendly_alias_realtime — 1 (генерация псевдонима в реальном времени)
  • friendly_urls — 1 (включение дружественных URL)
  • friendly_urls_strict — 1 (строгий режим)
  • hidemenu_default — 1 (чтобы случайно новые ресурсы не появились в основном меню сайта)
  • publish_default — 1 (по умолчанию ресурс создаётся опубликованным)
  • use_alias_path — 1 (чтобы в URL учитывался псевдоним родителя, а не его замороженный URL)
  • friendly_alias_translit — russian (настройка транслитерации)
  • resource_tree_node_name — menutitle (чтобы названия ресурсов в дереве были покороче)
  • resource_tree_node_tooltip — alias (чтобы можно было понять, какой у ресурса адрес)
  • error_page — id страницы 404
  • site_unavailable_page — id страницы 404 (всё же лучше 404, чем главную показывать)
  • unauthorized_page — id страницы 404
  • error_page_header — HTTP/1.0 404 Not Found (раньше были проблемы с другим заголовком)
  • fastuploadtv.translit — 1 (чтобы загружаемые к ресурсам картинки транслитерировались)
  • locale — ru_RU.utf8 (вдруг, надо будет генерировать даты с названиями месецев)
  • cache_prefix — пустое значение (надо заполнять, если включён memCached. Значение брать из файла конфига)

Стандартный шаблон

После установки создаётся шаблон site. Он проставляется у главной страницы сайта и указывается как шаблон по умолчанию. В шаблоне подключен Bootstrap и FancyBox.

У меня никогда не было такого, чтобы не пригодилось дополнительное поле для прикрепления картинки к странице. Поэтому сборка создаёт ТВ img с типом FastUploadTV — для удобной загрузки изображений.

Часто телефон, адрес, электронную почту выносят в настройки системы или контекста. Я раньше использовал ClientConfig. Но со временем я понял, что эти поля логично искать на странице «Контакты». Поэтому в сборке я решил создать ТВ-поля для этих трёх параметров. Эти поля выводятся в админке при редактировании контактов.

ms2Gallery — платный компонент, поэтому в сборке для реализации галереи я использовал MIGX.

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

Создание ресурсов

  • О компании
  • Специалисты
  • Отзывы
  • Галерея
  • Новости
  • Контактная информация
  • HTML карта сайта
  • Страница ошибки 404
  • robots.txt
  • sitemap.xml

Другое

  • Создаётся плагин для редиректа на основное зеркало (без www)
  • Переименовываются файлы ht.access в корне и в папке /core/ (чтобы заработали дружественные URL)
  • Удаляется файл changelog.txt, чтобы убрать сообщение о том, что безопасность сайта не в порядке
  • В файле конфига прописывается массив cache_options, чтобы при включении memCached не надо было вспоминать, как параметры пишутся — достаточно будет просто раскомментировать строчки и внести соответствующие изменения в настройки
  • Стандартная таблица символов Translit меня не устраивает. В ней букве Ы соответствует yj, Ц — cz и т. д. При установке сборки создаётся новая таблица символов и указывается в настройках.
  • В компоненте FastUploadTV жёстко прописан адрес папки /connectors/. А я её всегда переименовываю. При установке сборки в файл этого компонента вносятся изменения, чтобы картинка отображалась корректно.
  • Создаются правила кастомизации форм ресурсов, чтобы ТВ img отображался на основной вкладке ресурса, чтобы на странице контактов отображать поля адреса, телефона и E-mail
  • К странице редактирования ресурсов привязывается CSS-файл, чтобы чуть подправить отображение ТВ-параметров.
  • Создаётся сниппет year, чтобы выводить диапазон лет в блоке Copyright.

Демонстрация

http://s6158.h5.modhost.pro/manager/
Пользователь: s6158
Пароль: nXsvSB6trWfm



Краудфандинг

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

Но время, потраченное на её создание, мне хочется компенсировать. Так что все желающие получить сборку могут перечислить мне любую сумму через форму на сайте. Когда наберётся сумма в 10 000 руб., сборка появится в открытом доступе. Кроме того, будет открыт репозиторий на GitHub, чтобы каждый мог настроить сборку под себя.

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

Всего собрано 10 000 руб.

====================================================================== 10 000 руб.

UPD. После окончания сбора не только исходники будут размещены в открытом доступе, но и появится инструкция — как на основании этих исходников создать свою сборку.

UPD 2. Сбор средств завершён. Всем спасибо.
Исходники сборки доступны на GitHub: github.com/ilyautkin/siteExtra
Сборка доступна для установки из репозитория modstore.pro: siteExtra
01 august 2016, 17:09    Илья Уткин   G+  
21    3021 +13

Comments (133)

  1. Владимир 01 august 2016, 18:00 # 0
    Доброго дня! Используемый в сборке phpThumbOn это личные предпочтения или он реально лучше pThumb?
    1. Илья Уткин 01 august 2016, 18:03 # +2
      Не знаю. Я раньше пользовался phpThumbOf, так как другого и не знал. А как появился phpThumbOn, перешел на него. Так что это больше дело привычки.

      Ничего не мешает установить pThumb и поменять вызовы на него.
      1. Владимир 01 august 2016, 18:22 # +2
        Ок, тогда принимайте 5 копеек по моему внутреннему курсу. Пусть будет)
        Отправил.
        1. Евгений 01 august 2016, 18:49 # -10
          Зачем велосипед изобретать, если можно поставить минишоп и использовать его галерею?
          Да и вообще зачем нужна сборка без минишопа?!
          1. Илья Уткин 01 august 2016, 18:52 # +5
            Да, вы совершенно правы
            1. Евгений 01 august 2016, 18:54 # -7
      2. @ndrew 02 august 2016, 06:04 # +1
        По сути кто разбирается в modx эту сборку собрать под себя и с намного лучшим дизайном не составит труда.
        А те кто не в теме без вашей же помощи (наверняка платной) не разберется что бы все наладить. Умно ;) Вангую и мне кучу минусов )))
        1. Владимир 02 august 2016, 06:17 # +1
          Если в репозитараии появится множество готовых сборок (равно как и еще любых других расширений) все только выиграют.

          PS Люди всегда рады халяве, а как кинуть монетку в копилку разработчиков — так нет, увы. Бесплатно было бы — качали бы аж шум бы стоял и ставили бы Илье плюсики, как и с новым Тикетс и т.п.
          Почему так?
          1. Илья Уткин 02 august 2016, 06:42 # +2
            Есть большая прослойка между теми, кто умеет собирать пакеты и теми, кто первый раз видит MODX.

            И в сборке дизайн — не главное. Главное — набор готовых решений.
            1. Stan Ezersky 02 august 2016, 10:18 # 0
              Полностью согласен.

              Для человека, который первый раз видит MODX важно содержание, а не внешний вид, который можно сделать любым.
              1. Алексей 06 august 2016, 21:16 # 0
                Субъективно:
                Новичку как раз не эта сборка нужна, наоборот — чистый modx и вперед.
                Но это только мое субъективное мнение и оно не в счет.

                Объективно:
                Никому не мешает, может кому то пригодится и действительно принесет пользу в его задаче

                Опасливо:
                Про деловых_мэнов, которым нужен инструмент для делинга (бизнессинга) пускай сами определят: нанять и заплатить или самому слепить (вон сборка есть), ну это так, на случай комментов от деловых_мэнов… )
          2. Дмитрий 02 august 2016, 10:34 # +2
            ушла 1т
            1. Игорь Терентьев 02 august 2016, 14:29 # +3
              Хорошее дополнение.
              Но если нужно все под себя настроить, то лучше использовать парочку скриптов, описанных здесь.
              Для установки дополнений:
              gist.githubusercontent.com/ig0r74/80c27500e9c28d1261d3/raw/fbf095e0be76f84ee103775a2ba773695738f643/packages.php
              Для настроек, TV, чанков и т.д.: gist.githubusercontent.com/ig0r74/722b2a14d57ca100d906/raw/9daf4e3f847a9be58239729cc27fc057db34304f/settings.php
              1. Илья Уткин 02 august 2016, 14:33 # 0
                Да, я кстати видел это решение. Только почему-то забыл о нём. Ну, теперь уже обратного пути нет))
              2. Антон Левиц 02 august 2016, 14:44 # +1
                Немного не по теме
                s6158.h5.modhost.pro/robots.txt

                Это нормально что в роботс идет скрипт хвостом от frontendmanager?

                User-agent: *
                Allow: /
                
                Host: s6158.h5.modhost.pro 
                Sitemap: http://s6158.h5.modhost.pro/sitemap.xml
                <script type="text/javascript">frontendManagerConfig={"ctx":"web","jsUrl":"\/assets\/components\/frontendmanager\/js\/","cssUrl":"\/assets\/components\/frontendmanager\/css\/"};</script><link rel="stylesheet" href="/assets/components/frontendmanager/css/web/frontend.css" type="text/css"><script type="text/javascript" src="/assets/components/frontendmanager/js/web/frontend.js"></script><div id="frontendManager" class="fm-panel" >
                	<a href="manager" target="_blank" class="logo"><img src="manager/templates/default/images/modx-icon-color.svg"></a>
                	<a href="manager/?a=resource/update&id=2" data-action="iframe"><span class="icon-edit"></span> <span class="fm-text">Редактировать страницу</span></a>
                	<a href="manager/?a=security/user" data-action="iframe"><span class="icon-users"></span> <span class="fm-text">Пользователи</span></a>
                	<a href="manager/?id=0&a=context/update&key=web" data-action="iframe"><span class="icon-earth"></span> <span class="fm-text">Настройки контекста</span></a>
                	<a href="manager/?a=system/settings" data-action="iframe"><span class="icon-settings"></span> <span class="fm-text">Настройки</span></a>
                </div>
                1. Антон Левиц 02 august 2016, 14:47 # +1
                  туплю, это потому что из админки забыл выйти
                  1. Илья Уткин 02 august 2016, 18:25 # 0
                    Del
                  2. Игорь Терентьев 02 august 2016, 14:47 # +2
                    Это только для авторизованных в админке пользователей.
                    1. Илья Уткин 02 august 2016, 14:48 # +1
                      Это больше вопрос, конечно, к дополнению FrontendManager. Он, по идее, должен отключаться на текстовых страницах. Но в любом случае — этот код появляется, только если вы авторизованы в админке. Попробуйте открыть в анонимном режиме браузера.
                      1. but1head 02 august 2016, 18:25 # +2
                        Комитнул правку Ильи, в модстор выложу чуть позже
                        1. @ndrew 02 august 2016, 20:13 # +1
                          Про открытие и закрытие панели по триггеру с куками не забудь.
                      2. Кирилл 02 august 2016, 18:19 # +1
                        Автоматизация вещь хорошая и нужная, компонент однозначно полезный. В своих проектах я тоже делал нечто подобное, жалко времени нету исправить небольшие ошибки и доделать настройки под TinyMCE4. Если кому интересно, описание и ссылка для скачивания компонента. Быть может, Илья что-либо добавит к себе в компонент, например во всех проектах я добавляю SEO TV поля.
                        1. Владимир 02 august 2016, 20:34 # 0
                          А исходников нет часом? ))
                          1. Кирилл 02 august 2016, 20:44 # +1
                            Есть, в ближайшие дни могу на гитхаб выложить.
                            1. Владимир 02 august 2016, 20:45 # 0
                              Да, было бы замечательно!
                              1. Кирилл 03 august 2016, 06:37 # +1
                                Исходники, не уверен что самые актуальные. По мере появления свободного времени исправлю некоторые ошибки и обновлю системные настройки. В частности, документы robots.txt и sitemap.xml создаются с дублирующим разрешением. Если есть какие то предложения, что можно добавить\изменить, пишите.

                                Кстати, интересный момент с таблицей транлитизации для translit. В идеале, сделать транслит по правилам яндекса. Может у кого-то есть таблица и настройки вырезаемых символов?
                                1. Владимир 03 august 2016, 07:23 # 0
                                  Спасибо! Будем посмотреть )
                                  1. Владимир 03 august 2016, 07:32 # 0
                                    О транслитерации, а интересно, реально, замена транслитерации с одних правил на другие может значительно изменить качество индексации сайта и его позиции? Если нет, чем плохи те правила, что прописаны в дефолтном translit?
                                    1. Кирилл 03 august 2016, 08:47 # 0
                                      Не знаю, на самом деле, один из СЕОшников просил делать URL по правилам яндекса. Насколько это влияет на позиции или индексацию, сказать не могу, но из рекомендаций яндекса, пункт 4 следует, что робот все таки транслит переводит, и наверное ему понятнее будет по своим правилам переводить, а то еще напутает чего :D

                                      Насколько я помню, в таблице по умолчанию не так много расхождений. Основная задача всякие спецсимволы вырезать или заменять на "-".
                                      1. Владимир 03 august 2016, 10:06 # 0
                                        Все без исключения спецсимволы вырезаются при значении системной настройки MODX friendly_alias_restrict_chars = alphanumeric — я только ее и использую.
                                        1. Кирилл 04 august 2016, 08:52 # +1
                                          Исходник на гитхабе исправил, видимо не ту версию первый раз выложил (пакет не создавался, выдавалась ошибка). В самом компоненте подправил небольшие баги, добавил friendly_alias_restrict_chars -> alphanumeric и сделал таблицу транслитизации по яндексу, после установки компонента translit копируется, в системных настройках прописывается. Обновляйтесь :)
                                          1. Владимир 04 august 2016, 10:29 # 0
                                            О! Спасибо :)
                          2. Борис 03 august 2016, 09:05 # 0
                            6 компонентов лишнее.
                            Парочку вообще заменить надо.
                            1. Илья Уткин 03 august 2016, 10:05 # 0
                              А конкретнее?
                              1. Владимир 03 august 2016, 10:44 # +1
                                Пардон, я тут одну мечту озвучу
                                Очень был бы уместен на Modhost.pro конструктор сборок, что бы 1) создавать свои конфигурации и хранить их в личном кабинете, в конфигурациях выбирать расширения, системные настройки, часто используемые ресурсы (404, сайтмап, роботс и т.п.), возможно, дополнять лексиконы, может быть создавать некий необходимый набор тивишек, но мне видится обязательным в сборке только расширения и системные настройки с ресурсами, а остальное может как раз быть с отдельном пакете, так может быть более гибко, ну и 2), раз уж я говорю применительно к Modhost.pro, это выбор сохраненной конфигурации при создании нового сайта на аккаунте. Да, можно и как платную услугу, о халяве я не мечтаю.
                                А вот такой пакет как у вас, Илья, именно как дополняющий и корректирующий то, что в конструкторе не предусмотреть…
                                Вот. Размечтался :)
                                1. Alexander V 03 august 2016, 11:27 # 0
                                  Можешь так. Есть другие варианты.
                                  1. Владимир 03 august 2016, 11:29 # 0
                                    Я не о том, «можешь». Я о том, что хотел бы что бы на Modhost.pro был конструктор сборок. Только об этом.
                                  2. Илья Уткин 03 august 2016, 11:36 # 0
                                    Решений для создания настроек и ресурсов полным полно. В моей сборке это не главное.

                                    В сборке ТВ-шки привязываются к шаблону, для ресурсов создаются правила кастомизации, чтобы клиенту потом было удобнее пользоваться, в шаблоне уже готовы типовые выводы для дочерних ресурсов, правятся файлы компонентов FastUpload и Translit.

                                    Это нужно, конечно, далеко не всем, но в конструкторе, каким бы он ни был продвинутым, такие изменения будет сложно прописать.

                                    После того, как соберётся сумма, я размещу исходники на гитхабе — вы сможете лишнее удалить, что-то исправить, а что-то добавить — и сделать свою сборку. В этом весь смысл.
                                    1. Владимир 03 august 2016, 11:40 # 0
                                      В этом весь смысл.
                                      — согласен, понимаю, не спорю :)
                                  3. Борис 03 august 2016, 11:35 # 0
                                    simpleUpdater — оставляет много мусора
                                    CKEditor — Тина удобнее
                                    Console — случаев много?
                                    FastUploadTV — чем удобнее?
                                    VersionX — много мусора в базе
                                    AjaxForm — без настройки форм не взлетит, либо надо сразу чанки с настроенной формой.
                                    MinifyX — объединит что, 1-2 файла вашей сборки?
                                    tagElementPlugin — пользовался сам несколько раз и всё.
                                    frontendManager — на вкус и цвет, но мне не понравился.
                                    1. Владимир 03 august 2016, 11:42 # 0
                                      FastUploadTV — чем удобнее?
                                      — чем удобнее чем что? Вроде нет удобнее для загрузки изображения в тивишку, если именно в тивишке нужно хранить картинку. Или есть?
                                      1. Илья Уткин 03 august 2016, 11:43 # +2
                                        simpleUpdater — оставляет много мусора
                                        CKEditor — Тина удобнее
                                        Это вкусовщина, каждый выбирает для себя. На основе моей сборки можно сделать свою, удалив или заменив эти компоненты

                                        Console — случаев много?
                                        У меня много, да

                                        FastUploadTV — чем удобнее?
                                        А есть какая-то альтернатива?

                                        VersionX — много мусора в базе
                                        Мне пару раз это дополнение сэкономило много времени. Я готов мириться с мусором. Но опять же, в своей сборке можно будет это дополнение удалить.

                                        AjaxForm — без настройки форм не взлетит, либо надо сразу чанки с настроенной формой.
                                        В сборке как раз чанки с настроенной формой. Даже сообщение об успешной отправке показывается во всплывающем окне

                                        MinifyX — объединит что, 1-2 файла вашей сборки?
                                        Так поверх сборки нужно свою вёрстку натягивать, чтобы готовый сайт получился. Тут MinifyX и пригодится.

                                        tagElementPlugin — пользовался сам несколько раз и всё.
                                        frontendManager — на вкус и цвет, но мне не понравился.
                                        Точно так же — можно не пользоваться, а в своей сборке можно будет и удалить.
                                        1. Кирилл 03 august 2016, 11:58 # +3
                                          Логичнее тогда выбор устанавливаемых компонентов сделать, перед установкой пакета. По умолчанию пусть галочки на всех стоят, кому надо отключит лишнее.
                                          1. Илья Уткин 03 august 2016, 12:02 # +5
                                            Да, я как-то не подумал об этом. Надо будет сделать.
                                            1. Василий Столейков 04 august 2016, 11:43 # 0
                                              Если это будет сделано, то можно будет вообще сделать универсальную сборку и понапихать пакетов сколько угодно ))))
                                              Если бы туда ещё и системные настройки изменяемые например. И остальное… Эх, размечтался вслух...
                                              Да, визуальный установщик с галочками будет бомбой!
                                        2. but1head 04 august 2016, 23:03 # 0
                                          frontendManager — на вкус и цвет, но мне не понравился.
                                          Почему? Если не секрет.
                                    2. Петр 04 august 2016, 09:55 # +1
                                      Несомненно это круто! И в частности что планируешь выложить на гит, чтобы можно было под себя что то сделать, за это огромный плюс.
                                      Я использую свои сборки для создания (не сочтите за рекламу), но в них есть свои недостатки.
                                      Собираю vapor_ом, и одна из проблем это после установки на чистый Modx приходится накатывать обновление modx (некоторые компоненты не корректно устанавливаются). Хоть это и не сильно критично, но все же хотелось без этого. например вот

                                      Вообще было бы здорово сделать одну универсальную, то есть. При установки будет спрашивать магазин у тебя или визитка, ну и в зависимости от этого будет устанавливать нужные компоненты.

                                      Хотя на мой взгляд, установка компонентов это не самое критичное. Больше всего времени уходит на настройку (системные настройки, группы пользователей и т.д) а сами компоненты можно и самому по быстрому накатить.
                                      1. Alexander V 04 august 2016, 12:52 # +1
                                        ИМХО, полезней сделать хак для /setup/ и набор рецептов или просто список приложений, которые необходимо доустановить.
                                        1. Илья 04 august 2016, 20:51 # +1
                                          Хотел оплатить, появилась ошибка, попробую позже. :(


                                          p.s. Сервису сообщил об ошибке
                                          1. Василий Наумкин 04 august 2016, 21:27 # 0
                                            Пусть зададут вопрос у нас, как положено.

                                            Логин-пароль можно в личку.
                                            1. Илья 04 august 2016, 21:38 # 0
                                              Логин и пароль к чему?
                                              Я хотел закинуть свои пять копеек для этой сборки.
                                              Форма оплаты с сайта Ильи (https://ilyaut.ru/pay/)
                                              1. Василий Наумкин 04 august 2016, 21:40 # 0
                                                Шутка не зашла, бывает.

                                                Смысл был в том, чтобы Единая касса задала у нас тут вопрос, чего это у неё не работает — и дала логины пароли, чтобы мы ей помогли.

                                                Не обращай внимания, в общем.
                                                1. Илья 04 august 2016, 21:53 # +1
                                                  :) Ну да ладно.

                                                  Мне больше интересна не сборка, а как она создавалась.
                                                  1. Владимир 05 august 2016, 10:26 # 0
                                                    Вот-вот!)))
                                                    1. Илья Уткин 05 august 2016, 10:28 # +3
                                                      Так будут исходники. Даже, думаю, статейку накидаю — как на их основе сделать свою сборку
                                                      1. Владимир 05 august 2016, 10:30 # 0
                                                        Даже, думаю, статейку накидаю
                                                        — «Да пребудет с тобой Сила» ))
                                                        1. Владимир 05 august 2016, 10:33 # +1
                                                          Мне кажется, что если данную чудесную мысль озвучить в топике, то сбор ускорится :))
                                                          1. Илья Уткин 05 august 2016, 10:36 # 0
                                                            Я думал, это и так понятно. На всякий случай, дополнил топик)
                                                            1. Владимир 05 august 2016, 10:40 # 0
                                                              и так понятно
                                                              — факты говорят иное))))
                                                              А шрифт в UPD мелковат, не заметят кто уже читал, глаз же «замыливается»
                                            2. Abu 05 august 2016, 00:14 # +1
                                              Отличная сборка. Надо бы ещё clientconfig добавить, имхо, незаменимое дополнение, вместо тв-шек забить туда всякие соц-сети, телефоны, адреса и выводить плейсхолдерами самое то.
                                              1. Здоров Александр 05 august 2016, 07:41 # 0
                                                Я раньше использовал ClientConfig. Но со временем я понял, что эти поля логично искать на странице «Контакты».
                                                в описании автор привел свой аргумент отказа от этого дополнения.
                                                Да, могу согласиться в том, что контакты разумней искать на странице контактов, но есть еще такие вещи как слоган, логотип и прочая прочая ересь, и чтобы клиент потом не жаловался что ему нужна возможность смены (и не плодить в шаблонах выводы тв с разных ресурсов) удобней это дополнение. но тут дело вкуса
                                                1. Илья Уткин 05 august 2016, 10:04 # +3
                                                  Да, надо добавить. Я сделаю возможность выбора, какие дополнения надо устанавливать — галочками. И ClientConfig добавлю
                                                  1. Здоров Александр 05 august 2016, 10:07 # 0
                                                    слишком смелая мечта, но не рассматриваете вариант старой доброй evo, когда ставится система, на последнем шаге был выбор какие пакеты ставить. но я с ней мало успел пообщаться, там или скачивались и ставились пакеты, или они уже были в коробке. но вот в памяти остался этот плюсик хороший)
                                                    1. Илья Уткин 05 august 2016, 10:31 # +1
                                                      Я когда-то давным-давно делал так: ilyaut.ru/tips-and-tricks/create-a-build-of-modx-revo/
                                                      Но потом этот способ перестал работать — как-то изменился установщик, а я и не стал разбираться.

                                                      Я думаю, что пакет всё же удобнее. Его можно ставить не только на чистый сайт, но и на существующий уже — ресурсы не удаляются, существующие ТВ и шаблоны не затираются — я постарался всё сделать аккуратно.
                                                      1. Здоров Александр 05 august 2016, 10:37 # 0
                                                        задумка классная, посмотрите еще дополнение Image+ в последнее время стало самым лучшим решением для превью новостей, каталога с картинками и прочим. В общем что это дает: загрузили картинку и появляется область, по которой картинку можно обрезать в точном соответствии с тем, какой размер должен быть, при этом можно выбирать какую область оставить простым перетаскиванием по картинку, хоть всю, но главное сохранит пропорции и выведет очень небольшое по весу изображение.
                                                        1. Илья Уткин 05 august 2016, 10:42 # +1
                                                          Насколько я понял, там для загрузки используется обычный MODX браузер? Это не очень удобно, так как часто у клиента заполнением сайта занимается не очень квалифицированный персонал. Это приводит к тому, что картинки беспорядочно загружаются в корень (или, даже если настроить источник файлов — то в одну папку). А FastUploadTV позволяет делать загрузку в один клик — не надо выбирать папку, в которую файл должен загрузиться. Плюс загруженные файлы транслитерируются.

                                                          Но дополнение себе запишу в список, спасибо.
                                                          1. Здоров Александр 05 august 2016, 10:47 # 0
                                                            да, обычный загрузчик modx, написал скорее для того, чтобы взгляули, я не находил особых упоминаний об этом компоненте на наших площадках, а лично мне он решил огромную головную боль, когда как не объясней, все равно в квадратные картинки пихают прямоугольные)
                                                            по вопросу куда класть картинки: обычно указываю источник для конкретных мест (новости, каталог), остальным создаю еще одну папку куда все летим не нужное, обычно понимают что вот сюда клади, в эту папку. пока проблем не было, но вот про автоперевод у FastUploadTV не знал, попробую одной особе поставить. большое спасибо за ответ
                                              2. @ndrew 05 august 2016, 04:45 # 0
                                                В modx готовые сборки ни когда не будут котироваться. Потому что это конструктор, каждый собирает под себя, это плюс и минус движка. Одни и те же вещи можно реализовать по разному и всегда будут от разных людей вопросы типа — почему тут этот компонент, а почему не этот он ведь лучше… и тд.
                                                Кто хоть немного почитал о модэксе и вник в азы эту сборку (а может быть и лучше) на коленке за день соберет.
                                                А кто не в теме тот будет засыпать примитивными вопросами — «тут куда, а тут не робит» и тд. ИМХО.
                                                1. Илья 05 august 2016, 09:49 # +1
                                                  Ну не скажи, мне удобнее поставить сборку, где уже настроена временная зона, где настроен 24-часовой формат времени, чпу, паттерн чпу, карта сайта, страницы ошибок, два-три компонента (тот же pdotools), уже добавленный modstore.

                                                  Настройка и установка этого всего завсегда сэкономит минимум 30 минут, а то и час.
                                                  Ну а дальше да, конструктор.
                                                  1. Андрей П 05 august 2016, 10:55 # +1
                                                    Что-то мне подсказывает, что собранная сумма, пока подтверждает слова уважаемого @ndrew. Хотя сам я, именно на готовой сборке, что здесь, в сообществе публиковалась, учился. Ведь для новичка дело не только в компонентах и как они обвязаны, а в правильном построении, чтобы не плодить лишнего кода.
                                                    1. Alexander V 05 august 2016, 15:35 # 0
                                                      Вся первоначальная настройка у каждого своя. К набору обязательных приложений это тоже относится.
                                                    2. Alexander V 05 august 2016, 15:58 # 0
                                                      Котироваться будут. Но только среди начинающих и желательно бесплатно.
                                                      1. Илья Уткин 05 august 2016, 16:00 # 0
                                                        Так эта сборка и будет бесплатной. Надо только один раз собрать сумму
                                                        1. Alexander V 05 august 2016, 16:06 # 0
                                                          Надеюсь соберешь. Честно говоря, все эти донейты и краудфаундинги так себе решение.
                                                          1. Alexander V 05 august 2016, 16:11 # 0
                                                            Ведь сейчас у тебя по-сути донейт. Есть, кто поддержит, но это единицы. Остальные засухарились и жду, когда накопится. Есть люди, которые не прочь купить например за 500 руб. Вот он и будет сидеть ждать, когда наберете. Какой ему смысл донейта в то, чего нет.
                                                            p.s. С последним погорячился, ведь перечисливший получает сборку, но сути это не отменяет.
                                                            1. Илья Уткин 05 august 2016, 16:15 # +1
                                                              А ему я на почту скину пакет, если сумма не соберётся. Я думаю, к концу следующей недели подведу итог. Всем задонатившим скину на почту пакет и исходники.
                                                              1. Alexander V 05 august 2016, 16:22 # +1
                                                                Выше в комментарии я предлагал вариант инсталятора. Вот это будет интересное решение. Получится, что-то вроде решений Битрикс.
                                                                1. Илья 05 august 2016, 19:54 # 0
                                                                  Не знаю как у битрикса.

                                                                  Думаю, можно будет сделать инсталятор, в который и выкачает и установит нужную версию и нужные пакеты сразу поставит и внесёт нужные настройки.
                                                                  1. @ndrew 06 august 2016, 04:08 # 0
                                                                    Ага еще дизайн привяжет… и губу закатает. )))
                                                                      1. Владимир 06 august 2016, 15:54 # 0
                                                                        Готовые решения- залог популярности
                                                                        1. @ndrew 06 august 2016, 17:09 # 0
                                                                          Ну так а что Вы хотите, в среднем только такие сборки по 20к руб. + минимальная редакция «малый бизнес» = 52к руб. и с редакцией «бизнес» = 85к руб.

                                                                          И это хозяйство еще надо материалами заполнить и тд.
                                                                          1. Alexander V 06 august 2016, 17:20 # 0
                                                                            Я ничего не хочу. Я просто привел пример реализации. Кстати лицензии никто в здравом уме не покупает за полную стоимость. 40-50% скидка есть у любого разработчика.
                                                                        2. Владимир 06 august 2016, 06:53 # 0
                                                                          (для Alexander V ) Инсталятор хорошо, но Илья же пишет что отказался в пользу расширения устанавливаемого на рабочий сайт ни чего не затирая. И в этом есть очень рациональное зерно.
                                                            2. Купчинский Михаил 05 august 2016, 17:48 # +1
                                                              Отправил тоже немного денежек)
                                                              1. Игорь 06 august 2016, 12:57 # +1
                                                                Добавил немного)
                                                              2. Галич Сергей 06 august 2016, 13:17 # +1
                                                                tvs_below_content 1

                                                                на мой взгляд упрощает редактирование страниц
                                                                1. Отправил немного денежек.
                                                                  1. Сергей Карпук 08 august 2016, 12:42 # +1
                                                                    Также поучаствовал.
                                                                    1. Илья Уткин 08 august 2016, 14:38 # +3
                                                                      Сбор средств успешно завершён. Статью обновил. Исходники открыты. Всем большое спасибо.
                                                                      1. Alex Lenk 08 august 2016, 14:52 # +2
                                                                        Последние 300 рубликов мои :) извини что так мало
                                                                        1. Илья Уткин 08 august 2016, 14:54 # +1
                                                                          Да, я понял. Это не мало. Каждый по чуть-чуть, вот и сумма набралась.
                                                                          1. Роман Садоян 08 august 2016, 15:53 # +1
                                                                            Может имена героев оставить, пусть все видят, кто донатил?!
                                                                            1. Илья Уткин 08 august 2016, 15:57 # +1
                                                                              Не все писали ники. Большинство указывало только электронную почту. Не думаю, что всем будет приятно, если их почту выставить в паблик. Как-то не подумал, действительно.
                                                                      2. Илья Уткин 08 august 2016, 20:44 # 0
                                                                        Сборка уже в магазине https://modstore.pro/packages/sites-themes/siteextra
                                                                        1. Павлик Мышкин 09 august 2016, 09:06 # 0
                                                                          Планируете добавить в сборку дополнительного пользователя в админке? Администратора сайта или редактора, у которого есть доступ к редактированию текстов и загрузке изображений.
                                                                          1. Илья Уткин 09 august 2016, 09:49 # 0
                                                                            М-м-м… нет, не планирую. Может, кто-то сделает и поделится решением. Посмотрим
                                                                          2. Алексей Бгатов 09 august 2016, 12:26 # 0
                                                                            Илья, здравствуйте.
                                                                            Планируете ли дорабатывать simpleUpdater?
                                                                            хотел попросить — добавьте пожалуйста в папку setup файл .htaccess со строкой RewriteEngine Off
                                                                            ибо кастомный хтакцесс с удалением слэшей не дает запустить установку.
                                                                            а так — очень удобный компонентик, заценил
                                                                            1. Иванов 04 september 2016, 22:17 # 0
                                                                              Илья! Ты великий человек!

                                                                              Подпись: Паша Устюгов из скайп чата.
                                                                              1. Илья Уткин 04 september 2016, 22:23 # +1
                                                                                Ой, да ладно, тут ничего такого особенного =)
                                                                              2. Павел 11 october 2016, 18:09 # 0
                                                                                Подскажите кто-нибудь одну вещь.
                                                                                Как при создании ТВ указать, для каких шаблонов она доступна?
                                                                                1. Павел 11 october 2016, 20:13 # +3
                                                                                  Сам спросил, сам и отвечаю)) Может кому пригодится.

                                                                                  В общем правим резолвер tvs. Он находится здесь: siteExtra-master/_build/resolvers/resolve.tvs.php

                                                                                  В общем меняем вызовы тивишек:

                                                                                          $name = 'address';
                                                                                          if (!$tv = $modx->getObject('modTemplateVar', array('name' => $name))) {
                                                                                              $tv = $modx->newObject('modTemplateVar');
                                                                                          }
                                                                                          $tv->fromArray(array(
                                                                                              'name'         => $name,
                                                                                              'type'         => 'text',
                                                                                              'caption'      => 'Адрес',
                                                                                              'category'     => $cat_id
                                                                                          ));
                                                                                          $tv->save();
                                                                                          $tvs[] = $tv->get('id');
                                                                                          
                                                                                          $name = 'phone';
                                                                                          if (!$tv = $modx->getObject('modTemplateVar', array('name' => $name))) {
                                                                                              $tv = $modx->newObject('modTemplateVar');
                                                                                          }
                                                                                          $tv->fromArray(array(
                                                                                              'name'         => $name,
                                                                                              'type'         => 'text',
                                                                                              'caption'      => 'Телефон',
                                                                                              'category'     => $cat_id
                                                                                          ));
                                                                                          $tv->save();
                                                                                          $tvs[] = $tv->get('id');
                                                                                  

                                                                                  На:

                                                                                          $name = 'address';
                                                                                          $tempID = '1,2'; // Пишем id наших шаблонов
                                                                                          if (!$tv = $modx->getObject('modTemplateVar', array('name' => $name))) {
                                                                                              $tv = $modx->newObject('modTemplateVar');
                                                                                          }
                                                                                          $tv->fromArray(array(
                                                                                              'name'         => $name,
                                                                                              'type'         => 'text',
                                                                                              'caption'      => 'Адрес',
                                                                                              'category'     => $cat_id
                                                                                          ));
                                                                                          $tv->save();
                                                                                          $tvs[] = $tv->get('id').'-'.$tempID;
                                                                                          
                                                                                          $name = 'phone';
                                                                                          $tempID = '2';  // Пишем id наших шаблонов
                                                                                          if (!$tv = $modx->getObject('modTemplateVar', array('name' => $name))) {
                                                                                              $tv = $modx->newObject('modTemplateVar');
                                                                                          }
                                                                                          $tv->fromArray(array(
                                                                                              'name'         => $name,
                                                                                              'type'         => 'text',
                                                                                              'caption'      => 'Телефон',
                                                                                              'category'     => $cat_id
                                                                                          ));
                                                                                          $tv->save();
                                                                                          $tvs[] = $tv->get('id').'-'.$tempID;
                                                                                  

                                                                                  Можно указать один шаблон, а можно несколько через запятую.

                                                                                  А также заменяем скрипт который записывает id этих шаблонов для тивишек.

                                                                                  Меняем:

                                                                                  foreach ($modx->getCollection('modTemplate') as $template) {
                                                                                              $templateId = $template->id;
                                                                                              foreach ($tvs as $k => $tvid) {
                                                                                                  if (!$tvt = $modx->getObject('modTemplateVarTemplate', array('tmplvarid' => $tvid, 'templateid' => $templateId))) {
                                                                                                      $record = array('tmplvarid' => $tvid, 'templateid' => $templateId);
                                                                                                      $keys = array_keys($record);
                                                                                                      $fields = '`' . implode('`,`', $keys) . '`';
                                                                                                      $placeholders = substr(str_repeat('?,', count($keys)), 0, -1);
                                                                                                      $sql = "INSERT INTO {$modx->getTableName('modTemplateVarTemplate')} ({$fields}) VALUES ({$placeholders});";
                                                                                                      $modx->prepare($sql)->execute(array_values($record));
                                                                                                  }
                                                                                              }
                                                                                          }
                                                                                  

                                                                                  На:

                                                                                  foreach ($modx->getCollection('modTemplate') as $template) {
                                                                                              $templateId = $template->id;
                                                                                              foreach ($tvs as $k => $tv) {
                                                                                                  $tvOpt = explode("-", $tv);
                                                                                                  $tvid = $tvOpt[0];
                                                                                                  $tvTemps = explode(",",$tvOpt[1]);
                                                                                                  
                                                                                                  foreach ($tvTemps as $tvTemp){
                                                                                                      if($templateId == $tvTemp){
                                                                                                          if (!$tvt = $modx->getObject('modTemplateVarTemplate', array('tmplvarid' => $tvid, 'templateid' => $templateId))) {
                                                                                                              $record = array('tmplvarid' => $tvid, 'templateid' => $templateId);
                                                                                                              $keys = array_keys($record);
                                                                                                              $fields = '`' . implode('`,`', $keys) . '`';
                                                                                                              $placeholders = substr(str_repeat('?,', count($keys)), 0, -1);
                                                                                                              $sql = "INSERT INTO {$modx->getTableName('modTemplateVarTemplate')} ({$fields}) VALUES ({$placeholders});";
                                                                                                              $modx->prepare($sql)->execute(array_values($record));
                                                                                                          }
                                                                                                      }
                                                                                                  }
                                                                                              }
                                                                                          }
                                                                                  

                                                                                  Скажу, что этого очень не хватало. Думаю, что Илья может доработать это дело получше)). А вообще хотелось бы увидеть подобный функционал в этом пакете.
                                                                                  1. Илья Уткин 12 october 2016, 08:29 # 0
                                                                                    Ну, в сборке ТВ-шки прицепляются ко всем шаблонам (вроде). Делать настройку в виде интерфейса сложновато.

                                                                                    А если делать свою сборку, то вариант выше — вполне подойдёт. Мне надо в сборке добавить чекбоксы — какие чанки создавать, какие дополнения устанавливать. Вот это будет удобно, но никак руки не дойдут)))
                                                                                    1. Павел 12 october 2016, 13:48 # 0
                                                                                      Ещё бы разобраться, как новый источник файлов создавать… ну и права желательно… и вообще круто будет)
                                                                                      1. Илья Уткин 12 october 2016, 16:09 # 0
                                                                                        Вот тут и источник создаётся, и пользователь с ограниченным доступом: modx.pro/solutions/10026-script-to-create-user-defined/
                                                                                        1. Павел 13 october 2016, 19:01 # 0
                                                                                          Сколько пробовал, не получается. Пробовал новый резолвер создать, в него всё это дело записал.
                                                                                          Установка пакета не завершается, хотя скрипт всё выполняет, что от него требуется, Илья, не подскажешь, почему так, как более опытный)

                                                                                          <?php
                                                                                          
                                                                                          /** @var $modx modX */
                                                                                          if (!$modx = $object->xpdo AND !$object->xpdo instanceof modX) {
                                                                                              return true;
                                                                                          }
                                                                                          
                                                                                          /** @var $options */
                                                                                          switch ($options[xPDOTransport::PACKAGE_ACTION]) {
                                                                                              case xPDOTransport::ACTION_INSTALL:
                                                                                              case xPDOTransport::ACTION_UPGRADE:
                                                                                          	// Скрипт вставлял здесь
                                                                                                  break;
                                                                                              case xPDOTransport::ACTION_UNINSTALL:
                                                                                                  break;
                                                                                          }
                                                                                          
                                                                                          return true;
                                                                                          
                                                                                          
                                                                                          1. Илья Уткин 14 october 2016, 08:18 # 0
                                                                                            Попробуй убрать все $modx->setLogLevel и $modx->log — может, это прерывает его работу…
                                                                                            1. Павел 14 october 2016, 13:50 # 0
                                                                                              Эффект тот же, не помогает. Даже пробовал сниппет создать с этим скриптом и его запустить через runsnippet — та же ситуация.

                                                                                              Даже попробовал создать только шаблон политики доступа, всё создалось, но опять виснет.

                                                                                              <?php
                                                                                              
                                                                                              /** @var $modx modX */
                                                                                              if (!$modx = $object->xpdo AND !$object->xpdo instanceof modX) {
                                                                                                  return true;
                                                                                              }
                                                                                              
                                                                                              /** @var $options */
                                                                                              switch ($options[xPDOTransport::PACKAGE_ACTION]) {
                                                                                                  case xPDOTransport::ACTION_INSTALL:
                                                                                                  case xPDOTransport::ACTION_UPGRADE:
                                                                                              
                                                                                                      $NAME = 'manager';
                                                                                                      $groupName = $NAME;                     // Название группы пользователей
                                                                                                      $mediaSourceName = $NAME;               // Название медиа источника
                                                                                                      $roleAuthority = 9;                     // Ранг роли
                                                                                                      $mediaSourcePath = 'assets/uploads/';   // Путь для медиа источника, если указать пустую строку медиа источник создаваться не будет
                                                                                                      $bindMediaSourceTv = true;              // Привязывать ли источник файлов ко всем tv. Предыдущие источники будут отвязаны
                                                                                                      $contextKey = 'web';
                                                                                                      $users = array(
                                                                                                          $NAME => array(
                                                                                                              'username' => $NAME,
                                                                                                              'password' => $NAME,            // min 6 символов
                                                                                                              'email' => '',
                                                                                                          ),
                                                                                                      );
                                                                                              
                                                                                                      $accessPolicy = array(
                                                                                                          'access_permissions' => 0, //Страницы и действия, связанные с правами доступа.
                                                                                                          'dashboards' => 0, //Просмотр и управление панелями.
                                                                                                          'element_tree' => 0, //Возможность просмотра дерева элементов в левой навигационной панели.
                                                                                                          'menu_reports' => 0, //Показывать в верхнем меню пункт «Отчёты».
                                                                                                          'menu_security' => 0, //Показывать в верхнем меню пункт «Безопасность».
                                                                                                          'menu_site' => 0, //Показывать в верхнем меню пункт «Сайт».
                                                                                                          'menu_system' => 0, //Показывать в верхнем меню пункт «Система».
                                                                                                          'menu_tools' => 0, //Показывать в верхнем меню пункт «Инструменты».
                                                                                                          'new_static_resource' => 0, //Создавать новые статичные ресурсы.
                                                                                                          'packages' => 0, //Использовать пакеты в системе управления пакетами.
                                                                                                          'remove_locks' => 0, //Удалять все блокировки на сайте.
                                                                                                          'settings' => 0, //Смотреть и редактировать системные настройки.
                                                                                                          'sources' => 0, //Управлять источниками файлов и типами источников файлов.
                                                                                                      );
                                                                                              
                                                                                                      //Создаем новый шаблон политики доступа на основании админавского
                                                                                              
                                                                                                      if ($templatePolicy = $modx->getObject('modAccessPolicyTemplate', array('name' => $NAME))) {
                                                                                                          $templatePolicyId = $templatePolicy->id;
                                                                                                      } else {
                                                                                                          $response = $modx->runProcessor('security/access/policy/template/duplicate', array(
                                                                                                              'id' => 1, // Administrator template id
                                                                                                          ));
                                                                                              
                                                                                                          $templatePolicyId = $response->getObject()['id'];
                                                                                              
                                                                                                          $response = $modx->runProcessor('security/access/policy/template/update', array(
                                                                                                              'id' => $templatePolicyId,
                                                                                                              'name' => $NAME,
                                                                                                          ));
                                                                                              
                                                                                                      }
                                                                                                      
                                                                                                      break;
                                                                                                  case xPDOTransport::ACTION_UNINSTALL:
                                                                                                      break;
                                                                                              }
                                                                                              
                                                                                              return true;
                                                                                              
                                                                                              
                                                                                              И что самое интересное, ошибок то нет…
                                                                                2. Егор 14 october 2016, 06:07 # 0
                                                                                  Отличная сборка! Только вот вложенные URL почему-то не хотят работать.
                                                                                  1. Илья Уткин 14 october 2016, 08:18 # 0
                                                                                    .htaccess переименован?
                                                                                    1. Егор 14 october 2016, 10:00 # 0
                                                                                      Да, все дополнением переименовалось, проверил. На демо-сайте тоже s6158.h5.modhost.pro/spec-1.html вместо s6158.h5.modhost.pro/specialists/spec-1.html. И он, кстати, 500 ошибку выдает.
                                                                                      1. Илья Уткин 14 october 2016, 17:48 # 0
                                                                                        Да, это глюк. Но для новых страниц всё должно быть нормально. Попробуйте создать нового специалиста.
                                                                                        1. Егор 14 october 2016, 18:34 # 0
                                                                                          Спасибо! Да, действительно все заработало)
                                                                                  2. Василий Наумкин 29 october 2016, 14:52 # +2
                                                                                    Плагин siteRedirect постоянно делает редирект, даже если сайт уже настроен по инструкции.

                                                                                    Меня в поддержке уже задолбали вот такими вопросами:
                                                                                    Сделал все по инструкции, но что-то ничего не работает.
                                                                                    При попытке перейти на поддомен из админки или по прямому адресу осуществляется редирект на главную в основном контексте.
                                                                                    Подозреваю, что это из-за правил сервера, там стоит перенаправление на один хост с https.
                                                                                    Но, я убирал это правило и даже давал время на всякий случай на сохранение настроек, но все равно, даже при попытке перейти на служебный домен s6xxx.modhost.pro осуществляется редирект на основной xxxx.ru
                                                                                    Можете помочь?

                                                                                    Подозреваю, мало кто из пользователей siteExtra знает о том, что них уже есть плагин с редиректом.
                                                                                    1. Илья Уткин 29 october 2016, 15:35 # 0
                                                                                      Блин, да, косяк… надо его выключить по умолчанию. Как раз планировал заняться исправлением косяков в сборке.
                                                                                      1. Василий Наумкин 29 october 2016, 17:15 # +1
                                                                                        Спасибо!
                                                                                        1. Илья Уткин 31 october 2016, 09:19 # 0
                                                                                          Обновил, заодно поправил пару багов)
                                                                                    2. Павел 08 november 2016, 16:43 # 0
                                                                                      Подскажите пожалуйста… Возникла проблема с установкой пакетов… Бывают пакеты, у которых одинаковые названия. А устанавливается всё равно первый пакет, который репозитории… а нужно скачать второй, указание версии не помогает.



                                                                                       'ColorPicker' => '1.0.2-rc2',
                                                                                      
                                                                                      1. Илья Уткин 08 november 2016, 17:10 # 0
                                                                                        Хм… странная ситуация)) Варианта два.

                                                                                        1. Дописать в результатах поиска пакетов дополнительную проверку версии
                                                                                        2. Самостоятельно обновить нужный пакет в репозитории, чтобы у него дата обновления была более свежей.
                                                                                        1. Павел 08 november 2016, 17:32 # 0
                                                                                          Обновить компонент не получится, так как это репозиторий modx.com… Значит проверку только можно написать. А не подскажешь пожалуйста, как простенькую проверку сделать… а то не знаю, даже как тестить это дело))
                                                                                          1. Илья Уткин 08 november 2016, 17:36 # +1
                                                                                            			foreach ($foundPackages as $foundPackage) {
                                                                                                                            if ($foundPackage->name == 'ColorPicker' && $foundPackage->signature != 'colorpicker-1.0.2-rc2.transport') continue;
                                                                                            				/* @var modTransportPackage $foundPackage */
                                                                                            				if ($foundPackage->name == $packageName) {
                                                                                            1. Павел 08 november 2016, 18:00 # 0
                                                                                              Спасибо, но теперь он вообще ничего не устанавливает.
                                                                                              1. Илья Уткин 08 november 2016, 19:20 # 0
                                                                                                А если colorpicker-1.0.2-rc2? Без .transport
                                                                                                1. Павел 08 november 2016, 19:28 # 0
                                                                                                  Спасибо за помощь. Я сделал проверку на другой пакет, сейчас всё норм.
                                                                                                  if ($foundPackage->signature == 'colorpicker2-1.0-beta1') continue; // Временное решение
                                                                                                  
                                                                                      2. Иван 23 november 2016, 20:34 # -1
                                                                                        Установил сборку. Если создать редирект со СТРАНИЦА_1, на СТРАНИЦА_2, то редирект не срабатывает, а открывается страница 404. Разве это правильно? Думал проблема в автоматическом редиректе, взял его удалил и установил другой, но тоже самое происходит. Может быть я настройки где-то недосмотрел, подскажите пожалуйста как исправить.
                                                                                        1. Alex Ander 31 december 2016, 05:13 # 0
                                                                                          Огромное спасибо за сборку. Установил, все более-менее понятно.
                                                                                          Но на странице вывода специалистов блок с 1ым персонажем отображается больше соседних по размеру из-за того, что вместо установленной выводится дефолтная картинка-заглушка большего размера.
                                                                                          Если отредактировать ресурс и нажать сохранить, то блок выводится как надо, но после рефреша страницы снова картинка меняется на большую дефолтную.
                                                                                          Подскажите пожалуйста куда копать и в чем проблема?
                                                                                          1. Роман Б. 31 january 2017, 02:38 # 0
                                                                                            Разметка то сдвинута… Обратите внимание на ровнение панели меню, полосой над ним, краем телефонного номера в заголовке…
                                                                                            1. Илья Уткин 31 january 2017, 07:59 # +1
                                                                                              Да, элементу <nav> надо бы добавить класс row
                                                                                              1. Роман Б. 31 january 2017, 10:27 # 0
                                                                                                Итак, в чанке «menu», в первой строке:
                                                                                                <nav class="navbar navbar-default container">
                                                                                                
                                                                                                дописал:
                                                                                                <nav class="navbar navbar-default container row">
                                                                                                
                                                                                                Выровнялось.
                                                                                                Спасибо Илья.
                                                                                            2. Михаил 09 february 2017, 13:04 # 0
                                                                                              Поставил эту сборку… Прямо из коробки возникает вот такая ошибка.

                                                                                              Она не критична но всё равно не приятно(((.
                                                                                              1. Илья Уткин 09 february 2017, 13:56 # 0
                                                                                                Я тоже сталкивался с таким… пока не нашёл причину, времени особо не было разобраться… =((
                                                                                              2. Андрей П 19 march 2017, 00:29 # 0
                                                                                                Скажите пожалуйста, будет ли сборка работать с https? И нужно ли будет в связи с этим вносить какие-нибудь изменения, кроме стандартных?
                                                                                                1. Илья Уткин 19 march 2017, 08:46 # 0
                                                                                                  Да, будет работать, никаких изменений вносить не нужно.
                                                                                                You need to login to create comments.