manager2up

Вывод товара таблицей

Рекомендуемые сообщения

manager2up    0

Подскажите как можно реализовать вывод товаров таблицей + переключатель кому с графикой, кому таблицей. Например как тут: shop.wed.ck.ua/catalog-wed/21/processory-amd. Не всем нужны красочные картинки. постоянные покупатели не нуждаються в предпросмотрах. Может модуль какой есть?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
dozor_anapa    1

Ну насчет переключателя - это сложно, а вот табличный вид - в шаблоне category.tpl Там цикл один надо уменьшить, табличку разбить на ячейки и размером картинки товара из админки поиграть.

Могу свой вариант предложить. Файл не аттачится, поэтому:

<?php echo $header; ?><?php echo $column_left; ?><?php echo $column_right; ?><div id="content">  <div class="top">    <div class="left"></div>    <div class="right"></div>    <div class="center">      <h1><?php echo $heading_title; ?></h1>    </div>  </div>  <div class="middle">    <?php if ($description) { ?>    <div style="margin-bottom: 15px;"><?php echo $description; ?></div>    <?php } ?>    <?php if ($categories) { ?>    <table class="list">      <?php for ($i = 0; $i < sizeof($categories); $i = $i + 4) { ?>      <tr>        <?php for ($j = $i; $j < ($i + 4); $j++) { ?>        <td width="25%"><?php if (isset($categories[$j])) { ?>          <a href="<?php echo $categories[$j]['href']; ?>"><img src="<?php echo $categories[$j]['thumb']; ?>" title="<?php echo $categories[$j]['name']; ?>" alt="<?php echo $categories[$j]['name']; ?>" style="margin-bottom: 3px;" /></a>          <a href="<?php echo $categories[$j]['href']; ?>"><?php echo $categories[$j]['name']; ?></a>          <?php } ?></td>        <?php } ?>      </tr>      <?php } ?>    </table>    <?php } ?>    <?php if ($products) { ?>    <div class="sort">      <div class="div1">        <select name="sort" onchange="location=this.value">          <?php foreach ($sorts as $sorts) { ?>          <?php if (($sort . '-' . $order) == $sorts['value']) { ?>          <option value="<?php echo $sorts['href']; ?>" selected="selected"><?php echo $sorts['text']; ?></option>          <?php } else { ?>          <option value="<?php echo $sorts['href']; ?>"><?php echo $sorts['text']; ?></option>          <?php } ?>          <?php } ?>        </select>      </div>      <div class="div2"><?php echo $text_sort; ?></div>    </div>    <table class="list">      <?php for ($i = 0; $i < sizeof($products); $i = $i + 1) { ?>      <tr> <?php for ($j = $i; $j < ($i + 1); $j++) { ?>        <td width="15%"><a href="<?php echo $products[$j]['href']; ?>"><img src="<?php echo $products[$j]['thumb']; ?>" title="<?php echo $products[$j]['name']; ?>" alt="<?php echo $products[$j]['name']; ?>" /></a></td>        <td valign="middle">                       [left]            <?php if (isset($products[$j])) { ?>            <a href="<?php echo $products[$j]['href']; ?>"><span style="font-size: 12px; font-weight: bold;"><?php echo $products[$j]['name']; ?></span></a>          [/left]           </td>        <td width="15%">          <?php if ($display_price) { ?>          <?php if (!$products[$j]['special']) { ?>          [color= #900; font-weight: bold;]<?php echo $products[$j]['price']; ?>[/color]          <?php } else { ?>          [color= #900; font-weight: bold; text-decoration: line-through;]<?php echo $products[$j]['price']; ?>[/color] [color= #F00;]<?php echo $products[$j]['special']; ?>[/color]          <?php } ?>          <?php } ?>          <?php if ($products[$j]['rating']) { ?>          <img src="catalog/view/theme/default/image/stars_<?php echo $products[$j]['rating'] . '.png'; ?>" alt="<?php echo $products[$j]['stars']; ?>" />          <?php } ?>        <?php } ?></td>        <?php } ?>      </tr>      <?php } ?>    </table>    <div class="pagination"><?php echo $pagination; ?></div>    <?php } ?>  </div>  <div class="bottom">    <div class="left"></div>    <div class="right"></div>    <div class="center"></div>  </div></div><?php echo $footer; ?>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
cashfile    12

Прикольно ,спасибо ! Только теперь я незнаю что выбрать - по-новой оставить или как раньше было.А вообще есть в продаже модуль "Быстрой покупки" . Там принцип как в твоём примере , и с возможностью покупки .

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
dozor_anapa    1

Ну я не спроста заморочился переделывать в таблицу. Тут уже маркетинг начинается - если товар важнее показать картинкой - то дефолтные настройки катят, если товар важен описанием (или его очень много) - то лучше таблицей. ИМХО.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
cashfile    12

Ну я не спроста заморочился переделывать в таблицу. Тут уже маркетинг начинается - если товар важнее показать картинкой - то дефолтные настройки катят, если товар важен описанием (или его очень много) - то лучше таблицей. ИМХО.

Только я не вижу чтобы описание в твоём варианте прописывалось . У меня только картинка , название-ссылка и цена . Описания нет !!!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
dozor_anapa    1

Описания нет и в базовом варианте движка! там название - артикул http://demo.myopencart.ru/index.php?route=product/category&path=20

Я начал копать в этом направлении, но простая вставка нужных переменных в шаблон высыпает ошибки типа "переменная не определена". Знаний php, да и конкретного движка почти нет.

Чувствуется, что надо где-то в model или controller ковырять, но пока нет времени - другие вещи допиливаю.

Вообще надо добавить в общие пожелания разработчикам - Дополнительное поле -

"краткое описание товара" как раз для главной. В некоторых движках встречал такое решение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
cashfile    12

Описания нет и в базовом варианте движка! там название - артикул Я начал копать в этом направлении, но простая вставка нужных переменных в шаблон высыпает ошибки типа "переменная не определена". Знаний php, да и конкретного движка почти нет. Чувствуется, что надо где-то в model или controller ковырять, но пока нет времени - другие вещи допиливаю.

В базовом варианте описание и не нужно . В таком выводе есть свой плюс - КОМПАКТНОСТЬ . В твоём варианте мне нравиться большая информативность о товаре(если добавить краткое описание )и объёмность наполнения страницы , в случае когда категорий много , а товаров в них небольшое кол-во .На счет проблем с добавлением описания товара , можно ребят попросить . Мне у же в подобной проблеме помогали . Для знающих это не сложно .

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
cashfile    12

Кто знает php , подскажите как добавить в этом варианте описание товара ?

Как я понимаю нужно прописать в соответствующем файле папки Controller описание переменных .

post-70-1293741782,6057_thumb.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Fix305    164

Какбе присоединяюсь к просьбе.

если ты про описание товара то:в файле ..catalogcontrollerproductcategory.php в этот массив
$this->data['products'][] = array(	'name'    => $result['name'],	'model'   => $result['model'],	'rating'  => $rating,	'stars'   => sprintf($this->language->get('text_stars'), $rating),	'thumb'   => image_resize($image, $this->config->get('config_image_product_width'), $this->config->get('config_image_product_height')),	'price'   => $price,	'special' => $special,	'href'    => $this->model_tool_seo_url->rewrite($this->url->http('product/product&path=' . $this->request->get['path'] . '&product_id=' . $result['product_id'])));
надо добавить
'description' => $result['description'],
в ..catalogviewthemedefaulttemplateproductcategory.tpl:используешь переменную
$products[$j]['description'];
по вкусу

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
cashfile    12
<?php $products[$j]['description'];?>добавляю в файл .tpl - но не выводится описание

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Fix305    164

ну там не в любом месте надо вставлять, а там где идет цикл вывода продуктовна 1.4.7 работает точно

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
cashfile    12

ну там не в любом месте надо вставлять, а там где идет цикл вывода продуктовна 1.4.7 работает точно

Ну само собой в цикл . На рисунке выше , в область рамки после названия продукта добавляю:
<td valign="middle">          [left]            <?php if (isset($products[$j])) { ?>            <a href="<?php echo $products[$j]['href']; ?>"><span style="font-size: 12px; font-weight: bold;"><?php echo $products[$j]['name']; ?></span></a>				<span><?php $products[$j]['description'];?></span> /*эта строка*/          [/left]           </td>
Вроде же правильно , но не отображается описание . В файле контроллера тоже строку добавил . Версия скрипта 1.4.0 , но не думаю что в этом вопросе будет что-то по другому как для 1.4.7 :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
cashfile    12

Для страниц ТОВАР , описание заработало . Но в описании вылезли знаки тэгов

и

.

post-70-1293741782,7194_thumb.jpg

Я так и не понял от куда они взялись ...

А как это подправить ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Drezden    0

Для страниц ТОВАР , описание заработало . Но в описании вылезли знаки тэгов <p> и <div> .

post-70-1293741782,7194_thumb.jpg

Я так и не понял от куда они взялись ...

А как это подправить ?

Для этого надо сделать обратное html преобразование функцией html_entity_decode($string)

к примеру, выводите так

<?php

echo html_entity_decode($products[$j]['description']);

?>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу