Форум русской поддержки Joomla!® CMS
10.12.2016, 05:07:16 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

отзывы - как добавить "нет отзывов"

 (Прочитано 489 раз)
0 Пользователей и 1 Гость смотрят эту тему.
darkghost
Практически профи
*******

Репутация: +75/-0
Offline Offline

Сообщений: 1811



« : 21.01.2016, 02:23:40 »

Доброе время суток, Форум!

В карточке товара выводятся Отзывы о товаре (файл - review)
Если Отзывы есть к определенному товару - хороший вид блока, но вот если Отзывов нет - не очень.
Получается картина --->
Показать текстовый блок
На многих сайтах встречал, что если Отзывов нет - выводится надпись "Отзывов нет, будьте первыми", или шо то в этом роде.
Мудрил, как это можно сделать в этом случаи - ничего не получается.
За вывод отзывов отвечает часть (файл - review)
Код:
<?php foreach($this->reviews as $curr){?>
        <div class="review_item">
             <div><span class="review_user"><?php print $curr->user_name?></span>, <span class='review_time'><?php print formatdate($curr->time);?></span></div>
             <div class="review_text"><?php print nl2br($curr->review)?></div>
           ...
        <?php } ?>
        </div>
<?php }?>
Может подскажет кто, как это можно организовать и в принципе такое возможно ли в целом? К чему можно привязаться?

Заранее благодарю
« Последнее редактирование: 22.01.2016, 14:25:11 от darkghost » Записан
dmitry_stas
Профи
********

Репутация: +798/-4
Offline Offline

Сообщений: 7781



« Ответ #1 : 21.01.2016, 02:25:02 »

К чему можно привязаться?
очевидно к count($this->reviews)
Записан
darkghost
Практически профи
*******

Репутация: +75/-0
Offline Offline

Сообщений: 1811



« Ответ #2 : 21.01.2016, 02:27:20 »

если можно, подробнее плисс
Понимаю, что надо создать - если отзывов = 0, то вывести текст (<?php print _JSHOP_NULL_REV>), иначе ....
Но вот как?
« Последнее редактирование: 21.01.2016, 02:32:05 от darkghost » Записан
dmitry_stas
Профи
********

Репутация: +798/-4
Offline Offline

Сообщений: 7781



« Ответ #3 : 21.01.2016, 10:55:08 »

Код:
if (count($this->reviews)) {
    // отзывы есть
} else {
    // отзывов нет
}
Записан
darkghost
Практически профи
*******

Репутация: +75/-0
Offline Offline

Сообщений: 1811



« Ответ #4 : 21.01.2016, 16:17:17 »

Над таким вариантом и я думал, изобразил
Код:
<div class="review_header">
<?php
   if (count($this->reviews)) {
   // отзывы есть
   echo "Отзывы";
   } else {
      // отзывов нет
   echo "Будь первым";
      }
      ?>
</div>
- работает, а вот такой вариант
Код:
<?php
if (count($this->reviews)) {
   // отзывы есть
echo print _JSHOP_REVIEWS;
} else {
   // отзывов нет
echo print _JSHOP_NULL_REV;
}
?>
- к надписи Отзывы добавляет "1", от куда она берется? Не пойму
Записан
dmitry_stas
Профи
********

Репутация: +798/-4
Offline Offline

Сообщений: 7781



« Ответ #5 : 21.01.2016, 16:19:10 »

к надписи Отзывы добавляет "1", от куда она берется? Не пойму
echo print
Записан
darkghost
Практически профи
*******

Репутация: +75/-0
Offline Offline

Сообщений: 1811



« Ответ #6 : 21.01.2016, 16:27:28 »

заменить на это --- <?php print _JSHOP_.... ?
Такую конструкцию пробовал - результат - ломает страницу. То ли не воспринимает переменные, то ли еще шо то
Записан
dmitry_stas
Профи
********

Репутация: +798/-4
Offline Offline

Сообщений: 7781



« Ответ #7 : 21.01.2016, 16:31:13 »

Такую конструкцию пробовал - результат - ломает страницу.
покажите полностью
Записан
darkghost
Практически профи
*******

Репутация: +75/-0
Offline Offline

Сообщений: 1811



« Ответ #8 : 21.01.2016, 16:38:26 »

Код:
<?php
if (count($this->reviews)) {
   // отзывы есть
<?php print _JSHOP_REVIEWS?>
} else {
   // отзывов нет
<?php print _JSHOP_NULL_REV?>
}
?>
- вот этот код не срабатывает
Записан
dmitry_stas
Профи
********

Репутация: +798/-4
Offline Offline

Сообщений: 7781



« Ответ #9 : 21.01.2016, 16:50:52 »

ну еще бы ему срабатывать Azn
Код
<?php
if (count($this->reviews)) {
  // отзывы есть
echo print _JSHOP_REVIEWS;
} else {
  // отзывов нет
echo print _JSHOP_NULL_REV;
}
?>
и
Код
<?php
if (count($this->reviews)) {
  // отзывы есть
<?php print _JSHOP_REVIEWS?>
} else {
  // отзывов нет
<?php print _JSHOP_NULL_REV?>
}
?>
отличаются не только наличием и отсутствием echo, не так ли? Azn
Записан
darkghost
Практически профи
*******

