Сделал переход на плоскую адресацию шаблонов и поправил новый формат темы. Нашел пару ошибок в теме и устранил их. Добавил теги $template.sidebar0, $template.sidebar1 и так далее - ранее эти теги существовали в 2 версии, потом я их упразднил, сейчас опять вернул. Вернул прежде всего для точного указания номера сайдбара в теме. Сделал скрипт конвертатор из старого формата в новый, то бишь из 3 версии в 4. Выяснилось, что в некоторых старых темах много ошибок в html - благодаря новому формату они сразу видны.

Для новой версии остается только сделать интерактивный каталог тем/плагинов. На этом разработка ядра будет прекращена где то на год, по крайней мере я постараюсь больше не добавлять никаких новых фич. Только багфиксы и оптимизация. Пожелания, конечно, будут приниматься и коллекционироваться, но лично я не буду браться за их разработку. Того, что сейчас есть, более чем достаточно, а учитывая количество скриптов, в которых наверняка есть какие то ошибки, ошибок хватит на долго. Правда надо сказать, что если есть ошибки, то они не являются критическими, поскольку все известные мне ошибки (за небольшим исключением) все исправлены.

Я уже давно вышел за все сроки, которые сам себе устанавливал. К завтрашнему дню я планировал окончательно прекратить разработку, хотелось бы хотя бы на один месяц не заниматься разработкой, сосредоточившись на продвижении, улучшении сайтов движка - нужны новые разделы, меню и прочее. Все это работа и не менее сложная чем разработка.

Пока занозой остается каталог. Поскольку планирую делать многоязычный каталог, то придумал следующую модель: языковые каталоги являются автономными каталогами. Главным является на английском, остальные будут синхронизироваться с ним. Что требует синхронизации? Статистика скачиваний от языковых каталогов. Центральный каталог будет сообщать об обновлениях. Сабмит новых продуктов будет возможен только в один каталог - просто страница сабмита продукта может будет многоязычной, но сабмит только в одно место. Все остальные каталоги берут инфу из центрального. Нужен некий протокол обмена данными между каталогами.

  1. Обновление статистики: языковой каталог накопил статсу и отправляет центральному, в ответ получает статсу по всему каталогу: массив id продуктов = колво скачиваний.
  2. добавился/изменился продукт в центральном каталоге - никого об этом не оповещать или оповещать? Думаю, что оповещать последовательно все дочерние каталоги, либо сами каталоги будут проверяться, но так чтобы не толпой, а по одиночке.
  3. языковой каталог обновляет свои данные из центрального - каким образом? Весь целиком? Либо по частям? По каким частям? Нужен фид упорядоченный по дате/версиям. Думаю достаточно запросить результат по времени, куда войдут обновления/новые за указанный период. ко

Ответы на все эти вопросы просты если продуктов будет немного, ну например до 1000. Стоит поставить вопрос - будет ли продуктов более 1000 и если будет, то когда? В ближайший год точно не будет - даже по самым оптимистичным прогнозам (хотя чем черт не шутит). Моя мысль в следующем: сделать один раз качественно навсегда.