[Помогите] Отредактировать код для рисунка

Тема в разделе "OpenCart", создана пользователем passtools, 25 апр 2013.

  1. passtools

    passtools

    Регистрация:
    4 фев 2013
    Сообщения:
    232
    Симпатии:
    52
    Скачал модуль отсюда

    http://wmasteru.ru/threads/Платные-модули-для-opencart-бесплатно.4506/page-22#post-46698

    Как отредактировать код чтобы выводился рисунки для меню первого категория уровня? хочу их с верху поставить.
    PHP:
          <?php
     
    $this
    ->load->model('catalog/category');
    $this->load->model('tool/image');
     
    $categories_1 $this->model_catalog_category->getCategories(0);                                             
     
    if (
    $categories_1) {$output '<ul>';}                                                             
    $output .= '<li class="tlli"><a class="tll-home" href="index.php?route=common/home"><img src="image/home-menu.png" border="0" alt="<?php echo $text_home; ?>"/></a></li>';
    foreach (
    $categories_1 as $category_1) {                                                                           
        
    $output .= '<li class="tlli">';
        
    $testPath $base.'image/';
        
    $picCat $this->model_tool_image->resize($category_1['image'],  190190);
        
    $unrewritten  $this->url->link('product/category''path=' $category_1['category_id']);
        
    $output .= '<a class="tll" href="'.($unrewritten).'">' $category_1['name'] . '</a>';                               
                       
     
        
    $categories_2 $this->model_catalog_category->getCategories($category_1['category_id']);
     
        if (
    $categories_2) {$output .= '<div class="bigdiv" style="margin-left: 0px"><div class="supermenu-left" style="width: 930px;"><h2><div class="cat-logo"><a href="'.($unrewritten).'"><img src="'.$picCat.'" alt="' $category_1['name'].'"/><span>' $category_1['name'] . '</span></a></div></h2>';}                                               
     
        foreach (
    $categories_2 as $category_2) {
            
    $subTestPath $base.'image/';
            if (
    $category_2['image']) {
        
    $picSubCat $this->model_tool_image->resize($category_2['image'],  7575);
        } else {
        
    $picSubCat $base.'image/no_image-menu.jpg';
        };
                                                                           
                                                                           
            
    $output .= '<div class="withchild">';
            
    $sub_unrewritten $this->url->link('product/category''path=' $category_1['category_id'] . '_' $category_2['category_id']);
            
    $output .= '<div class="box-name"><div><a href="'.($sub_unrewritten).'"><img align="middle" style="padding-right:2px; float:left;" src="'.$picSubCat.'" alt="' $category_2['name'].'"/></a></div>
    <div><a class="theparent" href="'
    .($sub_unrewritten).'"><span>' $category_2['name'] . '</span></a></div></div>';
           
            
    $categories_3 $this->model_catalog_category->getCategories($category_2['category_id']);
     
            if (
    $categories_3) {$output .= '<ul class="child-level">';}
     
            foreach (
    $categories_3 as $category_3) {
                
    $output .= '<li>';
                
    $third_sub_unrewritten $this->url->link('product/category''path=' $category_1['category_id'] . '_' $category_2['category_id'] . '_' $category_3['category_id']);
                
    $output .= '<a href="'.($third_sub_unrewritten).'">'.$category_3['name'].'</a>';
           
                
    $output .= '</li>';
     
            }
     
            if (
    $categories_3) {$output .= '</ul>';}
                
    $output .= '</div>';
     
        }
        if (
    $categories_2) {$output .= '</div></div>';}
            
    $output .= '</li>';
    }
    if (
    $categories_1) {$output .= '</ul>';}
    echo 
    $output;
    ?>
     
  2. passtools

    passtools

    Регистрация:
    4 фев 2013
    Сообщения:
    232
    Симпатии:
    52
    Кому надо вот он, иконки для меню. Для второго уровня я убрал. Правда еще надо допилить, где меню "Электростанции" выпадающее меню вылезает за рамки. Вот демо http://passto8g.bget.ru/index.php?route=common/home
    PHP:
    <?php 
     
    $this
    ->load->model('catalog/category');
    $this->load->model('tool/image');
     
    $categories_1 $this->model_catalog_category->getCategories(0);  
     
    if (
    $categories_1) {$output '<ul>';}  
     foreach (
    $categories_1 as $category_1) {
    $output .= '<li class="tlli">';
        
    $testPath $base.'image/';
        
    $picCat $this->model_tool_image->resize($category_1['image'],  8080);
    $unrewritten  $this->url->link('product/category''path=' $category_1['category_id']);
     
    $categories_2 $this->model_catalog_category->getCategories($category_1['category_id']);
     
        
    $output .= '<a href="'.($unrewritten).'"><img src="'.$picCat.'" alt="' $category_1['name'].'"/><span class="tllispan">' $category_1['name'] . '</span></a>';
     
    if (
    $categories_2) {$output .= '<div class="bigdiv"><div class="supermenu-left" ><div class="cat-logo"><div class="withchildimg"></div><a href="'.($unrewritten).'"><img src="'.$picCat.'" alt="' $category_1['name'].'"/><span>' $category_1['name'] . '</span></a><div class="list-img"></div></div>';}
      
    $output .= '<div class="withchild">';
     
    foreach (
    $categories_2 as $category_2) {
      
     
    $sub_unrewritten $this->url->link('product/category''path=' $category_1['category_id'] . '_' $category_2['category_id']);
    $output .= '<div class="box-name"><div><a href="'.($sub_unrewritten).'"></a></div>
    <div><a class="theparent" href="'
    .($sub_unrewritten).'"><span>' $category_2['name'] . '</span></a></div>';
     
    $categories_3 $this->model_catalog_category->getCategories($category_2['category_id']);
     
    if (
    $categories_3) {$output .= '<ul class="child-level">';}
     
    foreach (
    $categories_3 as $category_3) {
    $output .= '<li>';
    $third_sub_unrewritten $this->url->link('product/category''path=' $category_1['category_id'] . '_' $category_2['category_id'] . '_' $category_3['category_id']);
    $output .= '<a href="'.($third_sub_unrewritten).'">'.$category_3['name'].'</a>';
     
    $output .= '</li>';
     
    }
     
    if (
    $categories_3) {$output .= '</ul>';}
    $output .= '</div>';
     
    }
    $output .= '</div>';
    if (
    $categories_2) {$output .= '</div></div>';}
    $output .= '</li>';
    }
     
    if (
    $categories_1) {$output .= '</ul>';} 
     
     
    echo 
    $output;
    ?>
     
  3. passtools

    passtools

    Регистрация:
    4 фев 2013
    Сообщения:
    232
    Симпатии:
    52
    Помогите поправить выпадающее меню, при наведении Электростанции выпадающее меню по правому краю вылезает. Вот сайт
    В стандартном меню он выравнивается по правому краю. Кажется этот кусок кода его выравнивает. Или я не прав?, используют скрипт?
    Код:
    	  <div>
    		<?php for ($i = 0; $i < count($category['children']);) { ?>
    		<ul>
    		  <?php $j = $i + ceil(count($category['children']) / $category['column']); ?>
    		  <?php for (; $i < $j; $i++) { ?>
    		  <?php if (isset($category['children'][$i])) { ?>
    		  <li><a href="<?php echo $category['children'][$i]['href']; ?>"><?php echo $category['children'][$i]['name']; ?></a></li>
    		  <?php } ?>
    		  <?php } ?>
    		</ul>
    		<?php } ?>
    	  </div> 
    Вот такой скриптом как то можно выровнять, только надо допилить. В скриптах я ноль...
    Код:
     $(document).ready(function() {
     
    $('#slmenu ul > li > a + div').each(function(index, element) {
     
    var slmenu = $('#slmenu').offset();
    var ddown = $(this).parent().offset();
     
    i = ddown.left - slmenu.left;
     
    if (i > 0) {
    $(this).css('margin-left', '-' + (i - 5) + 'px');
    }
    });
    }); 
     
  4. warp

    warp

    Регистрация:
    3 фев 2013
    Сообщения:
    20
    Симпатии:
    2
    ну так необходимо править не куски кода, а стили оформления меню ... в частности в sl-menu файл стилей slmenu-classic.css (в архиве) ... судя по вашему коду за ширину отвечает класс withchild (хотя может и другой я модуль не ставил) ... найдите его в файле стиля и ... и, как мне кажется, уменьшить значение max-width: 230px; или же пройти ниже и уменьшить значение width: 220px; Что то в этом роде копать и пробовать! Только не забывать резервные копии файлов делать которые правите!
    а вообще вывести изображение категории в горизонтальное меню рядом с под-категориями оказалось не так трудно ... да и вообще любое изображение, а не имеено привязанное к категории ... плюс любое описание ))) я лично для себя решил этот вопрос выводом Описания категории (которая в админке) в меню. Ставлю через админку любую фоту + описание или без него! Единственный минус сего решения - фота и описание будет так же выводиться и в самой категории. Хотя описание можно вырезать из кода ... По крайней мере в будущем можно вместо этого решения поставить super mega menu )))
     
  5. passtools

    passtools

    Регистрация:
    4 фев 2013
    Сообщения:
    232
    Симпатии:
    52
    Это не выход, А что если где РЕКЛАМА и там будет так же несколько под категорий? Модуль вообще доработать и можно выложить на благо народа.