Готовая сборка modx 2.5.0 + shopkeeper3 (обновленная)

Все привет. Пару месяцев назад выложил сборочку.
Сегодня вот выкладываю обновленную версию.
Для начала о приятном, та первая никуда не денется, так и будет висеть можете качать)
А теперь о менее приятном, эта будет платной (256р).

После установки будут установлены компоненты:

  • Ace
    Изменена тема на monokai (системная настройка ace.theme)

  • AjaxForm
    Изменил внешний вид уведомлений jgrowl, в файле assets/components/ajaxform/css/default.css
    Пример можно посмотреть в демо версии сайта, если нажать на кнопку отправить в форме обратной связи. CSS такой:

#jGrowl > [class*="message-error"] {
    background: #CC4141 !important;
    color: #FDFDFD!important;
    border-radius: 0px!important;
    border: 0px!important;
}
...
  • ClientConfig
    Будут созданы три вкладки и несколько параметров.

  • Collections
    Добавлен новый рендер imageresoursegallery, он правда не супер пупер, в обновлениях поправлю. Нужен он для вывода изображения товара.

  • Formit
    Изменены значение словарей, теперь вместо formit, в Приложения -> Формы обратной связи. Что конкретно поменялось, можно посмотреть в управлении словарями, там выделено зелененьким.

  • Frontendmanager
    Изменен стандартный чанк tpl.frontendmanager.panel добавлен вывод полезной информации.

  • MIGx
    resourcegallery. Этой штукой добавляются изображения к товарам.
    resourceslider. Пока ни где не используется. Если хотите, можно вывести слайдер на главной странице к примеру. Заметка 1 Заметка 2

  • Minifyx
    Сжимаем все скрипты нашего шаблона в один файл. Вызывается в чанке meta

  • ModDevTools
    Ускоряет разработку немного) Само приложение перенесено, находиться Управление -> ModDevTools

  • pdoTools
    Набор сниппетов

  • phpthumbon
    Оптимизированный сниппет phpThumbOf под MODX Revolution для работы с изображениями

  • Refreshcache
    Чтобы не бегать по страницам самому для генерации кеша. Перенесено ближе к очистке кеша.

  • SeoPro
    Для сеошников

  • SeoTab
    Генерирует sitemap, 301 редиректы и еще кое-что

  • TinymceRTE
    html редактор для юзверей
    Системная настройка tinymcerte.browser_spellcheck стоит на "Да". Чтобы подсвечивались ошибки. А в файле assets/components/tinymcerte/js/mgr/tinymcerte.js добавлено нескольок строк -
    verify_html отключение очистки кода
    theme_advanced_resizing_use_cookie для корректной вставки изображений.

  • translit
    Для чпу урлов

  • getPage
    Для пагинации в каталоге. Имеется связанный набор параметров catalogFilters

  • getProducts
    Для вывода списка ресурсов (товаров)

  • Login
    Регистрация, авторизация и личный кабинет пользователя. Добавлен сниппет userPhoto для загрузки аватарки пользователя.

  • shopkeeper3
    Два набора параметров shk3.property_sets = miniBasket,cartOrderPage

  • tagManager2
    Измененные системные настройки:
    tag_mgr2.numeric - price,oldprice
    tag_mgr2.prod_templates - 3
    tag_mgr2.propertySetName - catalogFilters

  • Tickets + Jevix
    Для организации отзывов.

  • compare
    Сравнение товаров, при необходимости можно переделать в список избранного.

  • giftcards
    Подарочные карты и скидки интернет магазина.

  • msearch1
    Организация поиска по товарам.

