Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.02.2013, 13:03   #1
Mr_freeman
Форумчанин
 
Аватар для Mr_freeman
 
Регистрация: 17.01.2010
Сообщений: 277
По умолчанию Оптимизация сайта. (1)

Всем привет. Я работаю веб-разработчиком, делаю неплохие сайты, но опыта все же недостаточно, и я сам знаю что многие мои проекты недостаточно оптимизированы. У нас небольшая компания и я там всего один программист, поэтому нескем делиться опытом. Я хотел бы проконсультироваться у вас, специалистов, в этом вопросе, и хочу написать сюда ряд проблем, с которыми сталкиваюсь для обсуждения. Пожалуй начну.

Представьте себе обычный, скажем, интернет магазин с каталогом товаров. Допустим, есть адрес страницы с детализацией какого-либо товара, и она выглядит следующим образом:
http://сайт.ру/раздел/категория/подкатегория/товар
То есть понятно, что от этих GET-параметров будут зависеть подключаемые стили, скрипты, необходимые мета тэги, 'хлебные крошки', вид навигации, и сам контент. Суть проблемы в том, что, например, контент среди вышеописанного располаггается последним, соответственно и запросы к базе данных на вывод товара/списка товаров тоже будут после предыдущих. Вот тут и возникает вопрос - как, не делая лишних запросов к базе, получить необходимую информацию о контенте для мета тэгов, крошек и т.д.? Или это все таки неизбежно?
Я слышал, что в битриксе используются некие 'отложенные функции', но, думаю, мне не разобраться в них. Хотелось бы узнать, как вы сами решаете эти вопросы.
Mr_freeman вне форума Ответить с цитированием
Старый 04.02.2013, 14:32   #2
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,160
По умолчанию

не совсем ясен вопрос...
1. у вас задан путь урл .... это не GET параметры
2. как вы обрабатываете на данный момент?
3. а неужели последнее - товар не идентифицирует однозначно необходимые данные?
... если в п.3 не однозначно идентифицирует - нужно определиться что идентифицирует однозначно и и обрабатывать в зависимости от этого ... я в одном проекте 2 или три уровня обрабатывал для однозначной идентификации
ADSoft вне форума Ответить с цитированием
Старый 04.02.2013, 15:27   #3
Mr_freeman
Форумчанин
 
Аватар для Mr_freeman
 
Регистрация: 17.01.2010
Сообщений: 277
По умолчанию

1. Я имел ввиду: http://сайт.ру?p1=раздел&p2=категори...гория&p4=товар
2. Первоначально, еще до доктайпа я делаю запросы в базу, чтоб взять, например, русское название подкатегории(подразумевается что p1 p2 p3 p4 - названия на транслите, которые я и использую для запросов) для крошек или для <title>. А когда дело доходит до вывода структуры категорий - опять идут запросы в базу, дублируются, так сказать. Я считаю, что это неправильно, не хотелось бы плодить много запросов для вывода простой страницы.
3. Не совсем понял, что вы имеете ввиду под однозначной идентификацией?
Mr_freeman вне форума Ответить с цитированием
Старый 04.02.2013, 15:48   #4
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,160
По умолчанию

трудно так сказать что и как у вас.. не телепат
... нужно вникать в код а его нет
минимум нужно знать структуру БД - как у вас там все сделано .. .какие связи - в зависимости от этого дальнейшие рассуждения
ADSoft вне форума Ответить с цитированием
Старый 04.02.2013, 16:05   #5
buriat
Форумчанин
 
Регистрация: 28.06.2010
Сообщений: 189
По умолчанию

