Категории |
Плагин "Управление боксами"Хотел выложить плагин с релизом нового платного шаба, но решил, что чем раньше, тем лучше. Может что добавлю еще в него. {php} $boxes_data = load_boxes(); foreach($boxes_data as $box) { if($box['position'] == 'left') { switch($box['name']) { case 'blog': {/php} {$box_BLOG} {php}break; case 'vote': {/php} {$box_vote} {php}break; case 'products_scroll': {/php} {$box_products_scroll} {php}break; case 'categories': {/php} {$box_CATEGORIES} {php}break; case 'content': {/php} {$box_CONTENT} {php}break; case 'add_quickie': {/php} {$box_ADD_QUICKIE} {php}break; case 'information': {/php} {$box_INFORMATION} {php}break; case 'last_viewed': {/php} {$box_LAST_VIEWED} {php}break; case 'reviews': {/php} {$box_REVIEWS} {php}break; case 'search': {/php} {$box_SEARCH} {php}break; case 'specials': {/php} {$box_SPECIALS} {php}break; case 'featured': {/php} {$box_FEATURED} {php}break; case 'latestnews': {/php} {$box_LATESTNEWS} {php}break; case 'articles': {/php} {$box_ARTICLES} {php}break; case 'articlesnew': {/php} {$box_ARTICLESNEW} {php}break; case 'authors': {/php} {$box_AUTHORS} {php}break; case 'cart': {/php} {$box_CART} {php}break; case 'login': {/php} {$box_LOGIN} {php}break; case 'admin': {/php} {$box_ADMIN} {php}break; case 'downloads': {/php} {$box_DOWNLOADS} {php}break; case 'affilate': {/php} {$box_AFFILIATE} {php}break; case 'whatsnew': {/php} {$box_WHATSNEW} {php}break; case 'newsletter': {/php} {$box_NEWSLETTER} {php}break; case 'bestsellers': {/php} {$box_BESTSELLERS} {php}break; case 'infobox': {/php} {$box_INFOBOX} {php}break; case 'currencies': {/php} {$box_CURRENCIES} {php}break; case 'languages': {/php} {$box_LANGUAGES} {php}break; case 'manufacturers': {/php} {$box_MANUFACTURERS} {php}break; case 'manufacturers2': {/php} {$box_MANUFACTURERS_INFO} {php}break; case 'faq': {/php} {$box_FAQ} {php}break; case 'whois_online': {/php} {$box_whois_online} {php}break; } } } {/php} ДЛЯ ПРАВОЙ КОЛОНКИ {php} $boxes_data = load_boxes(); foreach($boxes_data as $box) { if($box['position'] == 'right') { switch($box['name']) { case 'blog': {/php} {$box_BLOG} {php}break; case 'vote': {/php} {$box_vote} {php}break; case 'products_scroll': {/php} {$box_products_scroll} {php}break; case 'categories': {/php} {$box_CATEGORIES} {php}break; case 'content': {/php} {$box_CONTENT} {php}break; case 'add_quickie': {/php} {$box_ADD_QUICKIE} {php}break; case 'information': {/php} {$box_INFORMATION} {php}break; case 'last_viewed': {/php} {$box_LAST_VIEWED} {php}break; case 'reviews': {/php} {$box_REVIEWS} {php}break; case 'search': {/php} {$box_SEARCH} {php}break; case 'specials': {/php} {$box_SPECIALS} {php}break; case 'featured': {/php} {$box_FEATURED} {php}break; case 'latestnews': {/php} {$box_LATESTNEWS} {php}break; case 'articles': {/php} {$box_ARTICLES} {php}break; case 'articlesnew': {/php} {$box_ARTICLESNEW} {php}break; case 'authors': {/php} {$box_AUTHORS} {php}break; case 'cart': {/php} {$box_CART} {php}break; case 'login': {/php} {$box_LOGIN} {php}break; case 'admin': {/php} {$box_ADMIN} {php}break; case 'downloads': {/php} {$box_DOWNLOADS} {php}break; case 'affilate': {/php} {$box_AFFILIATE} {php}break; case 'whatsnew': {/php} {$box_WHATSNEW} {php}break; case 'newsletter': {/php} {$box_NEWSLETTER} {php}break; case 'bestsellers': {/php} {$box_BESTSELLERS} {php}break; case 'infobox': {/php} {$box_INFOBOX} {php}break; case 'currencies': {/php} {$box_CURRENCIES} {php}break; case 'languages': {/php} {$box_LANGUAGES} {php}break; case 'manufacturers': {/php} {$box_MANUFACTURERS} {php}break; case 'manufacturers2': {/php} {$box_MANUFACTURERS_INFO} {php}break; case 'faq': {/php} {$box_FAQ} {php}break; case 'whois_online': {/php} {$box_whois_online} {php}break; } } } {/php} ВСЕ. После этого в админке можно менять положение блоков на главной. Не стоит забывать о том, что блоки должны быть примерно одинаковые. Чтобы они подходили как к правой, так и к левой колонке вашего шаблона. Если есть предложения, то пишите. Так же хотел бы попросить глянуть PHP код плагина. Там есть две функции которые надо бы глянуть. В правильном ли месте они вызываются. 3 - в файле index.html вашего шаблона, найти все теги которые выводят боксы(а это у нас {$box_.....}) и заменить их все на такой код А зачем столько одинаковых кейсов в шаблоне? Не проще ли эти кейсы запихать в пхп, а в шаблоне проставить {$box_CONTROL##}, где ## числа 01, 02, 03 и т.д.? я думал сделать малость по другому. я думал сделать малость по другому. В шаблоне выводить просто {$box_BOXES_LEFT}, {$box_BOXES_RIGHT}. Ну или так... толку от модуля... И че дальше? У шаблона нет конфига. В любом случае нужно будет ковырять html файл. регионов может быть сколько угодно... мы и по центру можем их выводить.. Имхо. Тогда надо глобально менять вывод информации на главной и пускать все через регионы, и делать полноценный плагин(мод) управления. я думал сделать малость по другому. В шаблоне выводить просто {$box_BOXES_LEFT}, {$box_BOXES_RIGHT}. да. такое решение красивее и меньше левого кода в шаблоне Имхо. Тогда надо глобально менять вывод информации на главной и пускать все через регионы, и делать полноценный плагин(мод) управления. Ибо смысла плодить регионы ради вывода блоков... об этом я и говорю, если делать такое управление то оно должно быть универсальным и нет никакой разницы между блоком и модулем, не знаю зачем в оск такой бред сделали и бокс и модуль это - пхп + хтмл файл и не больше Тогда уже и регионы надо добавлять из админки, а в шаблоне уже вставлять его в нужное место. не очень согласен как писал выше думаю лучше в шаблоне делать конфиг, как вариант хмл, с регионами(куда можно будет в будущем прикрутить опции шаблона и сделать управление темой.. это не новое, хотя для оск может и новое:) ) а потом через админку выбирать куда добавить, в какой регион наш бокс, добавлять в разные регионы, с разными настройками я не говорю что ты сделал фигню какую то, я говорю идею на развитие темы и ее улучшение тут хоть с кем то по теме поговорить можно) вамшоп умирает в направлении програминга) Как можно убрать массив с кейсами и получать их через global $boxes_data, чтобы запросы лишние не делать на каждую колонку.. |
|