Изменяться системные настройки:

  • emailsender - Нужно будет указать email сайта
  • emailsubject - Нужно будет указать название сайта
  • forgot_login_email, signupemail_message, webpwdreminder_message, websignupemail_message - Переведено на русский
  • use_editor - Да
  • which_editor - TinyMCE RTE
  • which_element_editor - Ace
  • friendly_alias_translit - russian
  • friendly_urls - Да
  • use_alias_path - Да
  • locale - ru_RU.UTF8
  • default_media_source - 2 (images)
  • manager_favicon_url - templates/default/images/modx-icon-color.png
  • manager_week_start - 1
  • mgr_source_icon - icon-folder-open-o
  • resource_tree_node_name - pagetitle
  • resource_tree_node_name_fallback - pagetitle
  • resource_tree_node_tooltip - alias
  • richtext_default - Да
  • error_page - 5
  • site_name - Нужно свое
  • site_unavailable_message - Сайт недоступен
  • unauthorized_page - 6

Создастся профиль в настройке форм:
Будет один профиль (All) который изменяет заголовки ресурсов при создании и обновлении.

  • longtitle - Расширенный заголовок (title)
  • description - Описание (description)
  • introtext - Ключевые слова (keywords)

Контроль доступа, политики доступа, группы ресурсов:
Создана политика доступа Manager на основе Administrator, разрешения и запреты описывать не буду, очень много. Так же создана роль Manager. Ну и собственно группа пользователей Manager. Еще добавиться политика доступа "Пользователи" и такая же группа ресурсов. В группу ресурсов "Пользователи" входят страницы:

  • Личный кабинет (9)
  • Изменение пароля (13)
  • Редактировать профиль (14)
  • Мои комментарии (15)

Пользователи
Всего два пользователя admin и manager
Сразу после установки сборки, ваш старый пароль админа затрется и будет admin123. Его нужно будет поменять, как и email
Второй пользователь Manager, по умолчанию будет заблокирован, пароль у него manager123.
А те кто регистрируется на сайте сразу попадут в группу "Пользователи"

Наборы параметров:

  • cartOrderPage - Набор параметров для страницы корзины (связан с shopkeeper3)
  • miniBasket - Набор параметров для маленькой корзины (связан с shopkeeper3)
  • catalogFilters - Набор параметров для фильтрации товаров в каталоге (связан с getPage)
  • catalogFiltersAjax - Набор параметров для фильтрации товаров в каталоге с pdoPage (связан с pdoPage)

По умолчанию фильтрация товаров в каталоге настроена с catalogFilters. Но тут переписывался @fatijio и он спрашивал про pdoPage.
Если хотите настроить пагинацию загрузкой по кнопке:
В шаблоне "Категория(2)" поменять это:

<div class="row" id="products">
   [[!tmCatalog]]
</div>
<ul class="pagination ">
   [[!+page.nav]]
</ul>

на это:

<div id="pdopage"> 
   [[!+page.nav]]
   <div class="rows">
      <div class="row" id="products">
         [[!tmCatalog]]
      </div>
   </div>
</div>

Открыть системные настройки и изменить:

  • tag_mgr2.propertySetName - catalogFiltersAjax
  • tag_mgr2.propertySetSnippet - pdoPage

Теперь если взглянуть на каталог, там есть кнопка)

Ресурсы:

  • Главная
  • Каталог
  • Категория 1
  • Товар 1
  • Товар 2
  • Товар 3
  • Корзина
  • Спасибо за заказ
  • Личный кабинет
  • Изменение пароля
  • Редактировать профиль
  • Мои комментарии
  • Сравнение товаров
  • Технические страницы
  • Карта сайта
  • robots.txt
  • Страница не найдена 404
  • Доступ запрещен 403
  • Поиск
  • Регистрация
  • Подтверждение регистрации
  • Авторизация
  • Восстановление пароля
  • Сброс пароля

Источники файлов:

  • Filesystem - Основной каталог системы
  • Images - Каталог с изображениями
  • Product images - Каталог с изображениями загружаемые с помощью migx (выше заметка).

Шаблоны:

  • Главная
  • Категория (вызывается tagmanager2)
  • Пользователь (все что связано с пользователем, авторизация, регистрация, личный кабинет)
  • Товар

Дополнительные поля:

  • gallery (Изображения). Изображения для товаров с помощью конфигурации MIGx resourcegallery.
  • price (Цена)
  • oldprice (Старая цена)
  • params (Параметры)
  • tags (Метки)

