Новости Joomla

0 Пользователей и 1 Гость просматривают эту тему.
  • 12 Ответов
  • 4194 Просмотров
*

baloon

  • Захожу иногда
  • 369
  • 13 / 0
Есть магазин - много товаров и категорий, которые выводятся в Accordion Menu VirtueMart.
Появилась необходимость сделать несколько дополнительных категорий. Но загвоздка в том, что эти дополнительные категории не должны выводится в аккордион меню. На эти дополнительные категории должны быть отдельные ссылки с главной. И желательно, чтобы эти дополнительные категории выводились тоже в меню. но в другом.
Был бы модель меню, который позволял бы выводить выбранные категории, было бы здорово.
Уже голову сломал, не знаю. как сделать.
Кто что посоветует?
*

remix8080

  • Захожу иногда
  • 347
  • 39 / 0
Re: Решение для категорий и меню.
« Ответ #1 : 18.12.2009, 09:58:08 »
На счет меню, "который позволял бы выводить выбранные категории,..." не подскажу. Но как вариант, можно поправить SELECT в файле mod_vm_accordion.php (или какую версию используете). Например, Вы хотите, чтобы дополнительные категории с id 7,8 и 9 не выводились в аккордион меню. Тогда в SELECT после условия WHERE дописываете category_id not in (7,8,9). Теперь в аккордеоне этих категорий не будет.

А насчет, как вывести эти категории в другом каком-то меню, то можно сделать по аналогии - добавить в SELECT модуля этого нового меню category_id in (7,8,9)

П.С. Так можно сделать, если не найдете меню, которое позволит выводить выбранные категории...
*

baloon

  • Захожу иногда
  • 369
  • 13 / 0
Re: Решение для категорий и меню.
« Ответ #2 : 19.03.2010, 22:00:00 »
Очень хочу, чтобы получилось, как вы описали, но пока не выходит.
Вот кусок кода, как я понял, тот в котором нужно делать изменения

Код
$database->setQuery("SELECT *
               FROM `#__menu`
               WHERE `link` LIKE '%com_virtuemart%'
               AND `published` =1");
  $GLOBALS['itemid'] = $database->loadResult();

Куда именно и как нужно дописать category_id not in (7,8,9)?
Я по разному пробовал, но я не знаю php, поэтому могу только гадать.
*

remix8080

  • Захожу иногда
  • 347
  • 39 / 0
Re: Решение для категорий и меню.
« Ответ #3 : 19.03.2010, 22:32:55 »
Вы наверное не тот select показали. Посмотрите в файле модуля, должен быть другой какой-то...
Но суть такая:
SELECT *  FROM `#__menu` WHERE `link` LIKE '%com_virtuemart%' AND category_id not in (7,8,9) AND `published` =1"
В скобкаж укажете ID тех категорий, которые нужно выключить.

П.С. Даный селект взял за пример, куда надо вставлять этот кусочек
*

baloon

  • Захожу иногда
  • 369
  • 13 / 0
Re: Решение для категорий и меню.
« Ответ #4 : 19.03.2010, 23:12:15 »
Там всего 4 select. Пробовал с разными, по разному, но не получается.
Привожу весь код, он не большой.

Код
<?php
global $mosConfig_absolute_path, $VM_LANG,$database;
defined('_JEXEC') or die('Restricted access');
$database = & JFactory::getDBO();
if($mosConfig_absolute_path == ''){
  $mosConfig_absolute_path = dirname( __FILE__ ).'/../..';
}
  $database->setQuery("SELECT *
               FROM `#__menu`
               WHERE `link` LIKE '%com_virtuemart%'
               AND `published` =1"
   );
  $GLOBALS['itemid'] = $database->loadResult();
// no direct access
$GLOBALS[parentmenuislink] = $params->get( 'parentmenuislink', '0' );
$GLOBALS[rememberlaststate] = $params->get( 'rememberlaststate', '0' );

$document =& JFactory::getDocument();
$document->addScript('media/system/js/mootools.js');
$document->addScript('modules/mod_vm_accordion/script/script.js');
$document->addStyleSheet('modules/mod_vm_accordion/styles/style.css');
require_once('administrator/components/com_virtuemart/classes/ps_database.php');
require_once('administrator/components/com_virtuemart/virtuemart.cfg.php');
$db =& new ps_DB;
$query = 'SELECT DISTINCT a.category_id, a.category_name, a.category_publish, a.list_order, f.category_parent_id, f.category_child_id FROM #__{vm}_category AS a, #__{vm}_category_xref AS f  WHERE a.category_publish="Y" AND a.category_id = f.category_child_id AND f.category_parent_id=\'0\'  ORDER BY a.list_order';
$db->query($query);
while($db->next_record()){
  $rows[] = $db->get_row();
}
$x=0;
if(count($rows) > 0){
  foreach($rows as $row){
     $query = 'SELECT DISTINCT a.category_id, a.category_name, a.category_publish, a.list_order, f.category_parent_id, f.category_child_id'
     . ' FROM #__{vm}_category AS a, #__{vm}_category_xref AS f'
     . ' WHERE a.category_publish="Y" AND a.category_id = f.category_child_id AND f.category_parent_id='.$row->category_id
     . ' ORDER BY a.list_order';
     $db->query( $query);
      while($db->next_record()){
        $sub_rows[$x][] = $db->get_row();
      }
        $y=0;
        if(isset($sub_rows[$x]) && count($sub_rows[$x]) > 0){
          foreach($sub_rows[$x] as $row){
             $query = 'SELECT DISTINCT a.category_id, a.category_name, a.category_publish, a.list_order, f.category_parent_id, f.category_child_id'
             . ' FROM #__{vm}_category AS a, #__{vm}_category_xref AS f'
             . ' WHERE a.category_publish="Y" AND a.category_id = f.category_child_id AND f.category_parent_id='.$row->category_id
             . ' ORDER BY a.list_order';
             $db->query($query);
              while($db->next_record()){
                $sub_rows2[$x][$y][] = $db->get_row();
              }
              $y++;
          }
        }
      $x++;
  }
}else{
  return;
}

if(!function_exists("categoryLink")){
  function categoryLink($catId){
    return JRoute::_('index.php?option=com_virtuemart&page=shop.browse&category_id=' . $catId .'&Itemid='.$GLOBALS['itemid'] ) ;
  }
}
require(JModuleHelper::getLayoutPath('mod_vm_accordion', 'default'));
?>
*

remix8080

  • Захожу иногда
  • 347
  • 39 / 0
Re: Решение для категорий и меню.
« Ответ #5 : 19.03.2010, 23:27:23 »
Делал такое, но сейчас точно не помню в какой (2-й, 3-й или в 4-й вставлял). Завтра посмотрю и отпишусь.
Сейчас можете поэкспериментировать...  после WHERE вставляйте and category_id not in (...)
*

baloon

  • Захожу иногда
  • 369
  • 13 / 0
Re: Решение для категорий и меню.
« Ответ #6 : 19.03.2010, 23:45:59 »
Получилось.
Второй select это первый уровень меню, третий select второй уровень, четвертый select третий уровень меню.
Значит дописывать надо в зависимости от того, какой уровень нужно скрыть.
remix8080 спасибо! Сам бы долго делал :)

Теперь осталось установить еще пару этих модулей, чтобы они были отдельными.
*

remix8080

  • Захожу иногда
  • 347
  • 39 / 0
Re: Решение для категорий и меню.
« Ответ #7 : 20.03.2010, 16:44:39 »
Это хорошо, что получилось  ;)
*

dolgik

  • Осваиваюсь на форуме
  • 15
  • 1 / 0
Re: Решение для категорий и меню.
« Ответ #8 : 11.04.2010, 12:31:08 »
Теперь осталось установить еще пару этих модулей, чтобы они были отдельными.

Спасибо за тему, мне пригодилась.
По поводу установить еще пару таких модулей-получилось?
У меня ступор...
*

baloon

  • Захожу иногда
  • 369
  • 13 / 0
Re: Решение для категорий и меню.
« Ответ #9 : 12.04.2010, 02:59:44 »
Спасибо за тему, мне пригодилась.
По поводу установить еще пару таких модулей-получилось?
У меня ступор...
Получилось. Изменил все, что могло вызвать недоумение у Joomla.

Переименовал файлы mod_vm_accordion.php и mod_vm_accordion.xml
Просто дописал в конце "2" - mod_vm_accordion2.php и mod_vm_accordion2.xml
В файле mod_vm_accordion2.xml дописал двойку в следующих строках:

<name>Accordion Menu Virtuemart2</name>
<description>Accordion Menu for VirtueMart2</description>
<filename module="mod_vm_accordion2">mod_vm_accordion2.php</filename>
<filename>mod_vm_accordion2.xml</filename>

Запаковал в zip и установил.
*

dolgik

  • Осваиваюсь на форуме
  • 15
  • 1 / 0
Re: Решение для категорий и меню.
« Ответ #10 : 12.04.2010, 16:08:55 »
Спасибо за совет. Сразу так и пробовал(переименовывать), но в XML не додумался поправить.
Еще один вопрос: я скачал модуль s5_vm_accordion-все супер, но в нем нет прикрепленной таблицы стилей, нет ни какого xml. Думаю, что это урезанная версия. тоесть у меня все скучно, могу только менять размер шрифта , его цвет и отступы. Очень нужно поставить бэкграунд для кнопок. Не знаю как...(
Может подскажете что-то?Или где скачать другой модуль ?
П.с.заранее спасибо за ответ
*

baloon

  • Захожу иногда
  • 369
  • 13 / 0
Re: Решение для категорий и меню.
« Ответ #11 : 12.04.2010, 17:44:41 »
Спасибо за совет. Сразу так и пробовал(переименовывать), но в XML не додумался поправить.
Еще один вопрос: я скачал модуль s5_vm_accordion-все супер, но в нем нет прикрепленной таблицы стилей, нет ни какого xml. Думаю, что это урезанная версия. тоесть у меня все скучно, могу только менять размер шрифта , его цвет и отступы. Очень нужно поставить бэкграунд для кнопок. Не знаю как...(
Может подскажете что-то?Или где скачать другой модуль ?
П.с.заранее спасибо за ответ
Ну вот ссылка на mod_vm_accordion http://turbobit.net/cjg9ygyzlmp9.html
Он мне нравится, выезжающие подпункты, а s5 я вроде не пробовал.
*

dolgik

  • Осваиваюсь на форуме
  • 15
  • 1 / 0
Re: Решение для категорий и меню.
« Ответ #12 : 13.04.2010, 10:50:27 »
Ну вот ссылка на mod_vm_accordion http://turbobit.net/cjg9ygyzlmp9.html
Он мне нравится, выезжающие подпункты, а s5 я вроде не пробовал.
Спасибо , но наверное у Вас 1.5. Joomla, а я юзаю старую.Не устанавливается

Надо будет переходить на 1.5 (
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Усовершенствованный модуль категорий [Аккордион и прочее - the best ;) ]

Автор danik.html

Ответов: 749
Просмотров: 197011
Последний ответ 24.11.2014, 18:37:11
от slavakh
Вывод товара из дочерних категорий в родительскую

Автор B0nG

Ответов: 0
Просмотров: 1881
Последний ответ 03.08.2014, 15:13:57
от B0nG
Быстродействие модуля дерева категорий JSCookTree VirtueMart в браузере Firefox

Автор capricorn

Ответов: 0
Просмотров: 1539
Последний ответ 29.11.2013, 18:31:00
от capricorn
[Решено] Категорий при добавлении товара больше 200...

Автор mobiland

Ответов: 6
Просмотров: 2100
Последний ответ 22.11.2013, 12:41:26
от El_nik
Mета-теги для товаров и категорий VirtueMart

Автор igoryk

Ответов: 2
Просмотров: 4192
Последний ответ 30.10.2013, 09:11:53
от Ingener