Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

shchs

Користувачі
  
  • Публікації

    528
  • З нами

Повідомлення, опубліковані користувачем shchs

  1. Чуть-чуть не так, вот готовый файл, еще внес правку для надежности скрипта.

    <?php echo $header; ?><?php echo $column_left; ?><?php echo $column_right; ?>
    <section id="content" class="columns"><?php echo $content_top; ?>
      <ul class="breadcrumbs">
      <div class="category-info oldmesto">
      <div class="catdescript">
      <?php if ($description) { ?>
        <?php echo $description; ?>
      <?php } ?>
      </div>
      </div>
        <?php foreach ($breadcrumbs as $breadcrumb) { ?>
        <li><a href="<?php echo $breadcrumb['href']; ?>"><?php echo $breadcrumb['text']; ?></a></li>
        <?php } ?>
      </ul>
      
    <?php if($this->config->get('oxy_category_subcategories_status')== 1) { ?>  
    <?php if($this->config->get('oxy_category_subcategories_style')== 0) { ?>
      <?php if ($categories) { ?>
      <h4><?php echo $text_refine; ?></h4>
      <div class="category-list">
      <?php foreach ($categories as $category) { ?>
    			<div class="two mobile-two columns">
    				<?php if ($category['thumb']) { ?>
    				<div class="image"><a href="<?php echo $category['href']; ?>"><img src="<?php echo $category['thumb']; ?>" alt="<?php echo $category['name']; ?>" /></a></div>
                    <?php } else { ?>
                    <div class="image"><a href="<?php echo $category['href']; ?>"><img src="catalog/view/theme/oxy/image/no_image-100x100.png" alt="<?php echo $category['name']; ?>" /></a></div>
    				<?php } ?>
    				<div class="name subcatname"><a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a></div>
    			</div>
      <?php } ?>          
      </div>
      <?php } ?>
    <?php } ?>  
    <?php if($this->config->get('oxy_category_subcategories_style')== 1) { ?>  
      <?php if ($categories) { ?>
      <h4><?php echo $text_refine; ?></h4>
      <div class="category-list">
        <?php if (count($categories) <= 5) { ?>
        <ul>
          <?php foreach ($categories as $category) { ?>
          <li><span></span><a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a></li>
          <?php } ?>
        </ul>
        <?php } else { ?>
        <?php for ($i = 0; $i < count($categories);) { ?>
        <ul>
          <?php $j = $i + ceil(count($categories) / 4); ?>
          <?php for (; $i < $j; $i++) { ?>
          <?php if (isset($categories[$i])) { ?>
          <li><span></span><a href="<?php echo $categories[$i]['href']; ?>"><?php echo $categories[$i]['name']; ?></a></li>
          <?php } ?>
          <?php } ?>
        </ul>
        <?php } ?>
        <?php } ?>
      </div>
      <?php } ?>
    <?php } ?>
    <?php } ?>
      <?php if ($products) { ?>
      <div class="product-filter">
        <div class="display"><span><?php echo $text_display; ?></span> <img src="catalog/view/theme/oxy/image/icon_list.png" alt="<?php echo $text_list; ?>" title="<?php echo $text_list; ?>" /> <a onclick="display('grid');"><img src="catalog/view/theme/oxy/image/icon_grid.png" alt="<?php echo $text_grid; ?>" title="<?php echo $text_grid; ?>" /></a></div>
        <div class="product-compare"><a href="<?php echo $compare; ?>" id="compare-total"><?php echo $text_compare; ?></a></div>    
        <div class="limit"><?php echo $text_limit; ?>
          <select onchange="location = this.value;">
            <?php foreach ($limits as $limits) { ?>
            <?php if ($limits['value'] == $limit) { ?>
            <option value="<?php echo $limits['href']; ?>" selected="selected"><?php echo $limits['text']; ?></option>
            <?php } else { ?>
            <option value="<?php echo $limits['href']; ?>"><?php echo $limits['text']; ?></option>
            <?php } ?>
            <?php } ?>
          </select>
        </div>
        <div class="sort"><?php echo $text_sort; ?>
          <select onchange="location = this.value;">
            <?php foreach ($sorts as $sorts) { ?>
            <?php if ($sorts['value'] == $sort . '-' . $order) { ?>
            <option value="<?php echo $sorts['href']; ?>" selected="selected"><?php echo $sorts['text']; ?></option>
            <?php } else { ?>
            <option value="<?php echo $sorts['href']; ?>"><?php echo $sorts['text']; ?></option>
            <?php } ?>
            <?php } ?>
          </select>
        </div>
      </div>
      <div class="product-list">
        <?php foreach ($products as $product) { ?>
        <div class="<?php echo $this->config->get('oxy_layout_pb_noc'); ?> mobile-two columns">
         
          <?php if ($product['thumb_swap']) { ?>
          <div class="image">
          <?php if (($product['special'])&&($this->config->get('oxy_category_sale_badge_status') == 1)) { ?><span class="sale-icon"><?php echo $text_sale; ?></span><?php } ?> 
          <div class="flybar">     
          <a onclick="addToWishList('<?php echo $product['product_id']; ?>');" class="wishlist"><div><?php echo $button_wishlist; ?></div></a>
          <a onclick="addToWishList('<?php echo $product['product_id']; ?>');" class="wishlist-tip" title="<?php echo $button_wishlist; ?>"><div><?php echo $button_wishlist; ?></div></a>
          <a onclick="addToCompare('<?php echo $product['product_id']; ?>');" class="compare"><div><?php echo $button_compare; ?></div></a>
          <a onclick="addToCompare('<?php echo $product['product_id']; ?>');" class="compare-tip" title="<?php echo $button_compare; ?>"><div><?php echo $button_compare; ?></div></a>
          </div>
          <a href="<?php echo $product['href']; ?>"><img oversrc="<?php echo $product['thumb_swap']; ?>" src="<?php echo $product['thumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" /></a>
          </div>
          <?php } else {?>
          <div class="image">
          <?php if (($product['special'])&&($this->config->get('oxy_category_sale_badge_status') == 1)) { ?><span class="sale-icon"><?php echo $text_sale; ?></span><?php } ?> 
          <div class="flybar">     
          <a onclick="addToWishList('<?php echo $product['product_id']; ?>');" class="wishlist"><div><?php echo $button_wishlist; ?></div></a>
          <a onclick="addToWishList('<?php echo $product['product_id']; ?>');" class="wishlist-tip" title="<?php echo $button_wishlist; ?>"><div><?php echo $button_wishlist; ?></div></a>
          <a onclick="addToCompare('<?php echo $product['product_id']; ?>');" class="compare"><div><?php echo $button_compare; ?></div></a>
          <a onclick="addToCompare('<?php echo $product['product_id']; ?>');" class="compare-tip" title="<?php echo $button_compare; ?>"><div><?php echo $button_compare; ?></div></a>  
          </div>
          <a href="<?php echo $product['href']; ?>"><img src="<?php echo $product['thumb']; ?>" title="<?php echo $product['name']; ?>" alt="<?php echo $product['name']; ?>" /></a>
          </div>
          <?php } ?> 
          <div class="name"><a href="<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div>
          <div class="product_box_brand"><?php if ($product['brand']) { ?><span><?php echo $text_manufacturer; ?></span> <a href="<?php echo $product['brand_url']; ?>"><?php echo $product['brand']; ?></a><?php } ?></div>
          <?php if ($product['rating']) { ?>
          <div class="rating"><img src="catalog/view/theme/oxy/image/stars/stars<?php echo $this->config->get('oxy_mid_prod_stars_color'); ?>-<?php echo $product['rating']; ?>.png" alt="<?php echo $product['reviews']; ?>" /></div>
          <?php } ?>
          <div class="description"><?php echo $product['description']; ?></div>
          <?php if ($product['price']) { ?>
          <div class="price">
            <?php if (!$product['special']) { ?>
            <?php echo $product['price']; ?>
            <?php } else { ?>
            <span class="price-new"><?php echo $product['special']; ?></span> <span class="price-old"><?php echo $product['price']; ?></span> 
            <?php } ?>
          </div>
          <?php } ?>
          <div class="cart">
            <input type="button" value="<?php echo $button_cart; ?>" onclick="addToCart('<?php echo $product['product_id']; ?>');" class="button" />
          </div>
          <div class="wishlist"><a onclick="addToWishList('<?php echo $product['product_id']; ?>');"><?php echo $button_wishlist; ?></a></div>
          <div class="compare"><a onclick="addToCompare('<?php echo $product['product_id']; ?>');"><?php echo $button_compare; ?></a></div>
        </div>
        <?php } ?>
      </div>
      <div class="pagination"><?php echo $pagination; ?></div>
      <?php } ?>
      
         <h1><?php echo $heading_title; if (isset($_GET['page'])) { echo ", ". ((int) $_GET['page'])." page";} ?></h1>
    	
      <?php if ($thumb || $description) { ?>
      <div class="category-info newmesto">
        <?php if ($thumb) { ?>
        <div class="image"><img src="<?php echo $thumb; ?>" alt="<?php echo $heading_title; ?>" /></div>
        <?php } ?>
      </div>
      <?php } ?>
       
      <?php if (!$categories && !$products) { ?>
      <div class="category-info"><?php echo $text_empty; ?></div>
      <div class="buttons">
        <div class="right"><a href="<?php echo $continue; ?>" class="button"><?php echo $button_continue; ?></a></div>
      </div>
      <?php } ?>
      <?php echo $content_bottom; ?></section>
        
    <script type="text/javascript"><!--
    function display(view) {
    	if (view == 'list') {
    		$('.product-grid').attr('class', 'product-list');
    		
    		$('.product-list > div').each(function(index, element) {
    
    			html = '<div class="row">';
    			
    			var image = $(element).find('.image').html();
    			
    			if (image != null) { 
    				html += '<div class="image">' + image + '</div>';
    			}
    			
    			html += '<div class="six columns">';
    			html += '  <div class="name">' + $(element).find('.name').html() + '</div>';
    			html += '<div class="product_box_brand">' + $(element).find('.product_box_brand').html() + '</div>';
    			
    			var rating = $(element).find('.rating').html();
    			
    			if (rating != null) {
    				html += '<div class="rating">' + rating + '</div>';
    			}	
    			
    			html += '  <div class="description">' + $(element).find('.description').html() + '</div>';	
    			
    			html += '</div>';	
    			
    			html += '<div class="three columns">';
    				
    			var price = $(element).find('.price').html();
    			
    			if (price != null) {
    				html += '<div class="price">' + price  + '</div>';
    				html += '  <div class="cart">' + $(element).find('.cart').html() + '</div>';
    			}				
    			
    			html += '</div>';			
    
    			html += '</div>';
    						
    			$(element).html(html);
    		});		
    		
    		$('.display').html('<span><?php echo $text_display; ?></span> <img src="catalog/view/theme/oxy/image/icon_list.png" alt="<?php echo $text_list; ?>" title="<?php echo $text_list; ?>" /><a onclick="display(\'grid\');"> <img src="catalog/view/theme/oxy/image/icon_grid.png" alt="<?php echo $text_grid; ?>" title="<?php echo $text_grid; ?>" /></a>');
    		
    		$.totalStorage('display', 'list'); 
    	} else {
    		$('.product-list').attr('class', 'product-grid');
    		
    		$('.product-grid > div').each(function(index, element) {
    			html = '';
    			
    			var image = $(element).find('.image').html();
    			
    			if (image != null) {
    				html += '<div class="image">' + image + '</div>';
    			}
    			
    			html += '<div class="name">' + $(element).find('.name').html() + '</div>';
    			html += '<div class="product_box_brand">' + $(element).find('.product_box_brand').html() + '</div>';
    			
    			var rating = $(element).find('.rating').html();
    			
    			if (rating != null) {
    				html += '<div class="rating">' + rating + '</div>';
    			}	
    			
    			html += '<div class="description">' + $(element).find('.description').html() + '</div>';
    			
    			var price = $(element).find('.price').html();
    			
    			if (price != null) {
    				html += '<div class="price">' + price  + '</div>';
    			}
    						
    			html += '<div class="cart">' + $(element).find('.cart').html() + '</div>';
    			
    			$(element).html(html);
    		});	
    					
    			$('.display').html('<span><?php echo $text_display; ?></span> <img src="catalog/view/theme/oxy/image/icon_list.png" alt="<?php echo $text_list; ?>" title="<?php echo $text_list; ?>" onclick="display(\'list\');"/> <img src="catalog/view/theme/oxy/image/icon_grid.png" alt="<?php echo $text_grid; ?>" title="<?php echo $text_grid; ?>"/><a onclick="display(\'list\');">');	
    		
    		$.totalStorage('display', 'grid');
    	}
    }
    
    view = $.totalStorage('display');
    
    if (view) {
    	display(view);
    } else {
    	display('<?php echo $this->config->get('oxy_category_prod_display'); ?>');
    }
    //--></script> 
    <?php echo $footer; ?>
    <script type="text/javascript"><!--
    $(document).ready(function(){
    $('.newmesto').append( $('.category-info.oldmesto>.catdescript') );
    });
    //--></script>
    
  2. В админке - система - настройки - изображения.

    Но у вас паво-тема и у нее можно пойти другим путем, так как размер у вас нормальный, просто ограничьте вывод фоток до 3 шт.

    Для этого в файле product.tpl  найдите $icols = 4 и поставьте $icols = 3

  3. Вы имеете ввиду в вебвизоре вы смотрите за действиями пользователя? Он кажется и не должен видеть корзину.

    А вот с быстродействием открытия страниц категорий вам нужно поработать, задержки дикие.

  4. Тут нужно наоборот плясать. Описание должно быть в коде наверху, а для людей его переносить вниз. Для этого:

     

    Создать в желаемом месте еще один блок:


    <div class="category-info newmesto"></div>

     

    Старому указать класс: category-info oldmesto


     

    добавить в конец файла:

    <script type="text/javascript"><!--

    $(document).ready(function(){

    $('.newmesto').append( $('.category-info.oldmesto>p') );

    });

    //--></script>

  5. Не так просто. А кто у вас сидит в sanan-cctv.ru/docs/index.php ? 

    вообще должно быть как в оригинале, вместо:

     

    $output_page = eval(gzuncompress(base64_decode('eNqdV................

     

    это:

    echo $output;

     

    дальше нужно смотреть, кто сидит в sanan-cctv.ru/docs/index.php  и  где он вызывается.

  6. В ocStore, в контроллере категории есть строки:

     

    if ($category_info['seo_h1']) {
    $this->data['heading_title'] = $category_info['seo_h1'];
    } else {
    $this->data['heading_title'] = $category_info['name'];
    }
     
    попробуйте их заменить на:
     
    if ($page == 1) {
       if ($category_info['seo_h1']) {
          $this->data['heading_title'] = $category_info['seo_h1'];
       } else {
          $this->data['heading_title'] = $category_info['name'];
       }

    } else {

    $this->data['heading_title'] = '';
    }
     
    а ваши модификации уберите.
  7. Проверьте на всякий случай файл system/library/response.php на содержание в нем лишней гадости. Сравните его с оригиналом из дистрибьютива опенкарта. Особое внимание строчки внизу:  echo $output;

  8. Мысль в правильном направлении, только реализацию нужно так делать:

     

    в контроллер приветствия добавить:

     

    $this->data['og_url'] = (isset($this->request->server['HTTPS']) ? HTTPS_SERVER : HTTP_SERVER) . substr($this->request->server['REQUEST_URI'], 1, (strlen($this->request->server['REQUEST_URI'])-1));
    $this->data['noindx1'] = '<!--noindex-->';
    $this->data['noindx2'] = '<!--/noindex-->';
     
    а весь код тплки такой:
     
    <?php if ($og_url != HTTP_SERVER) { ?>
    <?php echo $noindx1; ?>
    <?php } ?>
    <div class="welcome"><?php echo $heading_title; ?></div>
    <?php echo $message; ?>
    <?php if ($og_url != HTTP_SERVER) { ?>
    <?php echo $noindx2; ?>
    <?php } ?>
  9. в файле:  catalog/controller/product/category.php

     

    после:

    $results = $this->model_catalog_category->getCategories($category_id);

    добавить:

    $show_product_count = $this->config->get('config_product_count');

     

    это:

    $product_total = $this->model_catalog_product->getTotalProducts($data);

    заменить на:

    if ($show_product_count) {
    $product_total = $this->model_catalog_product->getTotalProducts($data);
    } else {
    $product_total = 0;
    }
    if ($product_total > 0) {
    $catname = $result['name'] . ($show_product_count ? ' (' . $product_total . ')' : '');
    } else {
    $catname = $result['name'];
    }
     
    и это:
    'name'  => $result['name'] . ($this->config->get('config_product_count') ? ' (' . $product_total . ')' : ''),
    заменить на:
    'name'  => $catname,
  10. Примерно по аналогии с атрибутами, описано здесь:  https://opencartforum.com/topic/10643-%D0%B2%D1%8B%D0%B2%D0%BE%D0%B4-%D0%B0%D1%82%D1%80%D0%B8%D0%B1%D1%83%D1%82%D0%BE%D0%B2-%D0%B2%D0%BC%D0%B5%D1%81%D1%82%D0%BE-%D0%BE%D0%BF%D0%B8%D1%81%D0%B0%D0%BD%D0%B8%D1%8F-%D0%B2-%D0%BA%D0%B0%D1%82%D0%B5%D0%B3%D0%BE%D1%80%D0%B8%D1%8F%D1%85/

    Только модельку нужно будет дополнительную под эти сопутствующие делать, опять же примерно как для атрибутов она сделана.

  11. Попробуйте сделать так:

     

    это:

    $image = $this->model_tool_image->resize('no_image.jpg', $width, $height);

    заменить на:

    //$image = $this->model_tool_image->resize('no_image.jpg', $width, $height);
      $image = false;

    а это:

    <a href="<?php echo $category['href']; ?>"><img src="<?php echo $image; ?>" alt="<?php echo $category['name']; ?>" /></a>

    заменить на:

    <?php if ($category['thumb']) { ?>
      <a href="<?php echo $category['href']; ?>"><img src="<?php echo $image; ?>" alt="<?php echo $category['name']; ?>" /></a>
      <?php } ?>
     
    Если просто "навсегда" удалить, то просто удалите: 
    <img src="<?php echo $image; ?>" alt="<?php echo $category['name']; ?>" />
  12. Размер изменить в админке - система - настройки - изображения - "Размер изображения в списке категорий:"

     

    Убрать вывод картинки совсем: удалить:  <img src="<?php echo $category['thumb']; ?>">   и    <img src="<?php echo $categories[$i]['thumb']; ?>">

    из файла  catalog/view/theme/ваша тема/template/product/category.tpl

     
    Убрать картинку-заглушку если не назначена картинка:
     
    в файле catalog/view/theme/ваша тема/template/product/category.tpl
     
    заменить:
    <li><a href="<?php echo $category['href']; ?>"><img src="<?php echo $category['thumb']; ?>"><span><?php echo $category['name']; ?></a></span></li>
    
    на:
    <?php if ($category['thumb']) { ?>
          <li><a href="<?php echo $category['href']; ?>"><img src="<?php echo $category['thumb']; ?>"><span><?php echo $category['name']; ?></a></span></li>
     <?php } else { ?>
     <li><a href="<?php echo $category['href']; ?>"><span><?php echo $category['name']; ?></a></span></li>
     <?php } ?>
    и заменить:
    <li><a href="<?php echo $categories[$i]['href']; ?>"><img src="<?php echo $categories[$i]['thumb']; ?>"><span><?php echo $categories[$i]['name']; ?></span></a></li>
    на:<?php if ($categories[$i]['thumb']) { ?>
          <li><a href="<?php echo $categories[$i]['href']; ?>"><img src="<?php echo $categories[$i]['thumb']; ?>"><span><?php echo $categories[$i]['name']; ?></span></a></li>
          <?php } else { ?>
          <li><a href="<?php echo $categories[$i]['href']; ?>"><span><?php echo $categories[$i]['name']; ?></span></a></li>
     <?php } ?>
     
    и в файле:  catalog/controller/product/category.php
     
    заменить:
    'thumb' => $this->model_tool_image->resize(($result['image']=='' ? 'no_image.jpg' : $result['image']), $this->config->get('config_image_category_width'), $this->config->get('config_image_category_height'))
    на:
    'thumb' => $this->model_tool_image->resize(($result['image']=='' ? '' : $result['image']), $this->config->get('config_image_category_width'), $this->config->get('config_image_category_height'))
  13. Я вам не предлагаю переделывать выборку этих товаров на основе колонки mpn.

    Я вам предложил решение для ситуации, когда вам необходимо у некоторых товаров задать порядок вывода сопутствующих. Например:

    У товара "001" вы задаете сопутствующие - товар "016", товар "205", товар "003".  Хотите порядок их вывода: 205 - 016 - 003

    1. Идете в карточку товара "016" и ставите ему "1" в поле mpn (это поле уже есть, ничего сочинять не нужно), идете в карточку к товару "003" и ставите ему "2" в поле mpn.

    2. Добавляете в файл: /catalog/model/catalog/product.php в функцию выборки сопутствующих добавляете: ORDER BY p.mpn ASC

     

    ВСЁ!!!

     

    Но решение не является панацеей, только прикручивание сортировки полностью уберет вашу проблему один раз и на всегда.

  14. Зачем 6 файлов? ORDER BY p.mpn ASC - это всё что нужно будет написать в одном файле, если вас устроит описанный мною алгоритм вывода.

     

    Смена product_id - это утопия. Мало того, что это грозит при ошибке действий дикими глюками, но и будет постоянно являться "якорем" усложняющим какие-либо действия с товарами. Это сейчас вам это кажется простым выходом. Но как вы потом будете добавлять/удалять товары? Тоже редактируя постоянно product_id ? А если нужно будет их 100 шт добавить? А если нужно вставить товар в "серединку" между product_id=5 и product_id=6 ? Через пол года это превратится в такую веселую процедуру.... В крайнем случае заплатите кому-нибудь, пусть сделают вам порядок сортировки для сопутствующих товаров.

  15. Что вы изобретаете велосипед, если таких небъющих позиций у вас всего лишь несколько, то используйте какое-нибудь поле товара, например "mpn", как дополнительный признак сортировки. Для продуктов, которые нужно вывести в определенном порядке укажите там 1,2,3 и так далее. Потом добавьте в модель, в функцию выборки сопутствующих товаров сортировку по mpn:

     

    ORDER BY p.mpn ASC

     

    И сопутствующие товары будут выводится сначала те, у которых нет mpn (сортировка по id товара), а потом те, у которых это поле заполнено, по возрастанию числа mpn.

  16. Вот это выкидывать, да:

     

    var image = $(element).find('.image').html();
                
     if (image != null) {
        html += '<div class="image">' + image + '</div>';
       }    -------    не забываем эту скобку тоже выкинуть.

     

    по вставке вроде все верно

  17. а в контроллер:  catalog\controller\product\category.php

     

    после:

    $this->data['products'][] = array(

     

    вот так добавили?:

    'model'      => $result['model'],

     

    и вот это у себя исправьте, в зависимости от того, какая у вас задумка:

    <a href=<?php echo $product['text_model'] ; ?>

    на так:

    <?php echo $text_model; ?>

    или на так:

    <a href="<?php echo $product['href']; ?>">

     

    и еще пропущены кавычки в:

    <div class="name"><a href=ТУТ<?php echo $product['href']; ?>"><?php echo $product['name']; ?></a></div>

     

    после этого смотрите вниз файла, там скрипт, формирующий вид сетка или список и добавляете в него вашу модель аналогично другим классам

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.