четверг, 25 октября 2012 г.

Отключить HTTPS SSL

При переносе на локал не работает вход в админку, поскольку не подключается SSL-сертификат - возникает необходимость отключить подключение через https.

Открываем таблицу xcart_config
Для use_https_login (поле name) меняем value вместо "Y" ставим "N"

понедельник, 15 октября 2012 г.

После загрузки на хостинг x-cart не видит скины.

Столкнулся с такой проблемой, что после публикации сайта на хостинг х-карт не видит скины. Никак проблему не удалось решить или даже обнаружить.
В таких ситуациях очень помогает попробовать установить х-карт с нуля прямо на хостинге. Если есть какие проблемы (либо какие-то опции отключены) - они всплывут только на этапе установки.
В процессе установки выяснилось, что:

Disabled functions list ... parse_ini_file

Чтобы решить эту проблему необходимо (рекомендации х-карта):

1. Если есть доступ к php.ini удалить из списка
disable_functions = <here goes the list of disabled functions> 
следующую строку:
parse_ini_file

2. Если нет доступа - обратиться к хостинг-провайдеру.

пятница, 5 октября 2012 г.

Навигация ссылки

Ссылки на основные элементы навигации:

Shopping Cart /cart.php
Check Out  /cart.php?mode=checkout
Registration <a href="register.php" title="{$lng.lbl_register|escape}">{$lng.lbl_register}</a>
Authorisation {include file="customer/main/login_link.tpl"}
Search {include file="customer/search.tpl"}
Contact Us /help.php?section=contactus&mode=update

Подключение стилей

Необходимо положить стили в папку /skin/your_skin_name/css/

После подключение осуществляется в файле /skin/common_files/customer/service_css.tpl

Например: {load_defer file="css/style.css" type="css"}

вторник, 21 августа 2012 г.

Переменные в x-cart

Какие переменные используются при создании товаров

{$product.product|amp} - имя товара
{$product.descr} - описание товара
{$lng.lbl_see_details} - see details. Смотреть описание
{$product.price} - цена товара (NOW)
{$product.list_price} - старая цена товара (WAS)




Регистрация и авторизация


{include file="customer/main/login_link.tpl"} - формирует гиперссылку на pop-up для авторизации

<a href="register.php" title="{$lng.lbl_register|escape}">
   {$lng.lbl_register}
</a> - формирует гиперссылку перехода на страницу регистрации

<a href="help.php?section=Password_Recovery"
title="{$lng.lbl_forgot_password|escape}">
    {$lng.lbl_forgot_password}
</a> - формирует гиперссылку перехода на страницу восстановления пароля

Не отображается меню категорий

Столкнулся с ошибкой: не отображаются меню категорий.
Пользовался всеми стандартными средствами по очистке различного рода кешированных страниц/документов.

Проблема заключалась в том, что в базе данных таблицы:
xcart_images_b
xcart_images_d
....
были созданы с последней буквой в нижнем регистре, а в файле /init.php в массиве эти таблицы были прописаны с этими же буквами в верхнем регистре:

xcart_images_B
xcart_images_D
....
Воспользуйтесь любым удобным вариантом переименования (либо в базе, либо в init.php). Хотя как показала практика - лучше переименовать в базе.

Проблема была выявлена в $debug_mode = 1; (опция в файле /config.php)
Была ошибка рода: таблица xcart_images_d не существует.


ALTER TABLE xcart_images_b RENAME xcart_images_B;
ALTER TABLE xcart_images_c RENAME xcart_images_C;
ALTER TABLE xcart_images_d RENAME xcart_images_D;
ALTER TABLE xcart_images_g RENAME xcart_images_G;
ALTER TABLE xcart_images_l RENAME xcart_images_L;
ALTER TABLE xcart_images_m RENAME xcart_images_M;
ALTER TABLE xcart_images_p RENAME xcart_images_P;
ALTER TABLE xcart_images_s RENAME xcart_images_S;
ALTER TABLE xcart_images_t RENAME xcart_images_T;
ALTER TABLE xcart_images_w RENAME xcart_images_W;
ALTER TABLE xcart_images_z RENAME xcart_images_Z;

понедельник, 20 августа 2012 г.

Установка x-cart

Настройки и параметры, которые использую я при установке x-cart gold:


1. Установка 

License agreement >>

Checking PHP configuration >>

Preparing to install X-Cart database >>
X-Cart web directory - если х-карт находится не в корне, сюда указываем путь.
MySQL database name - лучше всего указать имя БД, связанное с проектом.
Your e-mail address - лучше указывать не существующий адрес.

Preparing to install X-Cart database>>
Email as login authorization mode - лучше отключить эту опцию.
Остальное лучше оставить по-умолчанию.

Installing X-Cart database >>

Layout settings >>
Обычно я выбираю скин, который удобнее для меня адаптировать под те или иные проекты - Vivid dreams (Aquamarine)

Setting Layout >>

PayPal payment processing >>

Generating a system fingerprint >>

2. Настройка админской части

После установки не забываем записать пароль мастера и сразу же заходим в админку и меняем его на удобный.

Переходим в Settings / General Settings:
В подкатегории Optimisation settings отключаем опции:
 - Use speed-up tool for Javascript
 - Use speed-up tool for CSS

Далее в Settings / Modules отключаем:
 - affilates
 - bestsellers
 - flyout menus
 - recently viewed

3. Правка файлов на FTP (HDD)


По-умолчанию цмска кэширует все страницы это можно отключить в config.php в корне 
define('USE_DATA_CACHE', false);


Поскольку мы будем заниматься правкой только одного скина, который выбрали при установке (Vivid dreams Aquamarine), остальные нам не понадобятся. Удаляем все папки коме common_files и vivid_dreams_aquamarine. Для удобства переименуем папку со скином, в соответствии с именем нашего проекта, заодно поменяв в файле skin/skin_name/altskin.ini

Далее избавляемся от триальной надписи на титульной странице:
/skin/common_files/customer/evaluation.tpl
и удаляем там следующую строку:
<div class="evaluation-notice">{$lng.txt_reg_not_registered_frontend}</div>

Для упрощения нашей верстки нужно удалить дефолтные стили для body, div#page-container, чтобы не было конфликтов.
Поскольку система x-cart работает таким образом, что ищет сперва нужный файл в папке с дефолтным скином, если там не находит - обращается в папку common_files. Мы перемещаем из папки common_files/css/main.css в аналогичную папку дефолтного скина. Собственно в этом main.css, а также в altskin.css удаляем body стили.

В файле skin/skin_name/customer/categories.tpl
Изменить значение для additional_class, добавив единицу. Данное изменение помогает побороть проблему связанную с пересечением стилей верстки и базовыми стилями.
{assign var="additional_class" value="menu-categories-list1"}