Noxter Опубликовано 8 октября, 2013 Жалоба Поделиться Опубликовано 8 октября, 2013 http://www.simplashop.com/article/zvezdnyj-rejting-dlya-simpla-21 - переделал с нуля - голосовать можно везде.Артём ты забыл в папку ajax положить файл Цитата Ссылка на сообщение Поделиться на другие сайты
mart Опубликовано 8 октября, 2013 Жалоба Поделиться Опубликовано 8 октября, 2013 Добавил. Спасибо! Цитата Ссылка на сообщение Поделиться на другие сайты
Den Опубликовано 8 октября, 2013 Жалоба Поделиться Опубликовано 8 октября, 2013 mart, хороший рейтинг! В карточке товара не зависимо от поставленной оценки показывает 5 звезд! ))) Цитата Ссылка на сообщение Поделиться на другие сайты
mart Опубликовано 8 октября, 2013 Жалоба Поделиться Опубликовано 8 октября, 2013 Хм, видать что-то не дописал в инструкцию - сейчас пробегусь еще раз...P.S. Нет, все верно работает. Немного перепутал последовательность шагов в инструкции (в это же время "спорил" с Корсом в соседней теме). Теперь все должно быть верно. Добавил еще 1 скрин для подтверждения правдивости моих слов... Цитата Ссылка на сообщение Поделиться на другие сайты
Den Опубликовано 8 октября, 2013 Жалоба Поделиться Опубликовано 8 октября, 2013 Что было не так? Где скрин? Цитата Ссылка на сообщение Поделиться на другие сайты
mart Опубликовано 8 октября, 2013 Жалоба Поделиться Опубликовано 8 октября, 2013 Там же в статье поставил - лови Цитата Ссылка на сообщение Поделиться на другие сайты
Den Опубликовано 8 октября, 2013 Жалоба Поделиться Опубликовано 8 октября, 2013 Немного перепутал последовательность шагов в инструкции Не пойму не работает. Что за шаги? Цитата Ссылка на сообщение Поделиться на другие сайты
mart Опубликовано 8 октября, 2013 Жалоба Поделиться Опубликовано 8 октября, 2013 Последовательность выполняемых действий.Если можете - напишите в скайп - решим. В списке товаров работает? Цитата Ссылка на сообщение Поделиться на другие сайты
Den Опубликовано 9 октября, 2013 Жалоба Поделиться Опубликовано 9 октября, 2013 Спасибо помог! )) Цитата Ссылка на сообщение Поделиться на другие сайты
Den Опубликовано 10 октября, 2013 Жалоба Поделиться Опубликовано 10 октября, 2013 Для правильного отображения (голос, голоса, голосов) добавляем {$product->votes|plural:'голос':'голосов':'голоса'} Здесь на форуме тоже можно поправить Цитата Ссылка на сообщение Поделиться на другие сайты
mart Опубликовано 10 октября, 2013 Жалоба Поделиться Опубликовано 10 октября, 2013 Для правильного отображения (голос, голоса, голосов) добавляем {$product->votes|plural:'голос':'голосов':'голоса'} Здесь на форуме тоже можно поправить Добавил Цитата Ссылка на сообщение Поделиться на другие сайты
Epileptoid Опубликовано 1 декабря, 2013 Жалоба Поделиться Опубликовано 1 декабря, 2013 Ребят, а как защититься от накрутки голосов?Как сделать, к примеру, чтобы головосвать могли только зарегенные юзеры? Или ещё как-то защититься - а то я столкнулся с тем, что у меня с разных браузеров по одному товару можно голосовать. Цитата Ссылка на сообщение Поделиться на другие сайты
mart Опубликовано 2 декабря, 2013 Жалоба Поделиться Опубликовано 2 декабря, 2013 У Вас что производители свой товар пиарят? А если серьезно, то надо помимо оценки товара (количество голосов и рейтинг) в отдельную таблицу вносить еще и ИП проголосовавшего и ИД продукта - в метода начисления рейтинга. Цитата Ссылка на сообщение Поделиться на другие сайты
lexter Опубликовано 11 декабря, 2013 Жалоба Поделиться Опубликовано 11 декабря, 2013 Март , спасибо всё отлично работает Цитата Ссылка на сообщение Поделиться на другие сайты
zarsky Опубликовано 17 декабря, 2013 Жалоба Поделиться Опубликовано 17 декабря, 2013 Хух, прочел всю тему, по последней инструкции вроде заработало Спасибо! Цитата Ссылка на сообщение Поделиться на другие сайты
lexter Опубликовано 18 декабря, 2013 Жалоба Поделиться Опубликовано 18 декабря, 2013 реализация сортировки по рейтингу: в файле 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> спасибо! Цитата Ссылка на сообщение Поделиться на другие сайты
RETAND Опубликовано 21 декабря, 2013 Жалоба Поделиться Опубликовано 21 декабря, 2013 Здрасьте, спасибо за слздание данного решения! Но не могли бы вы посказать в какую сторону копать, чтоб исправить пару ошибок в данном решении: 1) Если зайти на страницу вывода товаров (категорию) http://sl555.ru/products?page=3 , то при наведении мыши на рейтинг любого товара на данной странице, количество звезд у всех товаров, на которые наводился курсор, становится таким же как у первого товара на этой странице. То есть если первый товар имел рейтинг 3, то при наведении(без клика) на все остальные они становятся то же 3.2) Если проголосовать любой за товар в категории ( http://sl555.ru/products?page=3 ), то при наведении курсора(без клика) на другие товары рейтинг показывается такой же как. у последнего товара за который проголосовали. То есть нажал на товар поставил 3, навожу на другие товары, становится у всех 3, потом за какой нибудь другой проголосовал 4, наводишь на другие, становится у всех 4. Ребята может кто сталкивался с данными ошибками, подскажите решение. Я так понимаю в первом случае где то запоминается рейтинг первого товара, который как бы нужно обнулить. А во втором случае обнулить необходимо при голосовании. Скорее всего корни обоих ошибок одни и теже. Спасибо за помощь! Цитата Ссылка на сообщение Поделиться на другие сайты
mart Опубликовано 22 декабря, 2013 Жалоба Поделиться Опубликовано 22 декабря, 2013 Рейтинг не запоминается, он просто отрабатывает по классу, и в значение попадает первый элемент и присваивается ко всем остальным. До НГ постараюсь поправить JQuery-плагин, чтобы не совмещал данные. Цитата Ссылка на сообщение Поделиться на другие сайты
RETAND Опубликовано 22 декабря, 2013 Жалоба Поделиться Опубликовано 22 декабря, 2013 mart, спасибо, будем ждать. Вчера сам попробовал копать в JQ, но никак не разберусь с логикой, слабовато у меня)) с ней... Цитата Ссылка на сообщение Поделиться на другие сайты
Kosjak76 Опубликовано 22 декабря, 2013 Жалоба Поделиться Опубликовано 22 декабря, 2013 Плагин трогать можно, но не нужно... В принципе, сделать голосование из списка можно элементарно, присвоив конкретному товару уникальный класс или АйДи в зависимости от АйДи Товара http://demo.simpla.pp.ua/catalog/mobilnye-telefony Вот пример, работает с дефолтным файлом плагина. Цитата Ссылка на сообщение Поделиться на другие сайты
RETAND Опубликовано 22 декабря, 2013 Жалоба Поделиться Опубликовано 22 декабря, 2013 Плагин трогать можно, но не нужно...В принципе, сделать голосование из списка можно элементарно, присвоив конкретному товару уникальный класс или АйДи в зависимости от АйДи Товараhttp://demo.simpla.pp.ua/catalog/mobilnye-telefonyВот пример, работает с дефолтным файлом плагина. Kosjak76, Спасибо за наводку, сделал по вашей аналогии (обвернул в дивы с уникальным id и добавил в каждом товаре ф-цию передачи в rating.php: <div id="rating_{$product->id}" class="testRater_{$product->id} clr"> <div class="statVal"> <span class="rater"> <div style="margin: 22px 12px 0px 0px;float:right;" class="rating" rel="{$product->id}"> <span class="rater-starsOff"><span style="width:{$product->rating*80/5|string_format:"%.0f"}px" class="rater-starsOn"></span></span> </div> </span> </div> </div> {literal} <script type="text/javascript"> $(function() { $('.testRater_{/literal}{$product->id}{literal}').rater({ postHref: '/ajax/rating.php' }); }); </script> {/literal} Теперь обе описанные ошибки не беспокоят, но при голосовании выводится сначала, как обычно "Спасибо! Ваш голос учтен.", а следом тут же сообщение плагина "Неверные параметры запроса!"Что то, пока не могу разобраться что туда передается не то. Если не затруднит помогите пожалуйста. Цитата Ссылка на сообщение Поделиться на другие сайты
mart Опубликовано 22 декабря, 2013 Жалоба Поделиться Опубликовано 22 декабря, 2013 Ну когда я года 3 назад задумывал этот модуль, планировалось как раз минимальными изменениями достичь. А вызывать многократно метод можно, но не эстетично - не в этом философия JQuery. Цитата Ссылка на сообщение Поделиться на другие сайты
Karen Опубликовано 21 марта, 2014 Жалоба Поделиться Опубликовано 21 марта, 2014 По этой инструкции делали? Звёздный рейтинг для Simpla CMS 2автор Noxtere-mail: simplacms@ukr.net Изменяемые файлы:- api/Products.php- design/ваша тема/product.tpl- design/ваша тема/style.css 1. Загрузите:файл stars.gif в папку design/ваша тема/images,файл project.js в папку design/ваша тема/js,файл rating.php в папку ajax/ 2. Откройте файл design/ваша тема/css/style.css и вставьте в самый низ файла следующий код: /* Звёздный рейтинг товаров */.testRater{margin-bottom:20px;margin-left:36%;}.rater span {vertical-align:middle;font-size:16px;}.rater-rating {margin-top:5px;}.rater-starsOff, .rater-starsOn {display:inline-block; height:23px; background:url(../images/stars.gif) repeat-x 0 0px;}.rater-starsOn {display:block; max-width:115px; top:0; background-position: 0 -22px;}.rater-starsHover {background-position: 0 -44px!important;}/* @end */ 3. Откройте файл design/ваша тема/html/products.tpl и примерно после 25-й строки вставьте такой код: Код...... 4. Откройте файл api/Products.php и после p.body, (220 строка) пропишите: p.rating,p.votes, 5. Выполните такой SQL запрос в phpMyAdmin: ALTER TABLE `s_products` ADD `rating` FLOAT(3,1) NOT NULL DEFAULT '0' AFTER `body`,ADD `votes` INT NOT NULL DEFAULT '0' AFTER `rating` В принцыпе все. Приятной работы с Simpla!Не могли бы Вы выложить файлы для загрузки. спасибо Цитата Ссылка на сообщение Поделиться на другие сайты
velesgs Опубликовано 16 июня, 2014 Жалоба Поделиться Опубликовано 16 июня, 2014 http://joxi.ru/SYGeUxjKTJBOH0RIyK4 такой глюк подскажите куда копать? Цитата Ссылка на сообщение Поделиться на другие сайты
mart Опубликовано 16 июня, 2014 Жалоба Поделиться Опубликовано 16 июня, 2014 http://joxi.ru/SYGeUxjKTJBOH0RIyK4 такой глюк подскажите куда копать?Там в CSS есть высота блока и смещение фона - скорректируйте под размеры Вашей картинки. Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.