Перейти к содержанию
Официальный форум поддержки Simpla

Звёздный рейтинг


Перейти к решению Решено Noxter,

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

вы чем вообще читаете???
я подцепил скрипт к карточке товара!!! не работает ни черта!! делал все строго по инструкции в текстовом файле!!

Ссылка на сообщение
Поделиться на другие сайты
  • Ответов 306
  • Дата создания
  • Последний ответ

Лучшие авторы в теме

Лучшие авторы в теме

Изображения в теме

Kosjak76 у меня даже на последней симпле все норм работает, правда html код немного под себя переделал, а в товарах только сам рейтинг с цифрой вывел, и все норм.

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

Kosjak76 20:46
Вот и я о том же, если не работает, то может в руках проблема???


Кстати iMessi89 рекомендую установить "драйвер прямые руки" может кому еще поможет, ссылка на сайт:

http://driverhand.narod.ru
Ссылка на сообщение
Поделиться на другие сайты

Rash
Кстати iMessi89 рекомендую установить "драйвер прямые руки" может кому еще поможет, ссылка на сайт:

http://driverhand.narod.ru


скачал драйвер. А в какую папку его ложить надо?

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

да исправил я давно уже)) угараю просто немного :-D

надо было просто $settings->theme заменить на свою тему!

Ссылка на сообщение
Поделиться на другие сайты
  • 2 месяца спустя...
  • 4 недели спустя...

А в товарах и не должно работать, скрипт работает только на странице товара.

 

Lol, я исправил две строчки:

 

Добавил выборку rating и votes в функцию public function get_products($filter = array()) из Products.php

 

И заменил привязку JS на

 

{literal}
<script type="text/javascript">
	$(function() {
		$('#{/literal}product_{$product->id}{literal}').rater({ postHref: 'ajax/rating.php' }); 
	});
</script>
{/literal}

 

И заработал в товарах ваш же скрипт  :)

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

Lol, я исправил две строчки:

 

Добавил выборку rating и votes в функцию public function get_products($filter = array()) из Products.php

 

И заменил привязку JS на

 

{literal}
<script type="text/javascript">
	$(function() {
		$('#{/literal}product_{$product->id}{literal}').rater({ postHref: 'ajax/rating.php' }); 
	});
</script>
{/literal}

 

И заработал в товарах ваш же скрипт  :)

Ну молодец! Я и не писал что это сложно  :P

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

Lol, я исправил две строчки:

 

Добавил выборку rating и votes в функцию public function get_products($filter = array()) из Products.php

 

И заменил привязку JS на

 

{literal}
<script type="text/javascript">
	$(function() {
		$('#{/literal}product_{$product->id}{literal}').rater({ postHref: 'ajax/rating.php' }); 
	});
</script>
{/literal}

 

И заработал в товарах ваш же скрипт  :)

 

можно поподробнее пожалуйста, для дизайнеров...  :rolleyes:

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

Кстати, вот симпатичные звездочки... только они, возможно, "проприетарные"

http://www.pztiv.ru/js/rating/images/stars.png

Ну, если подробнее,

 

1) api/Products.php на строке 113 добавляем p.rating и p.votes, так же, как и в инструкции описано.

 

2) в design/ваша тема/html/products.tpl
 

"примерно на строку 95" добавляем код из инструкции, но только вместо 

 

{literal}
<script src="design/{$settings->theme}/js/project.js"></script>
<script type="text/javascript">
	$(function() {
		$('.testRater').rater({ postHref: 'ajax/rating.php' }); 
	});
</script>
{/literal}

там

 

{literal}
<script type="text/javascript">
	$(function() {
		$('#{/literal}product_{$product->id}{literal}').rater({ postHref: 'ajax/rating.php' }); 
	});
</script>
{/literal}

а строчку 

{literal}<script src="design/{/literal}{$settings->theme|escape}{literal}/js/project.js"></script>{/literal}

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

Ссылка на сообщение
Поделиться на другие сайты
  • 1 месяц спустя...

Даня, не пишите БОЛЬШИМИ БУКВАМИ - Ваш запрос итак увидят.

В файле api/Products.php находим метод duplicate_product и после $product->created = null; вставляем

$product->rates= 0;$product->votes= 0;
Ссылка на сообщение
Поделиться на другие сайты
  • 2 недели спустя...

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

UPDATE `s_products` SET `rating` = 4.1+RAND()*0.9;
UPDATE `s_products` SET `votes` = FLOOR(17+RAND()*93);

В первом запросе 4.1 минимальный рейтинг и 0.9 в каком диапазоне рандомно проставлять числа, получается 4.1-5.0

Во втором запросе 17 и 93 это минимум и в каком диапазоне прибавлять числа, максимум 120

Ссылка на сообщение
Поделиться на другие сайты
  • 4 недели спустя...

реализация сортировки по рейтингу:

 

в файле api/products.php находим код:

 

if(!empty($filter['sort']))
switch ($filter['sort'])
{
case 'position':
$order = 'p.position DESC';
break;
case 'name':
$order = 'p.name';
break;


Вставляем:
case 'rating':
$order = 'p.rating DESC';
break;


Затем в в products.tpl добавляем строку с рейтингом

<div class="sort">
    Сортировать по
    <a {if $sort=='position'} class="selected"{/if} href="{url sort=position page=null}">умолчанию</a>
    <a {if $sort=='price'} class="selected"{/if} href="{url sort=price page=null}">цене</a>
    <a {if $sort=='rating'} class="selected"{/if} href="{url sort=rating page=null}">рейтингу</a>
<a {if $sort=='name'} class="selected"{/if} href="{url sort=name page=null}">названию</a>
</div>
 
Ссылка на сообщение
Поделиться на другие сайты

Почему не работают звездочки??

Я в product  вставид 

 


{* Страница статей *}
      <!-- Ретинг -->
<div class="testRater" id="product_{$product->id}">
<div class="statVal">
<span class="rater">
<span class="rater-starsOff" style="width:160px;"><span class="rater-starsOn" style="width:{$product->rating*160/5|string_format:"%.0f"}px"></span></span>
<span class="test-text">
<span class="rater-rating">{$product->rating|string_format:"%.1f"}</span> (голосов <span class="rater-rateCount">{$product->votes|string_format:"%.0f"}</span>)
</span>
</span>
</div>
</div>
<!-- Рейтинг (The End) -->
<h1 data-product="{$product->id}">{$product->name|escape}</h1>


<div class="product">
    <!-- Описание Статьи -->
    <div class="description">
 

 

 
 
 
 
в папке js
создал  ajax-rater.js
 
в css в  style.css
добавил стили
 
и в index.tpl

 

<script type="text/javascript" src="design/{$settings->theme|escape}/js/ajax-rater.js"></script>  
 

 

а в итоге на странице
 
звездочки даже не дергаются но появились!!

 0.0 (голосов 0)
 
ах да и в images добавил картинку и в пути к картинке добавид " " их там не было!!!
Ссылка на сообщение
Поделиться на другие сайты
  • 2 недели спустя...

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

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

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

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...

×
×
  • Создать...