У замовника є продукт, з яким він наразі працює.
Проте, у зв’язку зі зміною дизайну та потребою власноруч оперативно робити у ньому зміни, а також для зручнішої роботи з даними, стало питання переробки двигуна проекту, заодно з’явилося питання розміщення проекту на хостингу, а не на VPS (як зараз), без погіршення якісних та швидкісних характеристик проекту, а з покращенням їх замовник знайшов вашу CMS, в частині функціоналу вона його влаштовувала як основа, також влаштовувала ціна за ліцензію та написання нового модуля.
Звертаю вашу увагу на те, що якщо буде зроблено під нас окремо модуль імпорту, то значна частина роботи через інші інтерфейси адмінки перекривається, бо файлами імпорту можна задавати (змінювати) майже все (тобто швидкодія адмінки буде не критичною).
Ще один модуль - це формування статичних (напівстатичних, тобто частина даних буде формуватися динамічно при звертанні до сторінки) сторінок, файлів та даних для наповнення напівстатичних сторінок на основі шаблонів.
Система (мова про версію 140323) у тому вигляді, як вона є, ніяк не може влаштувати ні мене, ні замовника.
Тобто два модулі потрібно буде написати, проте, думаю, у виграші залишитеся і ви, і ваші клієнти, тому що ваша адмінка стане кращою, ніж в конкурентів, і не потрібно буде показувати в процесі завантаження сторінки ніяких цяцьок, бо вона буде віддаватися одразу. Думаю, що час формування напівстатичних і статичних сторінок зі смарті можна значно скоротити, якщо знайти правильний підхід до використання SSI та кешування певних наборів тих самих даних, які використовуються для формування сторінок. Зі знаходженням оптимального підходу потрібно буде експериментувати, але воно того варте.
Щодо таблиць, не знаю як зараз, а раніше наявність нульових значень в таблицях сповільнювала роботу баз даних.
У вас навіщось в таблиці про товари знаходяться і яндекс і вконтакті і багато чого іншого, хоч, як на мене, варто це робити окремими таблицями - є обов’язкові дані по товарах, а є ті, які можуть не використовуватися.
Тобто систему я бачу як кістяк + модулі, є потреба працювати з яндексом - включили модуль - створили відповідні таблиці, закінчилася така потреба - виключили модуль - видалили відповідні таблиці.
Приемні речі
Сподобалися змістовні пояснення до написання свого коду для вашого продукту.
Стосовно нової RC-версiї
Прошу додати до тестового показу рубрику(и) з кількох сотень товарів, щоб можна було оцінити швидкодію нової платформи.
Я радий, що ви розвиваєтесь :)
А чи можна зробити у демці вивід на одну сторінку категорії кількох сотень товарів чи геть усіх, бо 10 на сторінку занадто мало для оцінки під наші потреби.
Питання
А якщо інформація про товар буде виводитися на сторінці категорії у наступному вигляді (тобто туди будуть додаватися дані про властивості):
<div class="PCI-hidden PCI-fitered" data-productID="00010" data-productAddUrl="/p00010-add-uk_pageAddURLSuffics.html" data-productUrl="/p00010-uk_pageURLSuffics.html" data-productAvailability="1" data-productPrice="1000010" data-brandUrl="/b001-uk_pageURLSuffics.html" data-brandName="Kratki" data-productProducerName="Amelia" data-p-sklo="пряме" data-p-d="100 мм" data-p-color="брунатний" data-productName="Чавунна топка Amelia" data-properties='{"Властивість 1:":"дані 10438","Властивість 2:":"дані 2","Властивість 3:":"дані 3","Властивість 5:":"<a href=#>дані 5</a>","Властивість 1:":"дані 1","Властивість 2:":"дані 2","Властивість 3:":"дані 3","Властивість 5:":"<a href=#>дані 5</a>","Властивість 1:":"дані 1","Властивість 2:":"дані 2","Властивість 3:":"дані 3","Властивість 5:":"<a href=#>дані 5</a>","Властивість 1:":"дані 1","Властивість 2:":"дані 2","Властивість 3:":"дані 3","Властивість 5:":"<a href=#>дані 5</a>"}'> </div>
на скільки повільніше буде формуватися сторінка каталогу?
Швидкість сторінок
demo.imperacms.com/products?show_all=1 - надто довго обробляється запит, як для простого відсікання, у випадку, якщо такий запит не передбачений.
demo.imperacms.com/products/page_28 - не змінюється нумерація-навігація у випадку бази на >4000 товарів - в шаблоні Мінімаліст чомусь передбачено лише декілька перших кнопок навігатора, таким чином на сторінці наприклад 29 (індекс 28) продовжують показуватися ті ж самі перші кнопки навігатора.
Це можливе рішення щодо зменшення кількості запитів до серверу для пришвидшення завантаження (можливо зараз воно є десь новіше) - hunlock.com/blogs/Supercharged_Javascript
Трошки новіше рішення - code.google.com/p/minify
Щось подібне використовується на існуючому у нас проекті для файлів css, js. Це може бути також однією з переваг вашого проекту.
А у випадку шаблону Мінімаліст ви можете пришвидшити настання події DomContentLoaded, якщо скрипти та стилі вставите безпосередньо у тіло сторінки зручним вам способом (не окремими файлами), цим самим зменшите кількість запитів на 2 та пришвидшите початок відображення сторінки.
А ще не зрозумів чи кешуються на стороні серверу сторінки каталогу, якщо зважати на те, що ціна змінюється раз на день, нема потреби формувати їх щоразу.