Структура JAX
Шаблон состоит из двух частей: HTM и PHP. При скачивании шаблона PHP и HTM версии упаковываются в один архив, PHP версия находится в каталоге /www, HTM версия находится в каталоге /www/htm. По внутренней структуре обе части идентичны, отличия HTM версии состоят в следующем:
- Расширения всех файлов
.phpв корневом каталоге заменены на.htm. - Для всех продуктов и категорий сгенерированы файлы вида
{product name|category name}.htm. Эти файлы содержат входные параметры, передаваемые движку, например:$_GET['product']= 'viagra';. - Расширения всех файлов
.phpв каталоге/langи его подкаталогов заменены на.htm.
Далее в данном документе, при указании имени файла в корневом каталоге с расширением .php, будет подразумеваться, что для HTM версии шаблона имена таких файлов должны интерпретироваться с расширением .htm.
Файлы в корневом каталоге, к которым обращаются запросы клиентов (например, /about.php), являются обертками к движку. В таких файлах происходит следующее:
- Задается ID страницы:
$PAGE_ID='about', и, в некоторых случаях, дополнительные входные параметры. - Включается файл
/header.php. Этот файл выводит шапку страницы и список категорий продуктов. - Вызываются методы рабочей части движка, отвечающие за инициализацию необходимых данных и вывод содержимого центральной области страницы.
- Включается файл
/footer.php. Этот файл выводит правое меню и нижнюю часть страницы.
Рабочая часть движка находится в каталоге /.htclasses. При инициализации создается глобальный объект $Page. Этот объект является экземпляром класса Page и обеспечивает большинство методов, отвечающих за вывод содержимого страницы. Класс Page является потомком классов CommonPage, BasePage и LocalCache. Список основных методов вывода:
Page::draw_head_meta()– выводит теги DOCTYPE, head (включая content-type, stylesheet, shortcut icon, keywords, description и script).Page::menu()- принимает идентификатор и возвращает html соответствующее меню, например:print $Page->menu('top');.Page::draw_lang_switch()– выводит панель переключения языков. Список языков для вывода находится в/aff_camp.php.Page::cart_summary()– возвращает html с информацией о корзине кастомераPage::link_cart()– возвращает html с линком на страницу корзиныPage::draw_categories_menu()– выводит меню со списком категорийPage::draw_subtitle()– выводит подзаголовок текущей страницыPage::draw_filetext()– выводит html страницы с заданным идентификаторомPage::draw_product_list()– выводит html со списком продуктов для заданной категории или найденных по критерию поиска.Page::draw_product_page()- выводит html страницы заданного продуктаPage::title()- возвращает title сайта
Тексты для страниц находятся в каталогах /lang/{lang}/{page_id}.html. Например, текст для страницы about.php на английском языке находится в файле /lang/en/about.html.
Описания категорий и продуктов находятся в файлах /lang/{lang}/descr/[{description_type|category}-]{product_name|category_name}.html. Описания продуктов бывают трех типов:
short- кратчайшее описание, состоит из 1го – 2х предложений, отображается на странице со списком продуктовpre- краткое описание, отображается вверху страницы продукта.- full description - полное описание продукта.
Пробелы в названиях продуктов и категорий при генерации имен файлов заменяются символом -, символы ' заменяются символами ___, буквы в верхнем регистре переводятся в нижний. Например, краткое описание для продукта Viagra Soft на английском языке находится в файле /lang/en/descr/pre-viagra-soft.html. Имена файлов для полных описаний продуктов генерируются без префикса типа. То есть, полное описане для Viagra Soft на английском находится в файле /lang/en/descr/viagra-soft.html. Имена файлов для описания категорий генерируются с префиксом category. Соответственно, описание категории Mens's Health находится в файле /lang/en/descr/category-men___s-health.html
Дефолтные description и keywords для сайта находятся в файлах /description.txt и /keywords.txt соответсвенно.
Установка JAX
- Распаковать архив со скачанным шаблоном.
- Для PHP версии - скопировать содержимое каталога
/wwwв корневой каталог сайта. Каталог/htmкопировать не нужно. - Для HTM версии – скопировать содержимое каталога
/www/htmв корневой каталог сайта. - Убедиться, что каталог
/.htcache/, его подкаталоги и файлы доступны для записи веб-серверу. - Убедиться, что на веб-сервере установлен и разрешен mod_rewrite, и для каталога, в который производится установка, включена директива
AllowOverride All.
Работа с JAX
Общие настройки
Основная настройка движка осуществляется через файлы /aff_camp.php.
Переменные /aff_camp.php:
$CURRENT_LANG- язык сайта по умолчанию$TITLE- заголовок сайта.$SELECTED_OPTIONS- включение/выключение линкаBookmark this site(BOOKMARKUS), линкаAffiliate Program(JOINUS), линкаSubscribe for News(SUBSCRIBE), бесплатного шиппинга (AIRMAIL_FREE_SHIPPING) и отображения цен в евро при выборе языкаen-us(USA_EUROS).$LANG_AVAIL- массив доступных языков (возможные значения:en,en-us,es,pt,de,fr,jp,it.
Работа с административным интерфейсом JAX
Встроенная в JAX админка позволяет редактировать title, description и keywords для отдельных страниц, а также описания продуктов. Для входа в админку необходимо зайти по следующему урлу:
http://your-shop.com/admin.{php|htm}?password=<password>.
Пароль на админку устанавливается при компиляции шаблона перед скачиванием или автоматической установкой на хостинг равным паролю к фтп-аккаунту на фри-хосте (в ближайшее время будет реализована возможность задавать пароль при выборе параметров компиляции шаблона). Пароль сохраняется в файле .htcache/.httitles как элемент сериализованного хеша. Не рекоммендуется менять вручную пароль через этот файл не зная принципы сериализации данных в PHP. С целью обеспечения безопасности при неправильно указанном пароле JAX выдаст ошибку 404.
Если авторизация прошла успешно, вверху страницы появится ряд линков для редактирования, а также над описаниями продуктов появятся линки edit this text. При нажатии на любой из перечисленных линков откроется всплывающее окно редактора.
Для выхода из административного интерфейса необходимо нажать на линк exit editmode.
Все изменения, произведенные через админку, сохраняются в каталоге .htcache, не перезаписывая, но перекрывая исходные данные.
Редактирование page title, page keywords, page description
Редактирование перечисленных параметров через админку производится отдельно для каждой страницы. Для редактирования необходимо нажать на соответствующий линк вверху страницы (edit page title, edit page keywords или edit page description). Изменения будут применены только в случае, если не установлена автоматическая генерация.
Page title сохраняется в файле .htcache/.httitles для английского языка, или .htcache/lang/{lang}/.httitles для других языков, как элемент сериализованного хеша (пробелы в именах заменяются символом +), page keywords и page description - в файлах .htcache/lang/{lang}/{keywords|description}-{page_id}[-{product_name}].html (пробелы заменяются символом -).
Соответственно, title для страницы продукта Viagra Soft на английском языке сохранится в .htcache/.httitles в элементе product-viagra+soft, keywords для страницы faq.php на немецком сохранится в файле .htcache/lang/de/keywords-faq.html, description для страницы категории Anti Bacterial на английском - в файле .htcache/lang/en/description-category-anti-bacterial.html.
После сохранения данных для отдельной страницы данные по умолчанию на этой странице будут перекрываться сохраненными. Для восстановления исходных данных необходимо нажать в редакторе кнопку reset to default, либо удалить соответствующий файл или элемент хеша вручную.
Редактирование описаний продуктов
Для редактирования описания необходимо нажать на линк edit this text рядом с соответствующим текстом. Описания продуктов сохраняются в файлах в каталоге /.htcache: .htcache/lang/{lang}/descr/[{description_type}-]{product_name}.html.
Редактирование описаний категорий через админку на данный момент не реализовано.