Чанки:

  • menu (Главное меню сайта) - меню генерируется с помощью pdoMenu
  • meta (Мета теги из head и MinifyX)
  • footer (Подвал) - выводит ссылки на соц сети, текущий год, и пример вызова AjaxForm + Formit
    Ну все от компонентов соответственно.

Как установить?
Так же как и предыдущую сборку.

  • Архив shopkeeper3.tpl.zip закачать на сервер и распаковать. Открыть http://АДРЕС_ВАШЕГО_САЙТА/setup
  • Далее следовать инструкциям по установке modx ВАЖНО! В конце установки СНЯТЬ галочку "Отметьте этот пункт, чтобы удалить каталог и файлы программы установки с вашего сервера (рекомендуется)."
  • Логинимся. идем в Приложения->Установщик. Ищем пакеты локально и устанавливаем shopkeeper3_pitrooo_ru
  • Открыть http://АДРЕС_ВАШЕГО_САЙТА/setup и провести установку в режиме обновления. В конце оставить галочку на удаление каталога и файлов программы установки, они больше не понадобятся.
  • Открыть http://АДРЕС_ВАШЕГО_САЙТА/manager залогиниться Пользователь: admin пароль: admin123.

Если в каталоге и на странице товара не отображаются изображения:
Открыть в верхнем меню: Медиа -> Источники файлов -> правой кнопкой по источнику файлов Product images -> Редактировать. В basePath и baseUrl добавить значение:

[[!migxResourceMediaPath? &pathTpl=`assets/images/product/{id}/` &createFolder=`1` ]]

Потом почистить кэш.

Демо так будет после установки)
Купить тут там внизу форма (256 рупий)

@pitrooo сказал Готовая сборка modx 2.5.0 + shopkeeper3 (обновленная):

userPhoto

Чуть позже опробую.
То что сейчас бросилось в глаза, мини корзина и 2 одинаковые ссылки, что по тотал прайс что по оформить попадаем на /cart.
Может есть смысл price_total сделать не кликабельной?
В карточке товара tp_refresh висит непонятно где.(на скриншоте справа с краю экрана)
0_1473045634932_2016-09-05_06-19-49.png
В карточке товара вкладка пользователя становится не активной. можно только выйти, как и в сравнении и в корзине.
От себя пожелание, в карточку товара добавить блок иконок поделиться в соц. сетях.
И раз уж migx настроен под слайдер, в качестве примера-образца хотелось бы видеть 2-3 слайда на главной.

Пока что все. После покупки и тестирования отпишусь еще.