Репутация: +75/-0
Offline Offline

Сообщений: 1811



« Ответ #10 : 21.01.2016, 16:59:16 »

-echo- есть и нету ...
Да уж. Пора на отдых!
« Последнее редактирование: 21.01.2016, 17:09:47 от darkghost » Записан
dmitry_stas
Профи
********

Репутация: +798/-4
Offline Offline

Сообщений: 7781



« Ответ #11 : 21.01.2016, 17:42:38 »

ну т.е. все работает?
Записан
darkghost
Практически профи
*******

Репутация: +75/-0
Offline Offline

Сообщений: 1811



« Ответ #12 : 21.01.2016, 17:56:43 »

уж совсем ... что-то у меня не вяжется.
Как это должно выглядеть то, можно на примере показать
Код:
<?php
if (count($this->reviews)) {
   // отзывы есть
<?php print _JSHOP_REVIEWS?>

Наверное я снова шо то нахомутал. Самый простый вариант с текстом - гуд! С переменной - нет
Записан
darkghost
Практически профи
*******

Репутация: +75/-0
Offline Offline

Сообщений: 1811



« Ответ #13 : 21.01.2016, 18:00:37 »

Еще вопрос --- как прописать переменной (тексту) класс/стиль?
Вот так
Код:
echo "<span style='color:#ff0000 !important;'>Отзывы</span>";
--- работает, а переменной никак не могу справится
« Последнее редактирование: 21.01.2016, 18:20:20 от darkghost » Записан
dmitry_stas
Профи
********

Репутация: +798/-4
Offline Offline

Сообщений: 7781



« Ответ #14 : 21.01.2016, 18:37:29 »

Наверное я снова шо то нахомутал. Самый простый вариант с текстом - гуд! С переменной - нет

переменная не при чем вообще. не увидел в принципе чтобы что то поменялось. еще раз:

работающий код
Код
<?php
if (count($this->reviews)) {
  // отзывы есть
echo print _JSHOP_REVIEWS;
} else {
  // отзывов нет
echo print _JSHOP_NULL_REV;
}
?>
и неработающий
Код
<?php
if (count($this->reviews)) {
  // отзывы есть
<?php print _JSHOP_REVIEWS?>
} else {
  // отзывов нет
<?php print _JSHOP_NULL_REV?>
}
?>

разница только в наличии echo ?
Записан
darkghost
Практически профи
*******

Репутация: +75/-0
Offline Offline

Сообщений: 1811



« Ответ #15 : 21.01.2016, 18:45:52 »

в том то и дело, что такая конструкция
Код:
...
echo print _JSHOP_REVIEWS;
...
дает --- Отзыв1. Поэтому и написал, шо наверное снова шо то нахомутал
А где нету Отзывов --- _JSHOP_NULL_REV1  (переменную _JSHOP_NULL_REV еще не прописал в языковом файле)
Или я вовсе не о том?
Если ... разница только в наличии echo ? --- да!
« Последнее редактирование: 21.01.2016, 18:51:13 от darkghost » Записан
robert
Профи
********

Репутация: +344/-11
Offline Offline

Пол: Мужской
Сообщений: 3595


« Ответ #16 : 21.01.2016, 19:14:44 »

Если ... разница только в наличии echo ? --- да!
Нет, еще в синтаксисе: уберите лишние тэги php.
Записан
dmitry_stas
Профи
********

Репутация: +798/-4
Offline Offline

Сообщений: 7781



« Ответ #17 : 21.01.2016, 20:25:22 »

разница только в наличии echo ? --- да!
срочно надо в отпуск. и к офтальмологу Azn
Записан
darkghost
Практически профи
*******

Репутация: +75/-0
Offline Offline

Сообщений: 1811



« Ответ #18 : 22.01.2016, 14:23:58 »

Наверное правы - срочно!
Не стал мудровать и оставил код
Код:
<?php
if (count($this->reviews)) {
   // отзывы есть
echo "Отзывы о товаре";
} else {
   // отзывов нет
echo "<span style='...'>По данному товару отзывов нет.</span>";
}
?>
- он работает, результат устраивает
Записан
dmitry_stas
Профи
********

Репутация: +798/-4
Offline Offline

Сообщений: 7781



« Ответ #19 : 22.01.2016, 15:33:28 »

ясно Azn т.е.
Код
<?php
if (count($this->reviews)) {
  // отзывы есть
print _JSHOP_REVIEWS;
} else {
  // отзывов нет
print _JSHOP_NULL_REV;
}
?>
не судьба была сделать? Azn
Записан
darkghost
Практически профи
*******

Репутация: +75/-0
Offline Offline

Сообщений: 1811



« Ответ #20 : 23.01.2016, 17:11:39 »

Проверил, представленный вариант рабочий!
Остается сказать - не додумался
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet