Доброго всем времени суток Продолжаем цикл статей «Создать интернет — магазин». В прошлой статье мы начали создавать структуру нашего магазина. В приделах первой части заметки мы успели создать два раздела (точнее узла):
Очень надеюсь, что с данной задачей Вы справились на ура, ведь сегодня нам предстоит проделать аналогичный процесс и создать еще два раздела (точнее узла ), это:
Эти два раздела являются каталогизированными страничками
Я уже пояснял, что это за странички, но как говорится: «Повторение — мать учение». Как известно, зайдя на страницу «Каталога услуг», в любом интернет — магазине, мы видим список с товарами. Обычно это имя товара, изображение и цена. В общем — то я бы сказал, что это краткое описание каждого товара который привязан к тому или иному разделу на сайте. Тем самым можно сделать вывод, что каталогизированные странички — это странички которые содержат список (как правило краткий) имеющихся в этом каталоге элементов.
Например на моем блоге вот эта страница является каталогизированной. На ней Вы можете видеть анонсы статей которые лежат в данном каталоге. Надеюсь понятно
Сейчас мы не будем создавать уже готовые разделы «Каталог» и «Новости», нам пока что необходимы лишь узлы. Но так как в будущем нам известно, что данные страницы («Каталог» и «Новости») не конечные, то для системы RS-SITE будет понятнее если мы поставим, для создания этих узлов, модуль который работает с каталогами (т.е. с не конечными страницами).
Весь этот разговор к тому, что бы Вы всегда придерживались одному самому главному правилу: Если Вам нужно получить конечную страницу, то используем модуль который работает с материалом, то есть модуль admin.content. Если же Вам нужна не конечная страница, то есть каталогизированная, то используйте модуль который работает с каталогами, а именно admin.catalog
Это правило позволит Вам избежать множеств ошибок с просчетом путей (прямых ссылок) до конечного материала, так как система RS-SITE автоматически просчитывает прямые ссылки до материала (ну в нашем случае товара). Я в общем — то отвлекся от темы, не забивайте пока себе этими нюансами голову. Просто запомните правило, после Вы поймете его значение.
Так, вернемся к нашей структуре. Нам необходимо создать еще два узла. Для того чтобы их создать необходимо на админку поставить редактор каталогов. Вот этим и займемся.
Заходим в раздел «Дерево» и щелкаем на плюсик напротив узла admin
В открывшимся редакторе вбиваем вот такие данные:
Если вы забыли, то псевдонимы мы создаем по шаблону название_модуля-псевдоним_узла. Жмем кнопку «Добавить ветку». Внизу дерева должен появится новый узел
Щелкаем на него, для того что бы перейти к редактору модулей. Теперь нам необходимо поставить на данный узел, уже известный Вам, модуль admin.install
Вбиваем для данного модуля вот такие параметры (на скриншоте показано откуда берутся значения параметров)
Надеюсь Вы помните откуда берется значение параметра install. Вот что получил я:
Теперь необходимо перейти по ссылке, которую можно увидеть в самом верху редактора модулей. Внимание перейти по этой ссылке необходимо только один раз.
По данной ссылке Вы должны увидеть вот такое сообщение:
Теперь необходимо вернуться в редактор модулей, и удалить модуль admin.install
После проделанной операции, в центральном блоке редактора должен про грузится вот такой список установленных модулей:
А в узел catalog-sys должны вложится узлы редактора каталога:
Если это так, то можете себя поздравить с вторым удачно поставленным модулем для админ панели Теперь нам необходимо удалить модуль admin.fields, он нам тут тоже не нужен
У меня остался лишь один модуль в центральном блоке
Как видите у модуля admin.catalog тоже отсутствует значение параметра tree. Его необходимо вставить ручками. Какое значение данного параметра? Данный параметр отвечает за узел куда будут вкладываться пункты каталога. Так как нам необходимо видеть вот такие ссылки:
То можно сделать вывод, что пункты необходимо прицеплять к главному узлу. если помните то ID главного узла у нас единица. Стало быть параметр модуля admin.catalog должен выглядеть вот так:
Теперь перейдя вот по этой ссылке:
Мы попадаем на страницу редактора каталогов
Нам осталось воспользоваться данным редактором для того что бы создать два необходимых нам узла. Это узел «Каталог»
и узел «Новости»
После проделанной работы мы видим в списке пунктов два новых каталога
А в разделе «Дерево» мы видим два новых узла
Ну что же. Мы создали необходимые нам узлы, так что статьи по созданию главной структуры нашего интернет — магазина можно считать закрытыми. Далее нам нужно будет прицепить редактор с помощью которого мы будет создавать товары для нашего магазина, и редактор который позволит администратору публиковать новости. Наверное начнем с последнего, ибо это полегче, и мне не придется писать про функционал двух модулей (которые нам пригодятся) сразу.
Если у Вас возникли какие либо трудности, или просто есть что сказать, пишите комменты
На сегодня это все, до новых встреч!
update в связи с тем, что цикл был перезапущен в новом формате данная статья не актуальна
меня интересует одно...какой цикл уроков будет следущий после интернет магазина? =)
И можете подсказать новичку который начал только работать с классами...
как начать писать свое ядро?
- Инструменты по работе с данными
- Инструменты по работе с базой данных
- Инструменты по работе с почтой
Я бы еще добавил в ядро механизм подключение модулей, но он у меня сделан в виде модуля который подключается к точки входа руками, что ни есть хорошо, и что я естественно буду исправлять в версии 2.0
Все эти инструменты помогли не только собрать админ панель для упрощение разработки сайтов, но и позволяют быстрее разрабатывать новые возможности для системы. Классы лишь помогли без особых заморочек перенести все эти инструменты в каждый файл программы (путем наследования)
- Инструменты по работе с данными
- Инструменты по работе с базой данных
- Инструменты по работе с почтой
Я бы еще добавил в ядро механизм подключение модулей, но он у меня сделан в виде модуля который подключается к точки входа руками, что ни есть хорошо, и что я естественно буду исправлять в версии 2.0
Все эти инструменты помогли не только собрать админ панель для упрощение разработки сайтов, но и позволяют быстрее разрабатывать новые возможности для системы. Классы лишь помогли без особых заморочек перенести все эти инструменты в каждый файл программы (путем наследования)
- plugins //папка плагинов
- source //системная папка
-- components //компоненты
-- controllers //контроллеры
-- db //папка для файла подключение к бд
--- db.php //файл подключение к бд
-- library //классы
-- models //модели
-- public //функции
- tmp //корзина файлов
- views //файлы шаблонов
- widgets //виджеты
- index.php //индексной файл
типо так =) и вот написал небольшой класс:
Вообще советую отказаться от нее, ее скорее всего в следующих версиях php выпилят. Смотрите в сторону неймспейсов и функции spl_autoload_register
и скажите как запрос такого вида:
только я так и не понял каким именно, можешь написать а я уж экспериментирующую.