Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Ламерские вопросы » Каталог организаций на дле. Как реализовать?

Каталог организаций на дле. Как реализовать?


     18.05.2015    Все вопросы » Ламерские вопросы    2647

вопрос
Задумал сделать на сайте каталог определенных организаций(несколько видов деятельности), но каталог должен быть разбит на регионы. Т.е. - Федеральный округ - край(республика, область) - города - районы.
С помощью чего это можно реализовать? сколько стоит? Есть ли готовые решения?

Ответа пока нет


18 комментариев

ПафНутиЙ
Админ

ПафНутиЙ - 18 мая 2015 20:48 -

ФО — категория, области и города — подкатегории.
Но лучше конечно использовать более вменяемые движки для этого, вам придётся создать ооочень много категорий и поддерживать такой сайт будет очень тяжело.

Как вариант - ставить для каждого региона свою копию на поддомен и уже области — категории, города — подкатегории.

Каков вопрос - таков и ответ. Просто помните об этом.

vadims
Гости

vadims - 18 мая 2015 20:51 -

Вопрос - а почему плохо когда >1000 категорий? Это как то влияет на производительность?

ПафНутиЙ
Админ

ПафНутиЙ - 18 мая 2015 21:19 -

Отрицательно влияет т.к. при необходимости получить список категорий будет дёргаться большой файл (кеш со всей информацией о категориях)

Каков вопрос - таков и ответ. Просто помните об этом.

LazyDev
PHP-developer

LazyDev - 18 мая 2015 21:24 -

ПафНутиЙ, а если использовать доп поле как перекрестные + сделать селект с поиском и забить в него ФО а в другую области и так далее ?

Мой блог: LazyDev.pro

Помогаю с решением проблем на платной основе.

ПафНутиЙ
Админ

ПафНутиЙ - 18 мая 2015 23:13 -

И как потом фильтровать города и области по ФО?

Каков вопрос - таков и ответ. Просто помните об этом.

LazyDev
PHP-developer

LazyDev - 18 мая 2015 23:22 -

ПафНутиЙ, ну так подтягивать с массива php в доп поле, а потом через SUBSTRING_INDEX отсортировать как нужно.

Мой блог: LazyDev.pro

Помогаю с решением проблем на платной основе.

ПафНутиЙ
Админ

ПафНутиЙ - 18 мая 2015 23:30 -

Попробуйте выполнить EXPLAIN такого запроса, многое станет понятнее, особенно когда у вас будет 10 000 новостей.
Не подходит DLE пот такую тематику без серьёзной перепилки.

Каков вопрос - таков и ответ. Просто помните об этом.

LazyDev
PHP-developer

LazyDev - 18 мая 2015 23:28 -

Или во все отказаться от php массива и просто забить в доп поле все. А потом задать ключи которые связывают ФО и области с городами. И с доп поля делать выборку

Мой блог: LazyDev.pro

Помогаю с решением проблем на платной основе.

D0Gmatist
Юзер

D0Gmatist - 18 мая 2015 23:29 -

Криво)) будет

LazyDev
PHP-developer

LazyDev - 18 мая 2015 23:31 -

D0Gmatist, криво но живо)) для такой задачи как нужно тс нужнo хорошое железо как не крути.

Можно просто укоротить вывод в доп поле и сделать поиск, и доставать по названию все похожие значения.

Мой блог: LazyDev.pro

Помогаю с решением проблем на платной основе.

D0Gmatist
Юзер

D0Gmatist - 18 мая 2015 23:35 -

Не а... я могу за 1-2 дня написать такой каталогизатор... уже делал... нагрузка будет в принципе нулевая.. так как появится
1) одно поле для ИД города в посте
2) список городов на JS + JSON динамические выборки (с кешированием)
3) выборка по выбранному городу
а ну и админка потребуется... для создания и управления каталогом городов

LazyDev
PHP-developer

LazyDev - 18 мая 2015 23:38 -

D0Gmatist, ну да, можно как вы писали, создать еще одну таблицу с 4 ячейками. Это лучший вариант.

Мой блог: LazyDev.pro

Помогаю с решением проблем на платной основе.

D0Gmatist
Юзер

D0Gmatist - 18 мая 2015 22:13 -


1) кеш файл обрабатывается дольше чем БД таблица
2) поясню... БД была для того и разработана что бы быстро обрабатывать гигантские количества данных и формировать удобную выборку
3) для создания каталога такого типа достаточно создать отдельную таблицу с 4 полями
4) http://i.imgur.com/5Lbyk1f.png
5) четвёртое поле определяет порядок сортировке в списке

LazyDev
PHP-developer

LazyDev - 18 мая 2015 22:17 -

А не проще держать названия в php файле как массив ? И выбирать их для добавления или для чего нужно, тогда их и взять проще будет.

Мой блог: LazyDev.pro

Помогаю с решением проблем на платной основе.

D0Gmatist
Юзер

D0Gmatist - 18 мая 2015 22:19 -

Не совсем.. открытие файла с большими данными тоже затруднительно .. так как открывая его он попадает весь в оперативную память.. и чем больше данных тем больше нагрузка

D0Gmatist
Юзер

D0Gmatist - 18 мая 2015 22:21 -

Но .. если это касается списка городов.. то тут можно обойтись и тхт файлом .. не будет проблем ..
проблема возникнете только тогда когда реально гигантские массивы
а ещё лучше хранить всё используя
        serialize
        unserialize

D0Gmatist
Юзер

D0Gmatist - 18 мая 2015 23:22 -

я ещё забыл упомянуть перебор массива большого содержания
представьте у вас 1000 записей и поиск или формирование селект меню надо сформировать с учётом выборки ... каждое поле будет создаваться пробегая каждый раз по массиву .. и того к примеру в 1-м ФО к примеру 10 городов (10 городов * 1000 записей массива = 10000 переборов ) и так каждый раз ...
то есть
БД запрос отсеивает-оставляет то что надо..
МАССИВ или ДРУГОЙ ТИП ХРАНЕНИЯ ( не БД ) перебирается весь ищя-находя что надо

D0Gmatist
Юзер

D0Gmatist - 18 мая 2015 23:48 -

и конечно же в этом меню использовать http://harvesthq.github.io/chosen/
и юзать для админки http://dbushell.github.io/Nestable/

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх