| NordWest |
Отправлено: 20 мая 2013 — 09:40 • Тема: Вопросы по работе с Limbo • Форум: Limbo CMS |
Ответов: 268 Просмотров: 90252
 |
Сделал
Аналогично меняем функцию getmenulink
Спойлер (Показать)function getmenulink($menu,$class_sfx='',$menutype='')
{
global $lm_website,$lm_type,$conn;
$addon='';
switch ($menu['link_type']) {
case 'separator':
break;
case 'url':
if (eregi( "index.php\?", $menu['link'] )) {
if (!eregi( "Itemid=", $menu['link'] )) {
$menu['link'] .= "&Itemid=".$menu['id'];
}
}
if(!strstr($menu['link'],"index.php") && !strstr($menu['link'],"http://"))$menu['link']=$lm_website.$menu['link'];
break;
case 'cl':
{
$crow=$conn->GetRow("SELECT * FROM #__menu WHERE id=".$menu['link']." AND published=1");
if($crow){
$menu['link']=getmenulink($crow,$class_sfx,$menutype);
return $menu['link'];
}
}
break;
case 'cc':
{
$catid = explode('=', $menu['link']);
$crow=$conn->GetRow("SELECT count FROM #__categories WHERE id=".$catid[3]);
$addon=' ('.$crow['count'].')';
$menu['link'] .= "&Itemid=".$menu['id'];
break;
}
case 'component':
{
$catid = explode('=', $menu['link']);
if ($catid[1] == 'frontpage')
{
$crow = $conn->Execute("SELECT * FROM #__content_frontpage");
$cnt = $crow->RecordCount();
$addon=' ('.$cnt.')';
}
$menu['link'] .= "&Itemid=".$menu['id'];
break;
}
case 'wrapper':
$menu['link'] = "index.php?option=wrapper&Itemid=".$menu['id'];
break;
default:
$menu['link'] .= "&Itemid=".$menu['id'];
break;
}
if($lm_type=="html")
{
$menuclass = "mainlevel$class_sfx";
if ($menu['parent'] > 0) { $menuclass = "sublevel$class_sfx"; }
} else if ($lm_type=="xhtml")
{
$menuclass="";
}
$class=(strlen($menuclass)>0)?"class=\"$menuclass\"":"";
$link=$menu['link'];
$name=$menu['name'];
$active="";
global $Itemid;
if(isset($Itemid) && $Itemid==$menu['id'] && $menutype=="mainmenu") $active = "id=\"active_menu\"";
switch ($menu['browsernav']) {
case 1:
$txt = "<a href=\"$link\" target=\"_blank\" $class $active>$name</a>";
break;
case 2:
$txt = "<a href=\"#\" onClick=\"javascript: window.open('$link', '', 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=780,height=550'); return false\" $class $active>$name</a>";
break;
case 3:
$txt = "<span $class $active>$name</span>";
break;
default:
$txt = "<a href=\"$link\" $class $active>$name $addon</a>";
break;
}
return $txt;
} |
| NordWest |
Отправлено: 20 мая 2013 — 00:55 • Тема: Вопросы по работе с Limbo • Форум: Limbo CMS |
Ответов: 268 Просмотров: 90252
 |
Цитата от XsystemnikX: но я как понял, для тех категорий которые уже есть на сайте для них не отображается По уму должно отображаться для всех категорий.
Но я посмотрел ваш сайт - у вас нет ссылок на категории. Так что получается зря всё это.
Наверное нужно было прикручивать эту фишку к главной странице. Завтра попробую... |
| NordWest |
Отправлено: 19 мая 2013 — 23:42 • Тема: Вопросы по работе с Limbo • Форум: Limbo CMS |
Ответов: 268 Просмотров: 90252
 |
Получилось сделать для категорий.
Замените код функции getmenulink в модуле mod_menu.php
Спойлер (Показать)function getmenulink($menu,$class_sfx='',$menutype='')
{
global $lm_website,$lm_type,$conn;
$addon='';
switch ($menu['link_type']) {
case 'separator':
break;
case 'url':
if (eregi( "index.php\?", $menu['link'] )) {
if (!eregi( "Itemid=", $menu['link'] )) {
$menu['link'] .= "&Itemid=".$menu['id'];
}
}
if(!strstr($menu['link'],"index.php") && !strstr($menu['link'],"http://"))$menu['link']=$lm_website.$menu['link'];
break;
case 'cl':
{
$crow=$conn->GetRow("SELECT * FROM #__menu WHERE id=".$menu['link']." AND published=1");
if($crow){
$menu['link']=getmenulink($crow,$class_sfx,$menutype);
return $menu['link'];
}
}
break;
case 'cc':
{
$catid = explode('=', $menu['link']);
$crow=$conn->GetRow("SELECT count FROM #__categories WHERE id=".$catid[3]);
$addon=' ('.$crow['count'].')';
$menu['link'] .= "&Itemid=".$menu['id'];
break;
}
case 'wrapper':
$menu['link'] = "index.php?option=wrapper&Itemid=".$menu['id'];
break;
default:
$menu['link'] .= "&Itemid=".$menu['id'];
break;
}
if($lm_type=="html")
{
$menuclass = "mainlevel$class_sfx";
if ($menu['parent'] > 0) { $menuclass = "sublevel$class_sfx"; }
} else if ($lm_type=="xhtml")
{
$menuclass="";
}
$class=(strlen($menuclass)>0)?"class=\"$menuclass\"":"";
$link=$menu['link'];
$name=$menu['name'];
$active="";
global $Itemid;
if(isset($Itemid) && $Itemid==$menu['id'] && $menutype=="mainmenu") $active = "id=\"active_menu\"";
switch ($menu['browsernav']) {
case 1:
$txt = "<a href=\"$link\" target=\"_blank\" $class $active>$name</a>";
break;
case 2:
$txt = "<a href=\"#\" onClick=\"javascript: window.open('$link', '', 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,width=780,height=550'); return false\" $class $active>$name</a>";
break;
case 3:
$txt = "<span $class $active>$name</span>";
break;
default:
$txt = "<a href=\"$link\" $class $active>$name $addon</a>";
break;
}
return $txt;
} |
| NordWest |
Отправлено: 19 мая 2013 — 22:06 • Тема: Вопросы по работе с Limbo • Форум: Limbo CMS |
Ответов: 268 Просмотров: 90252
 |
Пока ничего не получается. Рыть нужно модуль mod_menu.php но там попадаются такие конструкции которые я никак не могу интерпретировать.
code:echo $indents[1][1].getmenulink($row1,$class,$menutype).$indents[1][2]; |
| NordWest |
Отправлено: 19 мая 2013 — 21:03 • Тема: Этапы разработки CMS Limbo • Форум: Limbo CMS |
Ответов: 115 Просмотров: 41462
 |
Нашел косяк в работе админки. Удаляя прототип меню остаются несвязанные пункты этого меню, т.е. в базе копится мусор. Нужно в ближайшее время это поправить... |
| NordWest |
Отправлено: 19 мая 2013 — 20:48 • Тема: Вопросы по работе с Limbo • Форум: Limbo CMS |
Ответов: 268 Просмотров: 90252
 |
Цитата: Обнаружилась еще одна проблемка:
Когда я нажимаю на печать выходит ошибка, нажимаю второй раз на неё пропадает: Я пока на эти нюансы не обращаю внимания, даже не смотрел как там код устроен.
Что касается вашего вопроса по поводу вывода в меню количества документов в категории...
Это же стандартный элемент формирования меню. Можно попробовать добавить эту информацию только к тем пунктам, которые ссылаются на категории. Но имейте ввиду, что так станут выглядеть все пункты ссылающиеся на категории. Делаем? |
| NordWest |
Отправлено: 19 мая 2013 — 20:17 • Тема: Вопросы по работе с Limbo • Форум: Limbo CMS |
Ответов: 268 Просмотров: 90252
 |
Цитата от XsystemnikX: Я даже скачал один из шаблонов для сайта с вашего сайта, так же не установился))) Именно не установился? Вероятно отличается структура xml файлов.
Цитата: у меня в большей степень развит оформленческий взгляд, нежели программный У меня с точностью до наоборот - дизайн править для меня мука.
Цитата: Кстати, вот прописан так же как и у вас такой тег линии Это кто-то прописывал до меня - я весь шаблон с нуля не поднимал, делал на основе. В таблицу стилей стараюсь не лезть, т.к. очень мало там понимаю. Пару раз пытался разобраться, но как-то не получается у меня это. |
| NordWest |
Отправлено: 19 мая 2013 — 19:45 • Тема: Хранение настроек в xml файле • Форум: Limbo CMS |
Ответов: 2 Просмотров: 1695
 |
Вот нашел такое, позже попробую...
code:
$params=parseparams(dbdecode($module['params']));
$params=parselinkparams($Itemid);
$params=parseparams(""); $Itemid=0;
Для доступа к $params её нужно объявлять глобальной |
| NordWest |
Отправлено: 19 мая 2013 — 19:42 • Тема: Хранение настроек в xml файле • Форум: Limbo CMS |
Ответов: 2 Просмотров: 1695
 |
А вот нашел ещё интересный способ извлечения параметров, подсмотрел в модуле
code:$type = @$params->get( 'type' ,'top') ;
$count = @$params->get( 'count' ,'10') ;
Вот интересно - есть команда $params->get, а есть например $params->set? |
| NordWest |
Отправлено: 19 мая 2013 — 19:10 • Тема: Этапы разработки CMS Limbo • Форум: Limbo CMS |
Ответов: 115 Просмотров: 41462
 |
Искал причину некорректной работы компонента загрузок.
Причина банальная, но для дальнейшей разработки необходимо не забывать, что...
в текущем ядре функция array_replace заменена на array_repl
Везде, где в компонентах будет встречена эта функция необходимо делать замену.
Компонент загрузок откорректирован и залит на сервер. |
|