Картинки в подкатегориях 2.0.3.1

Тема в разделе "Общие вопросы", создана пользователем Александр Бизикин, 21 сен 2015.

  1. RoS

    RoS Специалист

    Сообщения:
    227
    Симпатии:
    220
    Выполните:
    После установки перейти: "Модули -> Расширения -> Стандартная тема"
    Назначить размер для "Размер изображения в списке категорий"
     
    Ecsiron и Zhezkazganetcs нравится это.
  2. pokryshkin

    pokryshkin Новичок

    Сообщения:
    8
    Симпатии:
    0
    было бы неплохо иметь возможность включать\выключать эту фичу для разных категорий
     
  3. flystar

    flystar Новичок

    Сообщения:
    6
    Симпатии:
    0
    Всё сделал как написано, всё равно выдаёт кучу ошибок и кодировка слетает
    ос2,2,0
    помогите плииз
     
  4. Ален

    Ален Эксперт

    Сообщения:
    2.056
    Симпатии:
    640
    что именно? Вариантов решений для кадой версии ведь написаны.
     
  5. flystar

    flystar Новичок

    Сообщения:
    6
    Симпатии:
    0
    http://shok-market.ru/index.php?route=product/category&path=33
    версия ос 2.2.0
    написал как вначале тут написано. Интересно то, что на одном хостинге всё работает (этот же сайт, просто хостинг другой), а на новой не работает
     
  6. flystar

    flystar Новичок

    Сообщения:
    6
    Симпатии:
    0
  7. Ален

    Ален Эксперт

    Сообщения:
    2.056
    Симпатии:
    640
    не обновили кеш модификатора
    неправильно внесли изменения
    в общем смотрите внимательно..
    от хостинга не должно зависеть..
     
  8. flystar

    flystar Новичок

    Сообщения:
    6
    Симпатии:
    0
    Кэш модификатора обновлял
    внесение изменений проверял неоднократно
    смотрю ОООочень внимательно
    Надеюсь на вашу квалифицированную помощь
     
  9. Bkmz

    Bkmz Продвинутый пользователь

    Сообщения:
    440
    Симпатии:
    106
    по ссылкам на сайт?))

    покажите ваши изменения ;)

    не верю!
     
  10. flystar

    flystar Новичок

    Сообщения:
    6
    Симпатии:
    0
    Привожу код обоих редактируемых файлов.
    И прошу оставить сарказм при себе - просто помогите

    <?php

    echo $header; ?>
    <?php require( ThemeControlHelper::getLayoutPath( 'common/mass-header.tpl' ) ); ?>
    <div class="main-columns container space-20">
    <div class="row">
    <?php if( $SPAN[0] ): ?>
    <aside id="sidebar-left" class="col-md-<?php echo $SPAN[0];?>">
    <?php echo $column_left; ?>
    </aside>
    <?php endif; ?>

    <div id="sidebar-main" class="col-md-<?php echo $SPAN[1];?>">
    <div id="content">

    <div class="clearfix"></div>
    <?php echo $content_top; ?>
    <?php if ($thumb || $description) { ?>
    <div class="category-info clearfix hidden-xs hidden-sm">
    <?php if ($thumb) { ?>
    <div class="image"><img src="<?php echo $thumb; ?>" alt="<?php echo $heading_title; ?>" class="img-responsive" /></div>
    <?php } ?>
    <?php if ($description) { ?>
    <div class="category-description wrapper">
    <?php echo $description; ?>
    </div>
    <?php } ?>
    </div>
    <?php } ?>

    <?php if( false && $categories = $helper->getCategoriesById() ){ ?>
    <div class="subcategories panel panel-default">
    <div class="panel-heading">
    <h4 class="panel-title"><?php echo $text_refine; ?> </h4>
    </div>
    <div class="panel-body">
    <?php $col=6; $i=0; $ncol = floor(12/$col); foreach( $categories as $category ){ $i++; ?>
    <?php if($i%$col==1) { ?>
    <div class="row">
    <?php } ?>
    <div class="col-lg-<?php echo $ncol; ?> col-md-3 col-sm-4"><div class="category-item">
    <?php if( $category['thumb'] ){ ?>
    <div class="image">
    <a href="<?php echo $category['href']; ?>">
    <img src="<?php echo $category['thumb']; ?>" alt="<?php echo $category['name']; ?>" class="img-responsive" />
    </a>
    </div>
    <?php } ?>
    <a href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a>
    </div></div>
    <?php if( $i%$col==0 || $i==count($categories) ){ ?>
    </div>
    <?php } ?>
    <?php } ?>
    </div>
    </div>
    <?php } else if ($categories) { ?>
    <div class="refine-search panel panel-v3 space-20">
    <div class="panel-heading">
    <h4 class="panel-title"><?php echo $text_refine; ?></h4>
    </div>
    <div class="panel-body">
    <div class="row">
    <?php foreach ($categories as $category) { ?>
    <div class="col-sm-3">
    <a class="imgdecor" href="<?php echo $category['href']; ?>"><img src="<?php echo $category['thumb']; ?>" alt="<?php echo $category['name']; ?>" title="<?php echo $category['name']; ?>" style="margin-top:20px; width: 190px; height: 170px;" class="img-responsive" /></a>
    <a class="hrefdecor" href="<?php echo $category['href']; ?>"><?php echo $category['name']; ?></a>
    </div><?php } ?>
    </div>
    </div>
    </div> <!-- end refine-search -->
    <?php } ?>

    <?php if ($products) { ?>

    <?php require( ThemeControlHelper::getLayoutPath( 'common/product_collection.tpl' ) ); ?>
    <?php } ?>

    <?php if (!$categories && !$products) { ?>
    <div class="content"><div class="wrapper"><?php echo $text_empty; ?></div></div>
    <div class="buttons">
    <div class="right"><a href="<?php echo $continue; ?>" class="button btn btn-default"><?php echo $button_continue; ?></a></div>
    </div>
    <?php } ?>


    <?php echo $content_bottom; ?></div>
    </div>
    <?php if( $SPAN[2] ): ?>
    <aside id="sidebar-right">
    <?php echo $column_right; ?>
    </aside>
    <?php endif; ?>
    </div><!-- end row -->
    </div>
    <?php echo $footer; ?>
     
  11. flystar

    flystar Новичок

    Сообщения:
    6
    Симпатии:
    0
    Пришлось урезать часть файла
    <?php
    class ControllerProductCategory extends Controller {
    public function index() {

    // pavo version 2.2
    $this->load->language('module/themecontrol');
    $data['objlang'] = $this->registry->get('language');
    $data['ourl'] = $this->registry->get('url');

    $config = $this->registry->get("config");
    $data['sconfig'] = $config;
    $data['themename'] = $config->get("theme_default_directory");
    // end edit

    $this->load->language('product/category');

    $this->load->model('catalog/category');

    $this->load->model('catalog/product');

    $this->load->model('tool/image');

    if (isset($this->request->get['filter'])) {
    $filter = $this->request->get['filter'];
    } else {
    $filter = '';
    }

    if (isset($this->request->get['sort'])) {
    $sort = $this->request->get['sort'];
    } else {
    $sort = 'p.sort_order';
    }

    if (isset($this->request->get['order'])) {
    $order = $this->request->get['order'];
    } else {
    $order = 'ASC';
    }

    if (isset($this->request->get['page'])) {
    $page = $this->request->get['page'];
    } else {
    $page = 1;
    }

    if (isset($this->request->get['limit'])) {
    $limit = (int)$this->request->get['limit'];
    } else {
    $limit = $this->config->get($this->config->get('config_theme') . '_product_limit');
    }

    $data['breadcrumbs'] = array();

    $data['breadcrumbs'][] = array(
    'text' => $this->language->get('text_home'),
    'href' => $this->url->link('common/home')
    );

    if (isset($this->request->get['path'])) {
    $url = '';

    if (isset($this->request->get['sort'])) {
    $url .= '&sort=' . $this->request->get['sort'];
    }

    if (isset($this->request->get['order'])) {
    $url .= '&order=' . $this->request->get['order'];
    }

    if (isset($this->request->get['limit'])) {
    $url .= '&limit=' . $this->request->get['limit'];
    }

    $path = '';

    $parts = explode('_', (string)$this->request->get['path']);

    $category_id = (int)array_pop($parts);

    foreach ($parts as $path_id) {
    if (!$path) {
    $path = (int)$path_id;
    } else {
    $path .= '_' . (int)$path_id;
    }

    $category_info = $this->model_catalog_category->getCategory($path_id);

    if ($category_info) {
    $data['breadcrumbs'][] = array(
    'text' => $category_info['name'],
    'href' => $this->url->link('product/category', 'path=' . $path . $url)
    );
    }
    }
    } else {
    $category_id = 0;
    }

    $category_info = $this->model_catalog_category->getCategory($category_id);

    if ($category_info) {
    $this->document->setTitle($category_info['meta_title']);
    $this->document->setDescription($category_info['meta_description']);
    $this->document->setKeywords($category_info['meta_keyword']);

    $data['heading_title'] = $category_info['name'];

    $data['text_refine'] = $this->language->get('text_refine');
    $data['text_empty'] = $this->language->get('text_empty');
    $data['text_quantity'] = $this->language->get('text_quantity');
    $data['text_manufacturer'] = $this->language->get('text_manufacturer');
    $data['text_model'] = $this->language->get('text_model');
    $data['text_price'] = $this->language->get('text_price');
    $data['text_tax'] = $this->language->get('text_tax');
    $data['text_points'] = $this->language->get('text_points');
    $data['text_compare'] = sprintf($this->language->get('text_compare'), (isset($this->session->data['compare']) ? count($this->session->data['compare']) : 0));
    $data['text_sort'] = $this->language->get('text_sort');
    $data['text_limit'] = $this->language->get('text_limit');

    $data['button_cart'] = $this->language->get('button_cart');
    $data['button_wishlist'] = $this->language->get('button_wishlist');
    $data['button_compare'] = $this->language->get('button_compare');
    $data['button_continue'] = $this->language->get('button_continue');
    $data['button_list'] = $this->language->get('button_list');
    $data['button_grid'] = $this->language->get('button_grid');

    // Set the last category breadcrumb
    $data['breadcrumbs'][] = array(
    'text' => $category_info['name'],
    'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'])
    );

    if ($category_info['image']) {
    $data['thumb'] = $this->model_tool_image->resize($category_info['image'], $this->config->get($this->config->get('config_theme') . '_image_category_width'), $this->config->get($this->config->get('config_theme') . '_image_category_height'));
    } else {
    $data['thumb'] = '';
    }

    $data['description'] = html_entity_decode($category_info['description'], ENT_QUOTES, 'UTF-8');
    $data['compare'] = $this->url->link('product/compare');

    $url = '';

    if (isset($this->request->get['filter'])) {
    $url .= '&filter=' . $this->request->get['filter'];
    }

    if (isset($this->request->get['sort'])) {
    $url .= '&sort=' . $this->request->get['sort'];
    }

    if (isset($this->request->get['order'])) {
    $url .= '&order=' . $this->request->get['order'];
    }

    if (isset($this->request->get['limit'])) {
    $url .= '&limit=' . $this->request->get['limit'];
    }

    $data['categories'] = array();

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

    foreach ($results as $result) {
    $filter_data = array(
    'filter_category_id' => $result['category_id'],
    'filter_sub_category' => true
    );


    if ($result['image']) {
    $image = $this->model_tool_image->resize($result['image'], 150, 150);
    } else {
    $image = $this->model_tool_image->resize('placeholder.png', 150, 150);
    }


    $data['categories'][] = array(
    'name' => $result['name'] . ($this->config->get('config_product_count') ? ' (' . $this->model_catalog_product->getTotalProducts($filter_data) . ')' : ''),
    'thumb' => $image,
    'href' => $this->url->link('product/category', 'path=' . $this->request->get['path'] . '_' . $result['category_id'] . $url)
    );
    }

    $data['products'] = array();

    $filter_data = array(
    'filter_category_id' => $category_id,
    'filter_filter' => $filter,
    'sort' => $sort,
    'order' => $order,
    'start' => ($page - 1) * $limit,
    'limit' => $limit
    );

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

    $results = $this->model_catalog_product->getProducts($filter_data);
     
  12. Ален

    Ален Эксперт

    Сообщения:
    2.056
    Симпатии:
    640
    Может что то у вас в теме. Все же решение для движка по умолчанию.
    Как минимум можете всегда заменить настройки к контроллере, на обычные значения типа 300, 300
    PHP:
    if ($category_info['image']) {
    $data['thumb'] = $this->model_tool_image->resize($category_info['image'], 300300);
    } else {
    $data['thumb'] = '';
    }
    Ну и возможно что то с настройками темы, например нет по какой либо причине данных тут
    Код:
    $this->config->get($this->config->get('config_theme')
     
    Bkmz нравится это.
  13. Bkmz

    Bkmz Продвинутый пользователь

    Сообщения:
    440
    Симпатии:
    106
    // pavo version 2.2 -исходя из этого комментария в коде - смотреть только на месте.
    эти шаблоны построены на одних только чудесах:)
     
  14. Zhezkazganetcs

    Zhezkazganetcs Продвинутый пользователь

    Сообщения:
    819
    Симпатии:
    108
    а можно ли дописать функционал?
    т.е. если в категории 3 подкатегории то все хорошо
    а если всего 2, то остается место на третью
    дак вот было бы неплохо сделать так, чтобы 2 подкатегории растягивались и становились в длину как 3 подкатегории
     
  15. Alvik

    Alvik Пользователь

    Сообщения:
    38
    Симпатии:
    9
    решение: или уменьшить шрифт , чтоб влезал на одну строку или уменьшить количество знаков,размещаемых на этой строке до уровня влезания на эту строку. Извиняюсь, может быть сумбурно,но других решений не существует,если текста много-ему куда нужно " слезать"
     
  16. Ergil

    Ergil Новичок

    Сообщения:
    5
    Симпатии:
    2
    Как минимум два нормальных решения - это min-height или clearfix... Я добавил min-height.
     
  17. Ergil

    Ergil Новичок

    Сообщения:
    5
    Симпатии:
    2
    Ну так надо всего-то выбирать класс в зависимости от кол-ва подкатегорий:
    <?php if ($кол-во_подкатеторий > 2) { ?>
    <?php $class = 'col-sm-4'; ?>
    <?php } else { ?>
    <?php $class = 'col-sm-6'; ?>
    <?php } ?>
     
  18. pit

    pit Новичок

    Сообщения:
    1
    Симпатии:
    0
    Народ, подскажите плиз что надо добавить в stylesheet.css чтобы текст был посередине картинки категории? или надо править bootstrap.min.css??? сайт plastic-mo.ru
     
  19. Ален

    Ален Эксперт

    Сообщения:
    2.056
    Симпатии:
    640
    Зачем?? Обычных стилей хватает. Поучите css и мир станет проще. Или добавьте в разметку text-center, например чтобы класс блока стал таким col-sm-3 text-center
     
  20. Den4ik

    Den4ik Новичок

    Сообщения:
    4
    Симпатии:
    1
    Notice: Undefined variable: result in /home/serpuho8/public_html/test-opencart/system/storage/modification/catalog/controller/product/category.php on line 171
    OC 2.2 шаблон не стандартный
    Буду благодарен за подсказку. Код во вложении
     

    Вложения: