[Помощь] Оформление страницы товара и страницы категории в VM 2.0.20b

Skyfair

Постоялец
Регистрация
26 Мар 2013
Сообщения
63
Реакции
15
Ну беда у меня какая-то с этими проклятущими шаблонами.
Может, подскажет кто-нибудь, как мне по-быстрому решить следующие вопросы в VM 2.0.20b:
1. На странице категории:
- выровнять высоту всех картинок. Получается, что из-за разной высоты иконок товара весь товар неровно располагается в строках. Надо как-то задать единую высоту независимо от размера иконки. Полагаю, это в components/com_virtuemart/views/category/tmpl/default.php
2. На странице товара:
- убрать ненужные описания картинок (file_description). Причем и основной картинки, и дополнительных. Они мне вообще всю малину портят. Вот в лайтбоксе они есть, и все красиво. А в описании товара они явно лишние.
- полное описание товара находится снизу под картинкой, а надо поднять его и расположить справа от основной картинки - например, под кнопкой Добавить в корзину, или над ней, не важно.
Это должно все быть в
components/com_virtuemart/views/productdetails/tmpl/default.php
и
components/com_virtuemart/views/productdetails/tmpl/default_images.php
 
1. Целесообразно скачать все картинки по фтп и на локальном компьютере переформатировать их в квадратные без потери качества. Для этого масса конвертеров есть. Потом обратно по фтп на сервер. И на будущее просто размещать квадратные картинки товаров.

2. components/com_virtuemart/views/productdetails/tmpl/default.php - строки с 255 по 281
Код:
    <?php
    // Product Description
    if (!empty($this->product->product_desc)) {
        ?>
        <div class="product-description">
    <?php /** @todo Test if content plugins modify the product description */ ?>
        <span class="title"><?php echo JText::_('COM_VIRTUEMART_PRODUCT_DESC_TITLE') ?></span>
    <?php echo $this->product->product_desc; ?>
        </div>
    <?php
    } // Product Description END
 
    if (!empty($this->product->customfieldsSorted['normal'])) {
    $this->position = 'normal';
    echo $this->loadTemplate('customfields');
    } // Product custom_fields END
    // Product Packaging
    $product_packaging = '';
    if ($this->product->product_box) {
    ?>
        <div class="product-box">
        <?php
            echo JText::_('COM_VIRTUEMART_PRODUCT_UNITS_IN_BOX') .$this->product->product_box;
        ?>
        </div>
    <?php } // Product Packaging END
    ?>
вырезать

вставить с 209 строки

3. Названия изображений товара components/com_virtuemart/views/productdetails/tmpl/default_images.php попробуйте после 28 строки добавить -
Код:
"titleShow"    : "false",
 
По поводу описания товара - молодца!!! Помогло!!!! Спасибо!
Делал то же самое, только не работало из-за того, что последние 2 строки
<?php } // Product Packaging END
?>
я почему-то не относил к описанию. И была ошибка синтаксиса.
Размещать квадратные картинки не вариант. Несколько поставщиков, у всех разные форматы фотографий, у нас менеджеры вообще с ума сойдут, если им придется с изображениями работать перед заливкой. К тому же, на старой версии Joomla 1.5 все было прекрасно, просто было определенное расстояние между строками товаров. Вот как его отрегулировать - в этом вопрос?
По поводу 28 строки в default_images.php - видимо, разный код в разных версиях VM, у меня 28 строку менять точно нельзя. Где конкретно попробовать это вставить, после какой строки не по номеру, а по тексту?
 
Тогда определите стиль картинки на странице категории и поменяйте в соответствующем файле строку width: 50%; на max-height: (сколько надо)px;
Если не знаете как - адрес сайта в студию.
 
Вот в этом файле можно настроить высоту блока товара: /components/com_virtuemart/assets/css/vmsite-ltr.css
Ищем в коде страницы блок товара
У меня это <div class="product floatleft width100 ">(зависит от выставленного в настройках кол-ва товара на строку)
Ищем в vmsite-ltr.css строчку .width100 и добавляем туда к примеру height: 200px; И у всех товаров будут блоки высотой 200px
 
Вот в этом файле можно настроить высоту блока товара: /components/com_virtuemart/assets/css/vmsite-ltr.css
Ищем в коде страницы блок товара
У меня это <div class="product floatleft width100 ">(зависит от выставленного в настройках кол-ва товара на строку)
Ищем в vmsite-ltr.css строчку .width100 и добавляем туда к примеру height: 200px; И у всех товаров будут блоки высотой 200px
Совет дельный, выровнять получается с помощью vmsite-ltr.css
Но это не совсем это правильно, такая настройка будет касаться и любого другого места в VM.

Зайду с другой стороны к проблеме.
<div class="row">
Вот в нем теперь геморрой. После строки с описанием товаров до следующей строки у меня идет здоровенная "пауза", размером почти с саму строку с товарами. Чего с ней делать? Как сократить?
 
Совет дельный, выровнять получается с помощью vmsite-ltr.css
Но это не совсем это правильно, такая настройка будет касаться и любого другого места в VM.

Зайду с другой стороны к проблеме.
<div class="row">
Вот в нем теперь геморрой. После строки с описанием товаров до следующей строки у меня идет здоровенная "пауза", размером почти с саму строку с товарами. Чего с ней делать? Как сократить?
Если изменения в vmsite-ltr.css затрагиват и другие места, нужно сузить применение css свойства
У меня код такой:
Код:
<div class="row">
            <div class="product floatleft width100 ">
            <div class="spacer">
                <div class="width30 floatleft center">
Вы меняли весь класс width100, попробуйте убрать из него св-во height: а прописать его для <div class="row">
Для этого добавляете в vmsite-ltr.css строчку div.row и в ней св-во height: это будет касаться всех div класса row, если опять затронет ненужные блоки, измените div.row на div.browse-view div.row, тогда затронет только то, что входит в div.browse-view и т. д. А если совсем избирательно, то присваиваете div id=browse-row (например) и в vmsite-ltr.css пишете #browse-row и будут свойства только этого div
 
А что, кстати, с описанием фотографий? Мне надо, чтобы не было ни названий, ни описаний картинок на странице товара.
 
А что, кстати, с описанием фотографий? Мне надо, чтобы не было ни названий, ни описаний картинок на странице товара.
Название в шаблоне выводится так:
Код:
<span class="vm-img-desc">имя_фото.jpg</span>
Можно найти этод код в файле шаблона страницы товара и либо убрать, либо закомментировать. Вместо имя_фото.jpg конечно будет переменная. Я просто сделал эту надпись невидимой, прописав в vmsite-ltr.css
Код:
span.vm-img-desc {
display: none;
}
Может быть полезно для индексации фоток.
 
Еще на одном сайте столкнулся со следующей проблемой: vmsite-ltr.css у меня более не работает.
То есть я могу любые изменения в этот файл вносить, могу его вообще удалить, дизайн сайта не меняется.
Как такое может быть?
Как узнать, что отвечает в таком случае на этом сайте за CSS?
 
Назад
Сверху