@LoGruS
Про 2 одинаковые ссылки:
В первой версии было две страницы, одна корзина (с содержимым) а вторая ссылка на оформление заказа, но в этой сборке страница оформления и корзина на одной странице, поэтому две одинаковые. Поправил.
tp_refresh:
Это от tickets, она там по умолчанию висит, если есть новые комментарии к товару там будет циферка о количестве.
Вкладка пользователя:
Поправил, выводил название так: [[#10.pagetitle]]. И почему-то если пользователь залогинен в web то тег не обрабатывается. Смотреть и что да как не стал, просто поменял на текст.

Соц. сети и слайдер добавлю.

256р

Ммм, какая красивая круглая цифра

@LoGruS Добавил слайдер. Кнопки соц сетей добавлять не стал, есть отдельные компоненты вроде. Если без них, то можно так:

<ul class="utility-icons social-icons social-icons-colored">
    <li class="vk"><a href="[[~[[*id]]]]" onclick="Share.vkontakte('[[++site_url]][[*uri]]','[[*longtitle:replace=`"==`]]','[[++site_url]][[*image]]','[[*description:replace=`"==`]]')"><i class="fa fa-vk"></i></a></li>
    <li class="odnoklassniki"><a href="[[~[[*id]]]]" onclick="Share.odnoklassniki('[[++site_url]][[*uri]]','[[*description:replace=`"==`]]')" ><i class="fa fa-odnoklassniki"></i></a></li>
	<li class="facebook"><a href="[[~[[*id]]]]" onclick="Share.facebook('[[++site_url]][[*uri]]','[[*longtitle:replace=`"==`]]','[[++site_url]][[*image]]','[[*description:replace=`"==`]]')"><i class="fa fa-facebook"></i></a></li>
	<li class="twitter"><a href="[[~[[*id]]]]" onclick="Share.twitter('[[++site_url]][[*uri]]','[[*longtitle:replace=`"==`]]')" ><i class="fa fa-twitter"></i></a></li>
</ul>

Только замени плейсхолдеры если вызываешь не на странице. Ну и конкретно для этой сборки вместо [[*image]] :

[[getImageList?&tvname=`gallery`&tpl=`@CODE: [[+image]]`&limit=`1`]]

И добавить на страницу js

jQuery(document).ready(function() {
        Share = {
            vkontakte: function(purl, ptitle, pimg, text) {
            	url  = 'http://vkontakte.ru/share.php?';
        		url += 'url='          + encodeURIComponent(purl);
        		url += '&title='       + encodeURIComponent(ptitle);
        		url += '&description=' + encodeURIComponent(text);
        		url += '&image='       + encodeURIComponent(pimg);
        		url += '&noparse=true';
        		Share.popup(url);
        	},
        	odnoklassniki: function(purl, text) {
        		url  = 'http://www.odnoklassniki.ru/dk?st.cmd=addShare&st.s=1';
        		url += '&st.comments=' + encodeURIComponent(text);
        		url += '&st._surl='    + encodeURIComponent(purl);
        		Share.popup(url);
        	},
        	facebook: function(purl, ptitle, pimg, text) {
        		url  = 'http://www.facebook.com/sharer.php?s=100';
        		url += '&p[title]='     + encodeURIComponent(ptitle);
        		url += '&p[summary]='   + encodeURIComponent(text);
        		url += '&p[url]='       + encodeURIComponent(purl);
        		url += '&p[images][0]=' + encodeURIComponent(pimg);
        		Share.popup(url);
        	},
        	twitter: function(purl, ptitle) {
        		url  = 'http://twitter.com/share?';
        		url += 'text='      + encodeURIComponent(ptitle);
        		url += '&url='      + encodeURIComponent(purl);
        		url += '&counturl=' + encodeURIComponent(purl);
        		Share.popup(url);
        	},
        
        	popup: function(url) {
        		window.open(url,'','toolbar=0,status=0,width=626,height=436');
        	}
        };
});

@pitrooo При уменьшении размера монитора или на телефоне картинка на слайдере искажается, это просто картинка не в размер или другая причина?
0_1473358070764_пост2.png

@Olika Не заданы стили, сборка рассчитана на то, что будет прикручен другой дизайн к ней, а этот будет удален.

Неплохо так.А оформление заказа formit? Ajax прикрутить нельзя?

Скажите, а компоненты отдельно обновляются или только полностью сборкой?

@slaad Отдельно конечно, эта сборка просто устанавливает все компоненты и необходимые настройки, плюс еще кучу всего. По сути, после установки, получишь сайт, каким бы он был, если бы ты сам его настраивал.

@pitrooo я поставил все по инструкции, хостинг (hostinger&beget). Кроме главной страницы ничего не открывается! Все ведет на сайт 404 хостинга. Перечитал док по установке и настройке, ничего не нашел про это. Что надо настроить послу установки????

@slad дружище помоги плиз

@shahin89 Добрый день, я эту сборку не устанавливал.
Вы перенос по инструкции сделали? Т.е. все конфиги поправили, кеш почистили, права на папки поставили?

Если да, проверьте логи сервера и обращайтесь к поддержке Бегета. А вообще советовал бы бежать с Бегета, не знаю как сейчас, но раньше очень много нареканий было.

@slaad я не переносил сборку. Я ее сначала установил на hostinger. После мучений поставил на бегет. То же самое. На бегет и на хостингер не жалуюсь - другие сборки modx нормально стабильно работают.

@shahin89 Если веб-сервер Apache то переименуй ht.access в .htaccess

Похоже, подключение к Форум | MODX Shopkeeper было разорвано, подождите, пока мы пытаемся восстановить соединение.