Legosp Forum
Shop-Script "Legosp" => Общие вопросы => Тема начата: admishko от Сентября 29, 2011, 11:59:22 am
-
Ситуация такая: есть несколько брендов, каждый из которых производит различные категории товаров. То есть мне нужно чтобы на главной отображались логотипы брендов, при переходе в какой-нибудь бренд отображался список категорий - например "Книги", "Журналы" и т. д. С помощью модуля брендов насколько я понимаю это сделать нельзя, бренд присваивается конкретному товару вроде.. Единственный выход делать категорию с названием бренда и в нее засунуть подкатегории, верно?
-
Как реализовать сортировку производителей (брендов)?
-
slamm, не совсем. Мне нужно чтобы при переходе в Samsung например открывалась страница, где будут категории, например " Телевизоры", "Мониторы" и т. д.
То есть чтобы в самом бренде были категории.
Хотел еще спросить, страница каталог это созданная auxpage? Как создать такую стрнаицу? И как разместить на ней список категорий с их логотипами? Вроде витрины.
Спасибо.
-
Спасибо! Только будет ли эта страница иметь ЧПУ?
-
Огромное спасибо за помощь!!!!!
А что насчет вывода категорий? Искал по форуму но не нашел.. Как вывести список категорий - с логотипами и названиями, что-то наподобие витрины?
-
Мне нужно чтобы при переходе в Samsung например открывалась страница, где будут категории, например " Телевизоры", "Мониторы" и т. д.
То есть чтобы в самом бренде были категории.
как вариант:
1. в вашей теме создать папку с файлом includes/catbrands.php.
с таким содержимым:<?php
if(isset($_GET[REDIRECT_BRAND.'_hurl']) && trim($_GET[REDIRECT_BRAND.'_hurl'])) $_GET['brand']=$_GET[REDIRECT_BRAND.'_hurl'].'/';
if (isset($_GET['brand']) && $_GET['brand'])
{
$q2 = db_query("SELECT pt.`categoryID`, ct.`categoryID`, ct.`name`, ct.`hurl`, ct.`picture` FROM ".PRODUCTS_TABLE." as pt LEFT JOIN ".CATEGORIES_TABLE." as ct USING(categoryID) WHERE brandID='".$selected_brand[0]."' GROUP BY ct.categoryID") or die (db_error());
$result2 = array();
while ($row2 = db_fetch_row($q2))
{
if (!file_exists("./products_pictures/".$row[4])) $row[4] = "";
if ($row2[3] != "" && CONF_CHPU) {$row2[3] = REDIRECT_CATALOG."/".$row2[3];} else {$row2[3] = "index.php?categoryID=".$row2[1];}
$result2[] = $row2;
}
$smarty->assign("catbrand",$result2);
}
?>
2. в css/css_ваша_тема/theme/brands.tpl.html закоментировать(пример: {*содержимое*}) весь блок {if $products_to_show_count ne NULL}...{/if}.
сортировку в принципе тоже можно.
и добавить посля: <table style="width: 100%;" cellpadding="0" cellspacing="0">
{section name=i1 loop=$catbrand}
{if $smarty.section.i1.index is div by 2}<tr>{/if}
<td style="text-align: center; vertical-align: top; padding: 5px;">
<a href="./{$catbrand[i1][3]}" title="{$catbrand[i1][2]}"><img src="./products_pictures/{$catbrand[i1][4]}" alt="{$catbrand[i1][2]}" /></a><br />
<a href="./{$catbrand[i1][3]}" title="{$catbrand[i1][2]}">{$catbrand[i1][2]}</a>
</td>
{if ($smarty.section.i1.index+1) is div by 2}</tr>{/if}
{/section}
</table>
кол-во столбцов править в div by 2.
по желанию можно сортировать категории, но я не парился с этим.
как то так.
p.s. чуть изменил, а то Серёжка наругает, что в основной includes/ всё пихаю. ;)
-
да я тоже в основных всё правлю.
но на случай обновить содержимое папки includes, лучше конечно не "знающему" положить файлом и отдельно, тем более если накатить сверху(перезалить файлы), оно там и останется.
эт мы с тобой можем помнить об изменениях...;)
-
slamm, да нужно нечто подобное. А точнее нужно чтобы на главной странице отображался список категорий основных - их логотипы и название. Подкатегории которые в них содержаться выводить не нужно. Такая витрина будет на главной, в разделе каталог (будет новая страница) - будет примерно то же самое.
-
Помогите пожалуйста! Создаю страницу "catalog" - добавил правило в htaccess
RewriteRule ^catalog$ index.php?catalog [L]
Создал в includes файл catalog.php, в нем написал:
<?php
if (isset($_GET["catalog"])) {
$smarty->assign("main_content_template", "catalog.tpl.html");
}
?>
Добавил в папку шаблонов файл catalog.tpl.html. При запросе страницы catalog/ выдает 404 ошибку...
-
да по сути достаточно front_catalog.tpl.html, ссылки (./index.php?front_catalog)
и тех строк, что писали<?php
if (isset($_GET["front_catalog"])) {
$smarty->assign("main_content_template", "front_catalog.tpl.html");
}
?>
всё остальное есть в home.php.
-
slamm, Спасибо, сделал все как вы описали - вроде заработало!!
А как теперь на этой странице вывести список категорий с логотипами?
-
Да, я поменял в catalog.php код и не стал копировать catalog.tpl.html, прошу прощенья.
Хотел узнать еще, как вывести краткое описание к категории в том же самом каталоге?
-
А там {$root_categories[5]} или {$root_categories[5]} ?
Не получается ни так ни так. Логика простая и понятная, но почему-то не выводит..
В catalog.php:
$q = db_query("SELECT categoryID, name, products_count, picture, hurl, description FROM ".CATEGORIES_TABLE." WHERE categoryID<>0 and parent=0 ORDER BY name") or die (db_error());
В catalog.tpl.html:
{section name=i loop=$root_categories}
<div>
{if $root_categories[i][3] ne ""}<a href="./{if $smarty.const.CONF_CHPU}{$root_categories[i][4]}{else}index.php?categoryID={$root_categories[i][0]}{/if}"><img border="0" src="./products_pictures/{$root_categories[i][3]}" alt="{$root_categories[i][1]}"></a>{/if}
<br />
{$root_categories[i][5]}
</div>
{/section}
-
попробуйте почистить core/cache и обновить страницу.
-
Сделал, не помогло..
-
Кстати, description - это же полное описание, я говорил про краткое.
Поменял description на about - тоже никакого эффекта. У категорий заданы они..
-
да мне кажется что проблема в home.php, туда ещё добавить.
-
Нет, я же говорил, категории заполнены.
nictboom, действительно, добавил - все как надо теперь! Спасибо!
Есть еще один вопрос который меня беспокоит:
У меня в меню есть разделы "о магазине" и "доставка". При переходе в каждый из разделов должен подсвечиваться фон (пункт становится активным) - так происходит со всеми разделами - каталог, контакты, главная. Но доп страницы используют один шаблон - значит нужно создать еще один, но как его прикрутить к странице "доставка" например?
-
второй файл php не нужен.
всё(почти) есть в движке(в файле home.php)
не совсем понятно "используют один шаблон - значит нужно создать еще один".
Вы хотите что бы отображалась информация доп.страниц в разделе "доставка"?
или Вы хотите его запихнуть в общее верхнее меню и сделать ссылку(пункт) такой же активной?
-
Ситуация такая что у меня есть 2 страницы информационные в меню - "доставка" и "о магазине".
Мне нужно чтобы при переходе в каждый из разделов менялся фон у выделенного (активного) пункта.
Сейчас ситуация такая:
<li {if $main_content_template == "aux_page.tpl.html"} class="active"{else} class="notselected"{/if}><a href="./{if $smarty.const.CONF_CHPU}about/{else}index.php?aux_page=aux1{/if}">{$smarty.const.ADMIN_ABOUT_PAGE}</a></li>
И у доставки стоит тот же aux_page.tpl.html, при переходе в раздел "Доставка" фон подсвечивается у раздела "О магазине"
Как быть?
-
У меня уже создана страница Сервис (она уже была создана) - это только не доп страница а одна из "главных страниц" в админке. Как можно сделать так чтобы при переходе в этот раздел фон подсвечивался?
-
<li {if ($main_content_template == "aux_page.tpl.html") && ($aux_page == "aux1")}class="active"{else} class="notselected"{/if}><a href="./{if $smarty.const.CONF_CHPU}about/{else}index.php?aux_page=aux1{/if}">{$smarty.const.ADMIN_ABOUT_PAGE}</a></li>
<li {if ($main_content_template == "aux_page.tpl.html") && ($aux_page == "aux2")}class="active"{else} class="notselected"{/if}><a href="./{if $smarty.const.CONF_CHPU}about/{else}index.php?aux_page=aux2{/if}">{$smarty.const.ADMIN_SHIPPING_PAGE}</a></li>
-
Спасибо огромное! Все получилось!
Еще вопрос, я как-то задавал что-то подобное в другой ветке:
Как можно убрать "Обязательность" у email-a в оформлении заказа и обратной связи?
Буду очень благодарен за ответ!
-
catalog использовать не стоит так как это зарезервированное слово под категории
Действительно с catalog/ не работает, а жаль...
-
Добрый день!
Последняя сборка, тестирую на Денвере.
Подскажите, пожалуйста, что нужно сделать чтобы ЧПУ заработало для новой страницы?
Вроде создал страницу как писал Slamm здесь: http://forum.shop-script.org/index.php?topic=4.msg993#msg993
Без ЧПУ открывается страница
-
у меня страница такая /index.php?podbor_tovarov
соответственно podbor_tovarov.php и podbor_tovarov.tlp.html
код в php начинается так:
if (isset($_GET["podbor_tovarov"]))
{
//calculate a path
$path = Array();
if (CONF_CHPU) $row[0] = "podbor_tovarov/";
else $row[0] = 'index.php?podbor_tovarov';
$row[1] = STRING_CONTACT_INFORMATION;
$path[] = $row;
$smarty->assign("product_category_path",$path);
$smarty->assign("main_content_template", "podbor_tovarov.tpl.html");
}
в .htaccess добавил:
RewriteRule ^podbor_tovarov$ index.php?podbor_tovarov [L]
планирую получить страницу по адресу: /podbor_tovarov/
-
Спасибо, Slamm!