Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[W] Pricelist [Opencart_v1491-1495, ocStore_017-022]


afwollis

Recommended Posts

Мод прайс-листа v.0.2

#################################################

# Дополнительные настройки

##############

1. Оформление

Внешний вид прайс-листа можно изменить, поменяв стили оформления для классов

.parent_cat_row ---> класс оформления строк основных категорий
	.sub_cat_row ---> класс оформления строк всех подкатегорий
	.product_row ---> класс оформления строк товаров

Находятся они в файле [=== catalog/view/theme/default/template/common/wpricelist.tpl ===]

<style type="text/css">
			.parent_cat_row {background-color: #336699; color:#FFFFFF;}
			.parent_cat_row a, .parent_cat_row a:visited {font-weight: bold; color:#FFFFFF; text-decoration:underline;}
			.parent_cat_row a:hover {color:#FFFFFF; text-decoration:none;}
			
			.sub_cat_row {background-color: #77AAFF; color:#FFFFFF;}
			.sub_cat_row a, .sub_cat_row a:visited {font-weight: bold; color:#FFFFFF; text-decoration:underline;}
			.sub_cat_row a:hover {color:#FFFFFF; text-decoration:none;}
			
			.product_row {color:#000000;}
			.product_row a, .product_row a:visited {color:#008800; text-decoration:underline;}
			.product_row a:hover {color:#FF0000; text-decoration:none;}
		</style>

*********************************

2. Вывод информации о товаре

Файл [=== catalog/controller/common/wpricelist.php ===]

Строка 143

<td>' . $result['sku'] . ' - ' . $result['model'] . '</td>

По-умолчанию в Прайс-листе выводятся Артикул (sku) и Модель (model) товара.

Оставьте то, что вам больше подходит.

[=== 2011.03.08 ===] Добавление ссылки на прайс-лист в "главное" меню

1.

catalog/controller/common/header.php
после

$this->data['cart'] = HTTP_SERVER . 'index.php?route=checkout/cart';
		$this->data['checkout'] = HTTPS_SERVER . 'index.php?route=checkout/shipping';
добавляем

/* [w]Pricelist - mod - start */
		$this->data['text_wpricelist'] = $this->language->get('text_wpricelist');
		$this->data['wpricelist'] = HTTP_SERVER . 'index.php?route=common/wpricelist';
		/* [w]Pricelist - mod - end */

2.

catalog/language/ВАШ_ЯЗЫК/common/header.php
/* [w]Pricelist */
$_['text_wpricelist'] = 'ТЕКСТ ПО-ВКУСУ';

3.

catalog/view/theme/default/template/common/header.tpl
после

<a href="<?php echo str_replace('&', '&', $checkout); ?>" id="tab_checkout"><?php echo $text_checkout; ?></a>
вставляем

<!-- [w]pricelist - mod - start //--><a href="<?php echo str_replace('&', '&', $wpricelist); ?>" id="tab_wpricelist"><?php echo $text_wpricelist; ?></a><!-- [w]pricelist - mod - end //-->

перед

} else {
			$('#tab_home').addClass('selected');
		}
вставляем

} else if (route == 'common/wpricelist') {
			$('#tab_wpricelist').addClass('selected');

4.

catalog/view/theme/default/stylesheet/stylesheet.css
настраиваем

width
в следующем участке кода

#header .div4 {
	width: 620px;
	clear: right;
	float: right;
	height: 32px;
	padding-right: 14px;
}

Скачать

Змінено користувачем afwollis
  • +1 6
Надіслати
Поділитися на інших сайтах

Спасибо за полезный модуль!

А подскажите, как можно сделать SEO-ссылку в виде сайт/price вместо сайт/index.php?route=common/wpricelist ?

Кстати, кому интересно...

Для отображения в breadcrumbs Главная > Прайс-лист:

В catalog\controller\common\wpricelist.php

Добавил (по аналогии):

$this->document->breadcrumbs = array();
      	$this->document->breadcrumbs[] = array(
        	'href'      => HTTP_SERVER . 'index.php?route=common/home',
        	'text'      => $this->language->get('text_home'),
        	'separator' => FALSE
      	);
      	$this->document->breadcrumbs[] = array(
        	'href'      => HTTP_SERVER . 'index.php?route=common/wpricelist',
        	'text'      => $this->language->get('heading_title_breadcrumbs'),
        	'separator' => $this->language->get('text_separator')
      	);

heading_title_breadcrumbs - добавленное в языковый файл слово "Прайс-лист" (т.к. heading_title у меня немного отличается.)

Надіслати
Поділитися на інших сайтах


Что-то не могу разобраться с CSS, таблица реагирует только на изменение дефолтных строк. Не смог например прописать различные цвета для ссылок в заголовках категорий и ссылок на товары. Например чтобы ссылки на товары всегда были синего цвета, а заголовки категорий и подкатегорий белого.

Надіслати
Поділитися на інших сайтах


Модуль адаптировал перед отъездом, поэтому кое-что упустил.

remix8080, спасибо, добавил "хлебные крошки" в новую версию.

Magi, скачайте версию 0.2, там есть стили для товаров и несколько исправлений.

Надіслати
Поділитися на інших сайтах

модуль очень понравился. Но как быть если например есть 10000 товаров? было бы неплохо сделать категории и подкатегории свернутыми, которые бы открывались по клику на них с помощью аякс, то есть без перезагрузки страницы. + еще добавить кнопку купить

Надіслати
Поділитися на інших сайтах


Думал об этом, но пока нет возможности реализовать такой функционал.

вот неплохой пример _inter.if.ua/categories/

может пригодится

Надіслати
Поділитися на інших сайтах


Добрый день. Модуль очень классный, спасибо. Есть правда один вопрос, сорри если ламерский, но сам не соображу как сделать. У меня товары входят сразу в несколько категорий и при выводе прайса выходят дубли. Есть ли возможность это исправить? Как вариант, есть ли возможность вывести в прайс только одну категорию?

Спасибо

Надіслати
Поділитися на інших сайтах


можно сделать без проблем.

Скачал ваш модуль. Понравился. Хотелось бы узнать. Есть ли возможность скачивания его со страницы в формате XLS? Или как это можно было сделать?

Уже стоят кое-какие библиотеки Excel для экспорта базы в админке. Может их как-то можно задействовать в этом?

Надіслати
Поділитися на інших сайтах


chungachguk, спасибо за интерес к модулю.

В данной версии возможности экспорта прайс-листа в XLS нет.

Но предложение интересное. Учту в следующей версии.

Надіслати
Поділитися на інших сайтах

afwollis, спасибо за отличный модуль.

Что хотелось бы:

- красивую seo ссылку

- экспорт в Эксель

- кнопочка "в корзину"

настройку видимости/доступа (удобно давать линк определенным категориям пользователей (например реселлерам) (если это вообще технически возможно)

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

Надіслати
Поділитися на інших сайтах


Честно говоря, не понял как формируется порядок при формировании прайс-листа.

Пробовал менять Id товара, не помогает. Как упорядочить товары по id например?

Надіслати
Поділитися на інших сайтах


Как упорядочить товары по id например?

catalog/model/catalog/wpricelist.php
public function getProducts($cat_id = 0) {

$sql_2 = "SELECT *, pd.name AS name, p.image, m.name AS manufacturer, ss.name AS stock, (SELECT AVG(r.rating) FROM " . DB_PREFIX . "review r WHERE p.product_id = r.product_id GROUP BY r.product_id) AS rating FROM " . DB_PREFIX . "product p LEFT JOIN " . DB_PREFIX . "product_description pd ON (p.product_id = pd.product_id) LEFT JOIN " . DB_PREFIX . "product_to_store p2s ON (p.product_id = p2s.product_id) LEFT JOIN " . DB_PREFIX . "manufacturer m ON (p.manufacturer_id = m.manufacturer_id) LEFT JOIN " . DB_PREFIX . "stock_status ss ON (p.stock_status_id = ss.stock_status_id) LEFT JOIN " . DB_PREFIX . "product_to_category p2c ON (p.product_id = p2c.product_id) WHERE p.status = '1' AND p.date_available <= NOW() AND pd.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p2s.store_id = '" . (int)$this->config->get('config_store_id') . "' AND ss.language_id = '" . (int)$this->config->get('config_language_id') . "' AND p2c.category_id = '" . (int)$cat_id . "' ORDER BY LCASE(pd.name) ASC";

поменяйте

ORDER BY LCASE(pd.name) ASC
на

ORDER BY p.product_id ASC
  • +1 1
Надіслати
Поділитися на інших сайтах

так получилось все, что хотели, или еще вопросы есть?

Да, спасибо, получилось.

Будет ли возможность отображать товар с разными атрибутами и разными ценами соответственно?

Надіслати
Поділитися на інших сайтах


Будет ли возможность отображать товар с разными атрибутами и разными ценами соответственно?

а как "смешивать" атрибуты, если их два (или больше) типа и в каждом по несколько вариантов?
Надіслати
Поділитися на інших сайтах

а как "смешивать" атрибуты, если их два (или больше) типа и в каждом по несколько вариантов?

вот и я не знаю :)

Сделал колонку с иконками картинок, стало симпатишнее :)

catalog\controller\common\wpricelist.php

95 строка

<td colspan="4" align="center">
заменить на
<td colspan="5" align="center">
155 строка после
<tr class="product_row">
добавить
<td align="center"><img src="image/' . $result['image'] . '" HEIGHT=30 </td>

вот чего получается

вопрос в чем! В кэше валяются уже ресайзнутые картинки, с именем ххх-40х40.jpg. Как их вставить туда, а не ресайзить при генерации страницы, а то если много будет товаров, тормозить будет.

Надіслати
Поділитися на інших сайтах


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

Надіслати
Поділитися на інших сайтах

  • 2 weeks later...

chungachguk, спасибо за интерес к модулю.

В данной версии возможности экспорта прайс-листа в XLS нет.

Но предложение интересное. Учту в следующей версии.

Не могли бы Вы подсказать мне где формируется прайс-лист Вашего модуля, чтобы в последствии из него можно было бы сформировать XLS-файл?
Надіслати
Поділитися на інших сайтах


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.