Virtuemart2 добавление бейджиков «Распродажа», «Скидки», «Новинка»…

В таблицу _virtuemart_products, добавляем поле с аналогичными атрибутами как и у product_sku с именем product_badge

============================

Складываем в папку images картинки
new.png
hot.png
sale.png

============================

administrator\components\com_virtuemart\views\product\tmpl\product_edit_information.php строка 48 или около того

<tr>
<td width=»21%» >
<div style=»text-align:right;font-weight:bold;»><?php echo «badge» ?></div>
</td>
<td width=»79%» height=»2″>
<select size=»3″ name=»product_badge» id=»product_badge»>
<option <?php if («$product->product_badge» == «0») { echo «selected»; } ?> value=»0″>-</option>
<option <?php if («$product->product_badge» == «new») { echo «selected»; } ?> value=»new»>NEW</option>
<option <?php if («$product->product_badge» == «sale») { echo «selected»; } ?> value=»sale»>SALE</option>
<option <?php if («$product->product_badge» == «hit») { echo «selected»; } ?> value=»hit»>HIT</option></select>
</td>
</tr>

============================

administrator/components/com_virtuemart/tables/products.php ]

вставляем
var $product_badge= »;

после
var $product_sku= »; (в последних версиях VM var $product_sku= null;)

============================

В шаблон категории default.php

В то место, где надо вывести бейджик:

<?php if («$product->product_badge» > «0») { ?>
<img class=»badge» src=»images/<? echo $product->product_badge; ?>.png» width=»95″ height=»25″ />
<?php } ?>

============================

css по вкусу

Как снять ограничение у настраиваемых полей Virtuemart 2

Ограничение в 255 символов на список значений в настраиваемых полях, снимается в 2 шага:

administrator\components\com_virtuemart\helpers\html.php

public static function input($name,$value,$class=’class=»inputbox»‘,$readonly=»,$size=’37’,$maxlength=’255′,$more=»){

255 поменять на нужное значение.

+ надо поправить поле custom_value в таблице _virtuemart_customs

Лечение проблемы Virtuemart с пропадающими ценами.

administrator\components\com_virtuemart\tables\product_prices.php

в функцию «__construct(&$db)»

Вместо:
$this->setPrimaryKey(‘virtuemart_product_price_id’);

Поставить:
$this->setPrimaryKey(‘virtuemart_product_id’);

Глюк проявляется на ранних версиях VM 20.0.20

Вирусы — друзья любви.

В новом году, участились запросы от клиентов, поимевших заражение сайта. В анамнезе у всех Joomla 1.5.x (даже не самый последний апдейт), wysiwyg JCE с вот такой дыркой в заборе и до кучи разных невнятных расширений, вроде курса валют с блоком адалт-ссылок.

Для страждущих — Универсальный рецепт исцеления.

Как лечу я:
0. Сменить пароли к системе, панели хостинга, ftp и бд;
1. Почистить вирусы;
2. Снести дырявые расширения;
3. Перенести систему на версию 2.5.x ( для гурманов, на 3). На 2.5 обновление делается двумя кликами в админке;
4. Дать по рукам старому админу, чтобы не ставил разное дерьмо на систему.

Сайт для 130 лицея

Продолжаю серию сайтов, сделанных для образовательных учреждений Академгородка ))

Принял участие в создании сайта для 130-го лицея. Верстка, настройка CMS, доработка функционала.

www.licey130.ru

Огромная благодарность Шамилю и Татьяне Яхиным, выступающим со стороны заказчика. Четкое представление проекта, быстрая обратная связь и живая заинтересованность в результате. Побольше таких заказчиков.

Лечение проблемы с кодировкой в дополнительных картинках Virtuemart

Открываем: components\com_virtuemart\themes\default\theme.php

$html .= vmCommonHTML::getLightboxImageLink( $image->file_url, $thumbtag, $title ? $title : stripslashes(htmlentities($image->file_title,ENT_QUOTES)), ‘product’.$product_id );

заменяем на:

$html .= vmCommonHTML::getLightboxImageLink( $image->file_url, $thumbtag, $title ? $title : stripslashes(htmlentities($image->file_title,ENT_QUOTES,’UTF-8′)), ‘product’.$product_id );

Чиним дерево категорий в админке Virtuemart

Чем старше версия Virtuemart, тем больше сюрпризов обнаруживается. Точно не скажу с какой версии такое появилось, но сейчас работаю над проектом в котором под 3 сотни товарных категорий. При этом в карточке товара пропадает привычное дерево категорий со скролом, а вместо него появляется поле для поиска нужной категории. В моем случае это неудобно и не приемлемо, т.к. в разных товарных группах встречаются одни и те же производители. Поэтому после поиска например категории Sony, выводится список из 10 подкатегорий с названием Sony с айдишниками. Вариант с детализацией названия подкатегорий не рассматривался. Ларчик открылся очень просто.

Открываем «administrator/com_virtuemart/html/product.product_form.php», там в районе строки 259 находим:

if( $number_of_categories > 200 ) {

Если категорий больше 200 — показывается форма поиска, если меньше — дерево категорий. Правим 200 на свое число категорий с запасом, скажем на 500, сохраняем файл, проблема решена.