Или сами иконки слишком мелкие, реально 180 х 180 пикселов — ну куда это годится для современных мониторов?
Код простой, в файле XLite\Module\DAG\MaayaSkin\View\ItemsList\Product\Customer\ACustomer.php вашего модуля-скина пишем следующее:
Сложнее другое. Эти иконки общие и используются и в других модулях, дизайн которых портится после изменения размена иконок. Так, например "рекомендуемые товары" в модуле Add2CartPopup начинают наползать друг на друга. И что делать?
Нужно найти ВСЕ такие проблемные модули и декорировать их классы, указав, что виджет должен оперировать "старым" размером изображений товаров. Для Add2CartPopup я в своем модуле-скине добавил файл XLite\Module\DAG\MaayaSkin\View\Products.php со следующим кодом (использование именно этого метода класса Products спорно, но почему бы и нет?):
Я подозреваю, что явно указывая вместо self нужный класс виджета (в нашем случае это \XLite\Module\XC\Add2CartPopup\View\Products)- можно менять его параметры из другого виджета, не затрагивая кода самого класса.
обсуждение этой темы на офф форуме X-Cart доступно по ссылке
Код простой, в файле XLite\Module\DAG\MaayaSkin\View\ItemsList\Product\Customer\ACustomer.php вашего модуля-скина пишем следующее:
<?phpУверен, что где прописать размеры иконок продуктов - понятно :) где какие иконки - понятно не сразу, но разобраться не сложно.
namespace XLite\Module\DAG\MaayaSkin\View\ItemsList\Product\Customer;
abstract class ACustomer extends \XLite\View\ItemsList\Product\Customer\ACustomer implements \XLite\Base\IDecorator
{
public static function getIconSizes()
{
return array(
static::WIDGET_TYPE_SIDEBAR . '.' . static::DISPLAY_MODE_STHUMB => array(180, 180),
static::WIDGET_TYPE_SIDEBAR . '.' . static::DISPLAY_MODE_BTHUMB => array(180, 180),
static::WIDGET_TYPE_CENTER . '.' . static::DISPLAY_MODE_GRID => array(220, 220)
static::WIDGET_TYPE_CENTER . '.' . static::DISPLAY_MODE_LIST => array(220, 220),
'other' => array(110, 110),
);
}
}
Сложнее другое. Эти иконки общие и используются и в других модулях, дизайн которых портится после изменения размена иконок. Так, например "рекомендуемые товары" в модуле Add2CartPopup начинают наползать друг на друга. И что делать?
Нужно найти ВСЕ такие проблемные модули и декорировать их классы, указав, что виджет должен оперировать "старым" размером изображений товаров. Для Add2CartPopup я в своем модуле-скине добавил файл XLite\Module\DAG\MaayaSkin\View\Products.php со следующим кодом (использование именно этого метода класса Products спорно, но почему бы и нет?):
<?phpПерезагружаем магазин и видим, что все ОК.
// vim: set ts=4 sw=4 sts=4 et:
namespace XLite\Module\DAG\MaayaSkin\View;
class Products extends \XLite\Module\XC\Add2CartPopup\View\Products implements \XLite\Base\IDecorator
{
protected function getMaxCount()
{
$this->widgetParams[self::PARAM_ICON_MAX_WIDTH]->setValue(180);
$this->widgetParams[self::PARAM_ICON_MAX_HEIGHT]->setValue(180);
return static::PARAM_MAX_PRODUCT_COUNT;
}
}
Я подозреваю, что явно указывая вместо self нужный класс виджета (в нашем случае это \XLite\Module\XC\Add2CartPopup\View\Products)- можно менять его параметры из другого виджета, не затрагивая кода самого класса.
обсуждение этой темы на офф форуме X-Cart доступно по ссылке
Комментариев нет:
Отправить комментарий