ФорумПрограммированиеPHP для идиотов → Блоки и страницы

Блоки и страницы

  • VaseninM

    Сообщения: 2416 Репутация: N Группа: Адекваты

    Spritz Март 20, 2011, 1:37 п.п.

    Дано:
    Есть некая кмс или фреймворк. Не важно. Я буду рассказывать ан примере yii, но я думаю в других аналогично.
    Там есть модули, в них контроллеры и действия. У действий могут быть параметры.
    К примеру возьмем некий модуль статические страницы - pages, контроллер view, действие view. И параметры. Пусть canonical = about.
    Подобных модулей может быть много. В теории могут быть вложенные модули, но тогда это совсем наверное сложно.
    Есть блоки. При добавлении блока мы должны задать область видимости этого блока.
    К примеру блок лого. Область видимости все.
    Блок Дополнительная информация. Область видимости только
    К примеру возьмем некий модуль статические страницы - pages, контроллер view, действие view. И параметры. Пусть canonical = about.

    Ну и есть еще блок список страниц. Он есть во всем модуле pages и виден только админу.
    И всё это хочу через базу сделать. Но вот как реализовать никак не придумаю.
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz Март 20, 2011, 2:03 п.п., спустя 25 минут 29 секунд

    ну по традиции, тебе надо EAV
  • VaseninM

    Сообщения: 2416 Репутация: N Группа: Адекваты

    Spritz Март 20, 2011, 2:06 п.п., спустя 3 минуты 1 секунду

    Типа универсальный совет? И как тут его использовать то?
    Спустя 138 сек.
    Какие примерно должны быть таблицы. Дабы удобно было писать - абстрагируемся от еав и допустим, что зависимость у нас только от модуля, контроллера и действия
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz Март 20, 2011, 2:51 п.п., спустя 45 минут 21 секунду

    Я не знаю что ты хочешь сделать. Если ты сам не знаешь, начни с простого. Сделай таблицу страниц и таблицу плагинов к странице, опиши поля и настрой какое -то взаимодействие…
  • krasun

    Сообщения: 1370 Репутация: N Группа: Джедаи

    Spritz Март 20, 2011, 3:32 п.п., спустя 40 минут 42 секунды

    Есть блоки. При добавлении блока мы должны задать область видимости этого блока.
    К примеру блок лого. Область видимости все.


    Что такое блок и что такое область видимости?
  • VaseninM

    Сообщения: 2416 Репутация: N Группа: Адекваты

    Spritz Март 20, 2011, 4:18 п.п., спустя 46 минут 17 секунд

    krasun, kostyl,
    http://www.yiiframework.com/demos/blog/
    Вот тут, например. Справа есть блоки Recent Comments и Tags.
    http://www.yiiframework.com/demos/blog/index.php/site/page?view=about
    а вот тут их нет.
    Тут это реализовано за счет разных базовых шаблонов.
    А я хочу, что бы администратор сам мог назначать какие блоки в каких страницах будут.
    Вот нечто похожее нашел. Посмотрю.
    http://livestreet.ru/blog/addons/2378.html#comment29059
  • Абырвалг

    Сообщения: 6480 Репутация: N Группа: Джедаи

    Spritz Март 20, 2011, 4:30 п.п., спустя 11 минут 31 секунду

    А я хочу, что бы администратор сам мог назначать какие блоки в каких страницах будут.

    пущай создает свои кастомные шаблоны (в данном случае это правильно называть лейаутами)
  • VaseninM

    Сообщения: 2416 Репутация: N Группа: Адекваты

    Spritz Март 20, 2011, 4:57 п.п., спустя 27 минут 2 секунды

    Абырвалг, да, в приведенном примере как раз на лейаутах.
    Но их может быть слишком много. По этому я хочу сделать именно так, как я описал. В апострофе вроде так сделано.
  • Givi

    Сообщения: 2284 Репутация: N Группа: Адекваты

    Spritz Март 20, 2011, 5:29 п.п., спустя 32 минуты 41 секунду

    SpartakuS, получается, что ты хочешь в одном шаблоне собрать и юзерскую и админскую части?! А не слишком ли это неправильно? Все как по мне, то ту и другую части нужно отделить полностью, за исключением некоторых вещей (к примеру, под админом можно сразу же на юзерской части сделать изменение содержимого текста страницы либо же заголовка и т.д., но никак не что-то глобальное).
    Ну и насчет блоков, которые все же должны либо не должны подключатся в том или ином случае, то проверку нужно не в шаблонах делать, и прямо в самом блоке: его пытаемся подключить, а он сам говорит, что мол "не хочу, у вас на меня нету прав" и мы далее выводим следующие блоки. пропустив этот.
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz Март 20, 2011, 5:40 п.п., спустя 10 минут 59 секунд

    можешь посмотреть как в друпале это делается…
  • VaseninM

    Сообщения: 2416 Репутация: N Группа: Адекваты

    Spritz Март 20, 2011, 7:04 п.п., спустя 1 час 23 минуты 27 секунд

    Givi, нет. Я просто хочу сделать динамическое управление блоками
  • krasun

    Сообщения: 1370 Репутация: N Группа: Джедаи

    Spritz Март 20, 2011, 9:38 п.п., спустя 2 часа 34 минуты 25 секунд

    Я просто хочу сделать динамическое управление блоками

    Какими параметрами блоков ты хочешь управлять?
  • VaseninM

    Сообщения: 2416 Репутация: N Группа: Адекваты

    Spritz Март 21, 2011, 12:13 д.п., спустя 2 часа 34 минуты 26 секунд

    krasun,
    хочу примерно это:
    http://livestreet.ru/blog/addons/2378.html#comment29059
    ЗЫ В принципе что делать я знаю уже.
  • Richter

    Сообщения: 18 Репутация: N Группа: Кто попало

    Spritz Авг. 18, 2012, 11:03 п.п., спустя 516 дней 21 час 50 минут

    отлично! но этот вопрос я и хотел задать тебе ;-)

Пожалуйста, авторизуйтесь, чтобы написать комментарий!