Инструменты пользователя

Инструменты сайта


projects:lp:gostinka.com

Проект gostinka.com

Март, 2016

Март, 2016 г. Завершен.

Цели проекта

  • Восстановление 404 страницы
  • Восстановление раздела событий.
  • Восстановление раздела магазинов.

Особенности

CMS Bitrix, HTML, PHP.

Описание

Проект gostinka.com

Обновленный сайт Гостиного Двора (все жители Уфы поймут). Сегодня уже вторая доработка проекта на битрикс от ЛидерПоиска. И вторая кривость. Тут видимо разработчики (хотя вроде как известная студия) даже не удосужились почитать документацию по системе, а просто начали писать на русский авось.

Если ребята из ЛидерПоиска возьмутся за постоянное обслуживание сайта, я бы порекомендовал им отдельным этапом переписать сайт. На моей практике, это уже вторая известная студия, которая выдает отвратный (с точки зрения кода) продукт.

Допустим у вас есть у каждого элемента инфоблока свойство производитель (или бренд, или еще какое, не важно). И вам нужно создать раздел, который будет выводить элементы только этого производителя. Стандартным решением для битрикса будет:

  • создать справочник производителей
  • у элементов сделать свойство «ссылка на элемент» (на справочник)
  • в urlrewrite.php прописать правило переадресации, указав параметр в котором будет передаваться производитель
  • в index.php нужного раздела (brand/index.php, к примеру) добавить создание массива фильтра, в котором указать переданный параметр
  • добавить сюда же стандартный компонент catalog.section и передать ему имя массива фильтра (FILTER_NAME)
  • наслаждаться результатом

А как вам такое решение:

  • у элементов сделать свойство «список» (резонно, если заведомо известно, что значений будет мало)
  • в urlrewrite.php прописать правило переадресации, указав параметр в котором будет передаваться производитель
  • в index.php нужного раздела добавить catalog.section и дописать ему дополнительное (как результат не документированное) поле, в которое передавать производителя
  • в компоненте получать все элементы инфоблока
  • в шаблоне компонента выводить только те элементы, у которых свойство соответсвует переданному производителю

А если элементов будет 10000, а с нужным параметром всего 20? Я уже молчу, что они забыли (или скорее всего не знали) про такой параметр как PAGE_ELEMENT_COUNT - число элементов на страницы, который стоит равным 30. Т. е. если в инфоблоке более 30 элементов, то 31 и далее, уже никогда не покажутся.

Суть всего негодования сводится к одному:

Если взялись за проект на CMS, у которой есть документация (а у Bitrix она есть и даже на русском, да ее много
и местами не хватает, но 99% бытовых задач она описывает), то, пожалуйста, читайте ее!!!

Не о других, так о себе подумайте - может через год заказчик придет к вам повторно, а вы тут налопатили, что сам черт ногу сломит.

projects/lp/gostinka.com.txt · Последнее изменение: 2016.03.18 17:06 — 127.0.0.1