Как сделать вывод новостей блога списком


 Поделиться

Рекомендуемые сообщения

Как сделать вывод новостей блога списком по умолчанию, а товары сеткой? Пробовал менять в common.js - комментил строки вывода, но тогда меняется отображение не только новостей, но и товаров. Opencart 2.1.0.2, шаблон Universal.

Ссылка на комментарий
Поделиться на других сайтах

common.js работает с классом product-layout product-list product-grid

Вариант №1-сработает наверняка, просто убрать классы в разметке категорий блога, оставить только класс разметки бутстрап, убрать кнопки переключения и останется только список.Возможно, придется дописать кое-какие стили.

Вариант №2 (гипотетический)

Надо смотреть, вдруг получится

<div class="product-layout product-list col-xs-12">

в шаблоне блога поменять этот класс на blog-layout и т.д.

и попробовать сделать аналогичный блок в common.js, только надо будет убрать работу с localStorage

Тогда, возможно, получится сохранить переключение вида: сетка-список

 

 

Ссылка на комментарий
Поделиться на других сайтах

1 час назад, jaffagold сказал:

Вариант №1-сработает наверняка, просто убрать классы в разметке категорий блога, оставить только класс разметки бутстрап, убрать кнопки переключения и останется только список.

А можно подробней? Я просто не очень разбираюсь. Как убрать кнопки я знаю, а вот про разметку нужна помощь

Ссылка на комментарий
Поделиться на других сайтах

Тогда, крепко подумайте, так ли вам это надо.

Если надо, то поехали...

Первым делом делаете бэкап базы данных и файлов сайта.

Смотрим файлы

catalog\view\theme\universal\template\blog\category.tpl

Выделенный код отвечает за вывод кнопок

Скрытый текст

     <?php if ($articles) { ?>
      <div class="row">
        <div class="col-sm-3">
          <div class="btn-group">
            <button type="button" id="list-view" class="btn btn-default" data-toggle="tooltip" title="<?php echo $button_list; ?>"><i class="fa fa-th-list"></i></button>
            <button type="button" id="grid-view" class="btn btn-default" data-toggle="tooltip" title="<?php echo $button_grid; ?>"><i class="fa fa-th"></i></button>
          </div>
        </div>

Если его убрать,то и кнопок не будет

catalog\view\theme\universal\template\blog\latest.tpl

Скрытый текст

     <div class="row">
        <div class="col-sm-3">
          <div class="btn-group">
            <button type="button" id="list-view" class="btn btn-default" data-toggle="tooltip" title="<?php echo $text_list; ?>"><i class="fa fa-th-list"></i></button>
            <button type="button" id="grid-view" class="btn btn-default" data-toggle="tooltip" title="<?php echo $text_grid; ?>"><i class="fa fa-th"></i></button>
          </div>
        </div>

Исчезают кнопки переключения, вывод будет списком, а в товаре переключается как надо

 

Скрытый текст

58f9d7341cb6c_.thumb.jpg.da15651c3b23185a19fb8551605b32c2.jpg

 

Ссылка на комментарий
Поделиться на других сайтах

26 минут назад, jaffagold сказал:

Тогда, крепко подумайте, так ли вам это надо.

Если надо, то поехали...

Первым делом делаете бэкап базы данных и файлов сайта.

Смотрим файлы

catalog\view\theme\universal\template\blog\category.tpl

Выделенный код отвечает за вывод кнопок

  Показать содержимое

     <?php if ($articles) { ?>
      <div class="row">
        <div class="col-sm-3">
          <div class="btn-group">
            <button type="button" id="list-view" class="btn btn-default" data-toggle="tooltip" title="<?php echo $button_list; ?>"><i class="fa fa-th-list"></i></button>
            <button type="button" id="grid-view" class="btn btn-default" data-toggle="tooltip" title="<?php echo $button_grid; ?>"><i class="fa fa-th"></i></button>
          </div>
        </div>

Если его убрать,то и кнопок не будет

catalog\view\theme\universal\template\blog\latest.tpl

  Скрыть содержимое

     <div class="row">
        <div class="col-sm-3">
          <div class="btn-group">
            <button type="button" id="list-view" class="btn btn-default" data-toggle="tooltip" title="<?php echo $text_list; ?>"><i class="fa fa-th-list"></i></button>
            <button type="button" id="grid-view" class="btn btn-default" data-toggle="tooltip" title="<?php echo $text_grid; ?>"><i class="fa fa-th"></i></button>
          </div>
        </div>

Исчезают кнопки переключения, вывод будет списком, а в товаре переключается как надо

 

  Показать содержимое

58f9d7341cb6c_.thumb.jpg.da15651c3b23185a19fb8551605b32c2.jpg

 

Настройки передаются из common.js с помощью id="content", то есть можно для блога создать копию кода в common.js а на странице блога задать другой id, например, "content2".

Ссылка на комментарий
Поделиться на других сайтах

56 минут назад, jaffagold сказал:

Тогда, крепко подумайте, так ли вам это надо.

Если надо, то поехали...

Первым делом делаете бэкап базы данных и файлов сайта.

Смотрим файлы

catalog\view\theme\universal\template\blog\category.tpl

Выделенный код отвечает за вывод кнопок

  Скрыть содержимое

     <?php if ($articles) { ?>
      <div class="row">
        <div class="col-sm-3">
          <div class="btn-group">
            <button type="button" id="list-view" class="btn btn-default" data-toggle="tooltip" title="<?php echo $button_list; ?>"><i class="fa fa-th-list"></i></button>
            <button type="button" id="grid-view" class="btn btn-default" data-toggle="tooltip" title="<?php echo $button_grid; ?>"><i class="fa fa-th"></i></button>
          </div>
        </div>

Если его убрать,то и кнопок не будет

catalog\view\theme\universal\template\blog\latest.tpl

  Скрыть содержимое

     <div class="row">
        <div class="col-sm-3">
          <div class="btn-group">
            <button type="button" id="list-view" class="btn btn-default" data-toggle="tooltip" title="<?php echo $text_list; ?>"><i class="fa fa-th-list"></i></button>
            <button type="button" id="grid-view" class="btn btn-default" data-toggle="tooltip" title="<?php echo $text_grid; ?>"><i class="fa fa-th"></i></button>
          </div>
        </div>

Исчезают кнопки переключения, вывод будет списком, а в товаре переключается как надо

 

  Показать содержимое

58f9d7341cb6c_.thumb.jpg.da15651c3b23185a19fb8551605b32c2.jpg

 

Круть! Спасибо тебе огромное, все получилось!

Ссылка на комментарий
Поделиться на других сайтах

36 минут назад, jaffagold сказал:

так я про это писал, но там не все последствия могу просчитать, а ковырять не охота

Скрытый текст

из этого:


	// Product Grid
	$('#grid-view').click(function() {
		// What a shame bootstrap does not take into account dynamically loaded columns
		cols = $('#column-right, #column-left').length;

		if (cols == 2) {
			$('#content .product-list').attr('class', 'product-layout product-grid col-lg-6 col-md-6 col-sm-12 col-xs-12');
		} else if (cols == 1) {
			$('#content .product-list').attr('class', 'product-layout product-grid col-lg-4 col-md-4 col-sm-6 col-xs-12');
		} else {
			$('#content .product-list').attr('class', 'product-layout product-grid col-lg-3 col-md-3 col-sm-6 col-xs-12');
		}

		 localStorage.setItem('display', 'grid');
	});

	if (localStorage.getItem('display') == 'list') {
		$('#list-view').trigger('click');
	} else {
		$('#grid-view').trigger('click');
	}

Сделать это (ниже вставить):
 


// Product Grid
	$('#grid-view').click(function() {
		// What a shame bootstrap does not take into account dynamically loaded columns
		cols = $('#column-right, #column-left').length;

		if (cols == 2) {
			$('#content2 .product-list').attr('class', 'product-layout product-grid col-lg-4 col-md-6 col-sm-12 col-xs-12');
		} else if (cols == 1) {
			$('#content2 .product-list').attr('class', 'product-layout product-grid col-lg-3 col-md-4 col-sm-6 col-xs-12');
		} else {
			$('#content2 .product-list').attr('class', 'product-layout product-grid col-lg-2 col-md-3 col-sm-6 col-xs-12');
		}

		 localStorage.setItem('display', 'grid');
	});

	if (localStorage.getItem('display') == 'grid') {
		$('#grid-view').trigger('click');
	} else {
		$('#list-view').trigger('click');
    }

в файле шаблона блога вставить content2 вместо content. И кнопки по желанию менять местами, либо удалить.

 

Ссылка на комментарий
Поделиться на других сайтах

Я не пробовал, но предполагаю пару проблем:

Если к #content и дочерним есть стили прописанные, надо еще и таблицу стилей правки вносить для #content2

Я бы ID не менял, а класс добавил

и в localStorage у посетителя находится ( как правило) значение

('display') == 'grid')

, потому произойдет переключение вида.на сетку.

Поэтому надо последний блок вообще убирать. Или вводить еще display-blog и ее хранить тоже

Ссылка на комментарий
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сейчас и зарегистрироваться позже. Если у вас есть учётная запись, войдите, чтобы публиковать под своей учётной записью.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Показать вместо этого как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Нельзя вставлять изображения напрямую. Загрузите или вставьте изображения по URL.

 Поделиться

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу