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

Как вывести цифру количества товаров в категории - "Найдено ХХ товаров"


Recommended Posts

Уважаемые форумчане, пытаюсь добавить в файл /catalog/view/theme/default/template/product/category.tpl текст "Найдено ХХ товаров", чтобы выводить его рядом с сортировкой товаров.

Общее количество товаров категории есть тут:

<div class="pagination"><?php echo $pagination; ?></div>

Результат $pagination - "Показано товаров с 1 по 10 из 10 (всего 1 страниц)"

Как оттуда "выдрать" только общее количество товаров в категории (в примере выше - 10) ?

Заранее спасибо за помощь! :)

Надіслати
Поділитися на інших сайтах


это про страницы, про кол-во товаров другое

Это понятно, что про страницы :) Просто там это число товаров уже как-то формируется -> "Показано товаров с 1 по 10 из 10"

Мне нужно эту десятку вывести на странице категории текстом "Найдено 10 товаров"

Надіслати
Поділитися на інших сайтах


Это понятно, что про страницы :) Просто там это число товаров уже как-то формируется -> "Показано товаров с 1 по 10 из 10"

Мне нужно эту десятку вывести на странице категории текстом "Найдено 10 товаров"

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

смотри в внизу этого файла /system/library/pagination.php

Надіслати
Поділитися на інших сайтах


Спасибо большое за ответ! Я то понимаю, что там надо смотреть, только я в php понимаю на интуитивном уровне, к сожалению.

Вот код pagination.php:

<?php
final class Pagination {
public $total = 0;
public $page = 1;
public $limit = 20;
public $num_links = 10;
public $url = '';
public $text = 'Showing {start} to {end} of {total} ({pages} Pages)';
public $text_first = '|<';
public $text_last = '>|';
public $text_next = '>';
public $text_prev = '<';
public $style_links = 'links';
public $style_results = 'results';

public function render() {
 $total = $this->total;

 if ($this->page < 1) {
  $page = 1;
 } else {
  $page = $this->page;
 }

 if (!$this->limit) {
  $limit = 10;
 } else {
  $limit = $this->limit;
 }

 $num_links = $this->num_links;
 $num_pages = ceil($total / $limit);

 $output = '';

 if ($page > 1) {
  $output .= ' <a href="' . str_replace('{page}', 1, $this->url) . '">' . $this->text_first . '</a> <a href="' . str_replace('{page}', $page - 1, $this->url) . '">' . $this->text_prev . '</a> ';
 }
 if ($num_pages > 1) {
  if ($num_pages <= $num_links) {
$start = 1;
$end = $num_pages;
  } else {
$start = $page - floor($num_links / 2);
$end = $page + floor($num_links / 2);

if ($start < 1) {
 $end += abs($start) + 1;
 $start = 1;
}

if ($end > $num_pages) {
 $start -= ($end - $num_pages);
 $end = $num_pages;
}
  }
  if ($start > 1) {
$output .= ' .... ';
  }
  for ($i = $start; $i <= $end; $i++) {
if ($page == $i) {
 $output .= ' <b>' . $i . '</b> ';
} else {
 $output .= ' <a href="' . str_replace('{page}', $i, $this->url) . '">' . $i . '</a> ';
}
  }

  if ($end < $num_pages) {
$output .= ' .... ';
  }
 }

 if ($page < $num_pages) {
  $output .= ' <a href="' . str_replace('{page}', $page + 1, $this->url) . '">' . $this->text_next . '</a> <a href="' . str_replace('{page}', $num_pages, $this->url) . '">' . $this->text_last . '</a> ';
 }

 $find = array(
  '{start}',
  '{end}',
  '{total}',
  '{pages}'
 );

 $replace = array(
  ($total) ? (($page - 1) * $limit) + 1 : 0,
  ((($page - 1) * $limit) > ($total - $limit)) ? $total : ((($page - 1) * $limit) + $limit),
  $total,
  $num_pages
 );

 return ($output ? '<div class="' . $this->style_links . '">' . $output . '</div>' : '') . '<div class="' . $this->style_results . '">' . str_replace($find, $replace, $this->text) . '</div>';
}
}
?>

Но какая переменная содержит эту десятку - запутался в конструкциях ((

Надіслати
Поділитися на інших сайтах


Уважаемые форумчане, пытаюсь добавить в файл /catalog/view/theme/default/template/product/category.tpl текст "Найдено ХХ товаров", чтобы выводить его рядом с сортировкой товаров.

Общее количество товаров категории есть тут:

<div class="pagination"><?php echo $pagination; ?></div>

Результат $pagination - "Показано товаров с 1 по 10 из 10 (всего 1 страниц)"

Как оттуда "выдрать" только общее количество товаров в категории (в примере выше - 10) ?

Заранее спасибо за помощь! :)

в файле catalog/controller/product/category.php после строки

$this->data['limit'] = $limit;

вставляешь строку

$this->data['product_total'] = $product_total;

в файле catalog/view/theme/default/template/product/category.tpl в нужное место вставляешь строку

Найдено <?php echo $product_total; ?> товаров

  • +1 1
Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

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

Important Information

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