Вы не авторизованы.
Есть интернет-витрина на базе Shop-script Free обработанная напильником.
Задача:
Организовать сортировку категорий (обведены на картинке фронтенда желтым) из админки доступную для понимания блондинкой. Список категорий одноуровневый, вложенностей не имеет.
На данный момент сортировка организована в ручном режиме: Добавлено поле в таблицу базы данных с порядком сортировки, в запросе к базе для выдачи категорий во фроненд установлена сортировка по добавленному полю. при необходимости сортировки приходится лезть в MyAdmin и править порядок там. Блондинка с этим не справится ;(
Хочу доступную сортировку из админки с полями для порядковых номеров и кнопочко сортировать (на второй картинке, соответсвенно желтый и синий маркеры).
Специалисты, я уверен, для вас это плевое дело. Как реализовать?
Неактивен
есть подобные изменения в движке:
- сортировка категорий
- меню категорий можно разбивать на блоки и размещать в разных частях сайта (всего 2 блока. но при желании можно сделать больше)
- вложенные категории также можно сортировать
- обращайтесь на мыло 101ivanov(гавгав)gmail.(ком)
в админке все понятно будет блондинкам -)
Неактивен
А лего не але? Там правда номер всеравно ручками надо прописать, чтобы по ИД сортировать, но можно сортировать по имени, популярности и т.п. Все делается из админки, никакие phpMyAdmin не нужны...
Неактивен
sibbear написал:
А лего не але? Там правда номер всеравно ручками надо прописать, чтобы по ИД сортировать, но можно сортировать по имени, популярности и т.п. Все делается из админки, никакие phpMyAdmin не нужны...
Понятное дело ручками прописывать. Но переезжать с уже фактически готового проекта на другую сборку - на порядок более накладное занятие, нежели реализовать пунктик в админке.
По сути, нужно создать цифровое поле для каждой категории и кнопочку, по нажатию отправляющую значения в базу. Поскольку от программирования я достаточно далек - обратился сюда за помощью... Есть кто смышленый? ;(
Отредактировано Jahtaka (2010-06-01 04:02)
Неактивен
Сформулируем задачу чуть подробнее.
Есть админка, есть раздел категорий:
Есть таблица в базе с полем порядка сортировки категорий:
Категории без вложенности, один раздел - одна категория, такая логика. Во фронтэнде и бэкэнде категории выводятся и сортируются согласно порядковым номерам в таблице базы.
Собственно, что хочеться реализовать:
В админке в разделе категорий добавить каждой категории цифровое поле. Чтобы при входе в админку в раздел категорий там были проставлены циферки нынешней сортировки, и у пользователя была возможность вбить свои циферки с последующей отправкой новых значений в базу по нажатию кнопки сортировка.
Вижу нужно форму в шаблон прописать и запрос к базе данных в "catalog_products_categories.php", чтобы форма работала.
Народ, подсобите, я в этом не шарю совсем ;(
Отредактировано Jahtaka (2010-06-02 04:53)
Неактивен
смотрите category.php для начала.
Неактивен
nictboom написал:
смотрите category.php для начала.
Это уж совсем мимо тазика... Причем тут category.php, если речь идет о category_tree?
В админке необходимо прописать форму (<form>) с обработчиком admin.php. Кто поможет реализовать?
Отредактировано Jahtaka (2010-06-03 14:37)
Неактивен
А он вам и отверил, смотрите category.php он отвечает за категории в админке
Неактивен
наконец то нашелся программист который это делал для меня, свяжитесь с ним по мылу, в движке сортировка реализована следующим образом
- в окне редактировании категории есть 2 поля
- одно поле отвечает за сортировку
- второе поле за то , в каком блоке меню будет размещена категория
Неактивен
Все сделал как хотел и описывал.
Сразу поясню почему не стал пользоваться предложеной реализацией: сортировать категории непосредственно из окна редактирования категории. Это банально неудобно. Представьте что у вас 30 категорий. Для изменения порядка их вывода необходимо зайти в каждую и проставить порядковый номер. Сколько на это уйдет времени и нервов? А если допустили ошибку? Не забываем - админкой пользуется практически блондинка, потому только простота и наглядность.
В моей реализации все делается много проще, быстрее и нагляднее. Все перед глазами и сразу же обновляется по факту ввода и отправки значений.
Был удивлен отсутствием хоть сколько-нибудь полезного участия со стороны аудитории форума, все советы были совсем мимо... Ну да ладно. Если кому интересна подобная функция - пишите письма.
PS Следующим шагом будет реализация сортировки посредстовм замены поля с порядковым номером на стрелочки (вверх/вниз) для совсем человеческого восприятия Нажали на стрелочку - категория переместилась.
Отредактировано Jahtaka (2010-06-06 16:15)
Неактивен
А в каком файле нужно изменить запрос к БД, чтобы сортировал по полю sort_order, которое я создал?
Неактивен
admishko написал:
А в каком файле нужно изменить запрос к БД, чтобы сортировал по полю sort_order, которое я создал?
не уверне насчет фри не смотрел его стркутуру в лего cfg\category_functions.php
а если меню то category_tree.php
Отредактировано pehser (2011-02-09 12:48)
Неактивен
Пробовал менять значения order by во всех селектах в category_functions.php - не помогло. Я вывел список категорий на страницу прайс листа:
{section name=i loop=$root_categories}
{if $smarty.section.i.index is div by 2}{/if}
{if $root_categories[i][3] ne ""}
<div>
<a href="index.php?categoryID={$root_categories[i][0]}"><img border=0 src="products_pictures/{$root_categories[i][3]}" alt="{$root_categories[i][1]}"></a><br>
<a href="index.php?categoryID={$root_categories[i][0]}">{$root_categories[i][1]}</a>
</div>
{/if}
{if ($smarty.section.i.index+1) is div by 2}{/if}
{/section}
</div>
Неактивен
admishko написал:
Пробовал менять значения order by во всех селектах в category_functions.php - не помогло. Я вывел список категорий на страницу прайс листа:
{section name=i loop=$root_categories}
{if $smarty.section.i.index is div by 2}{/if}
{if $root_categories[i][3] ne ""}
<div>
<a href="index.php?categoryID={$root_categories[i][0]}"><img border=0 src="products_pictures/{$root_categories[i][3]}" alt="{$root_categories[i][1]}"></a><br>
<a href="index.php?categoryID={$root_categories[i][0]}">{$root_categories[i][1]}</a>
</div>
{/if}
{if ($smarty.section.i.index+1) is div by 2}{/if}
{/section}
</div>
потому что root_categories возрашет фаил home.php
Отредактировано pehser (2011-02-09 13:36)
Неактивен
Хорошо, а как мне тогда изменить сортировку?
Неактивен
admishko написал:
Хорошо, а как мне тогда изменить сортировку?
если вам нужно отсортировать тот кусо который вы привели правьте order by в селектах из таблицы категорий в home.php
Неактивен