Цитата:
Сообщение от Mr_freeman Посмотреть сообщение
2. Первоначально, еще до доктайпа я делаю запросы в базу, чтоб взять, например, русское название подкатегории(подразумевается что p1 p2 p3 p4 - названия на транслите, которые я и использую для запросов) для крошек или для <title>. А когда дело доходит до вывода структуры категорий - опять идут запросы в базу, дублируются, так сказать. Я считаю, что это неправильно, не хотелось бы плодить много запросов для вывода простой страницы.
Можно в начале работы скрипта загрузить инфу о нужных категориях в массив типа
Код:
Array
(
    [id] => 1  // category id
    [parent_id] => 0
    [machine_name] => category_1
    [title_en] => Category 1
    [title_ru] => Kategorija 1
    [children] => Array
        (
            [0] => Array
                (
                    [id] => 2  // category id
                    [parent_id] => 1
                    [machine_name] => sub_category_1
                    [title_en] => Sub Category 1
                    [title_ru] => Sub Kategorija 1
                    ......
                )
            [1] => Array...
            [2] => Array...
        )
)
и дальше юзать этот массив везде где надо. Лучше создать систему классов.

Цитата:
Сообщение от Mr_freeman Посмотреть сообщение
3. Не совсем понял, что вы имеете ввиду под однозначной идентификацией?
Думаю имелось в виду будет ли "p4=товар" уникальным идентификатором продукта, или еще надо смотреть на категории и др. параметры
buriat вне форума Ответить с цитированием
Старый 04.02.2013, 16:27   #6
Mr_freeman
Форумчанин
 
Аватар для Mr_freeman
 
Регистрация: 17.01.2010
Сообщений: 277
По умолчанию

Цитата:
Сообщение от ADSoft Посмотреть сообщение
трудно так сказать что и как у вас.. не телепат
... нужно вникать в код а его нет
минимум нужно знать структуру БД - как у вас там все сделано .. .какие связи - в зависимости от этого дальнейшие рассуждения
Вот я тут накидал быстро:


То есть рубрики и подрубрики в одной таблице с родительской связью. Автомобиль имеет связь с подрубрикой и сразу с ее родителем.
Mr_freeman вне форума Ответить с цитированием
Старый 04.02.2013, 16:30   #7
Mr_freeman
Форумчанин
 
Аватар для Mr_freeman
 
Регистрация: 17.01.2010
Сообщений: 277
По умолчанию

Цитата:
Сообщение от buriat Посмотреть сообщение
Лучше создать систему классов
Я однажды начинал изучать ООП на PHP, но до сих пор не представляю как использовать это при разработке сайтов. Может поясните? Или дайте ссылочку на литературу (ООП в разработке сайтов). Буду очень благодарен.
Mr_freeman вне форума Ответить с цитированием
Старый 04.02.2013, 19:58   #8
Кольша
Далеко не
Участник клуба
 
Аватар для Кольша
 
Регистрация: 11.08.2011
Сообщений: 1,512
По умолчанию

Google
Кольша вне форума Ответить с цитированием
Старый 05.02.2013, 02:06   #9
Mr_freeman
Форумчанин
 
Аватар для Mr_freeman
 
Регистрация: 17.01.2010
Сообщений: 277
По умолчанию

Цитата:
Сообщение от Кольша Посмотреть сообщение
Пытался найти статьи и учебники, но там нету ничего обучающего. Может кто то знает конкретный ресурс? Не просто основы ООП какие нибудь, а именно применение при создании сайтов, простых и сложных, с примерами, тонкостями и тд и тп.
Mr_freeman вне форума Ответить с цитированием
Старый 05.02.2013, 06:35   #10
Minus_yu
Чатланин!
Форумчанин
 
Аватар для Minus_yu
 
Регистрация: 20.11.2010
Сообщений: 140
По умолчанию

Цитата:
Сообщение от Кольша Посмотреть сообщение
тыцкнул наугад по 2-й ссылке отсюда - вполне себе наглядный пример использования...
если сильно ленивый и книги читать не хочется, то ищи видеообучалки, ими сейчас пестрят торрент-трекеры, только прежде чем качать - отзывы почитай...
Minus_yu вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Оптимизация сайта feesta Помощь студентам 0 30.10.2011 20:27
Оптимизация сайта. Раскрутка. KingstonDono WordPress и другие CMS 1 15.01.2011 12:21
Оптимизация сайта. KingstonDono WordPress и другие CMS 6 14.01.2011 20:11
Оптимизация сайта SHOP Фриланс 1 29.05.2010 22:03