Вывод списка производителей в ocStore


CMS ocStore (Opencart) – отличная система для интернет магазина. Однако, многое приходится доделывать вручную, так как дополнения к разным версиям систем зачастую не подходят. Так получилось и с ocStore 2.3, когда понадобилось организовать вывод списка производителей на необходимой странице (конкретно – на странице категории товаров). Поэтому пришлось делать самостоятельно, ниже решение. Оно совсем несложное на самом деле.

Итак, все действия мы производим в файле catalog\view\theme\default\template\product\category.tpl – это файл шаблона, отвечающего за вывод товаров в категории, но решение подойдет для любой страницы в любом шаблоне. В нужное для вывода списка производителей место вставляем следующий код:

<?php $db = @mysql_connect ("localhost","логин","пароль");
mysql_select_db ("база_данных",$db);
$result2 = mysql_query("SELECT * FROM `oc_manufacturer_description` ORDER BY `oc_manufacturer_description`.`name` ASC") or die (mysql_error());
while ($row2=mysql_fetch_array($result2)) {
$manufacturer_id = $row2["manufacturer_id"];
$query = "manufacturer_id=".$manufacturer_id;	
$result3 = mysql_query("SELECT * FROM `oc_url_alias` WHERE query = '$query'") or die (mysql_error());
$row3=mysql_fetch_array($result3);	
echo '<a href="'.$row3["keyword"].'">'.$row2["name"].'</a>';
} ?>
Как и почему это работает?

Мы напрямую подключаемся к базе данных в первых двух строках, затем запросом выбираем все в таблице oc_manufacturer_description – именно там хранятся названия производителей. Далее циклом проходим по этой таблице, берем ид производителя и еще одним запросом выбираем урл его. Ну и в конце все выводим.



Строка со вторым select может быть и не нужна, если у вас не включено ЧПУ на сайте или придется изменять, если вы используете не ocStore.
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.

тегизаметки, opencart, php




Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.




Базы данных ADO.NET на языке C++\CLI
Оператор Sizeof в C#
Урок 5. Комментарии PHP