Seblod + Extravote

4 года 4 мес. назад - 4 года 4 мес. назад #5773 от Антон
Добрый день.

Я пытаюсь реализовать красивую систему оценок статей с помощью плагина Extravote (звездочки с использованием ajax), а также сортировку этих статей по величине их средней оценки.
Wedal, у Вас на главной странице, к примеру, в списке статей в каждой статье как раз такие звездочки для оценки.
Моя задача - вывести почти такой же список статей, с той лишь разницей, что они будут упорядочены по их рейтингу, от большого к меньшему, например.
Существует специальный модуль, который формирует топ-список на основе данных голосования - модуль Top Extravote.
Для моих целей он не подходит потому, что мне требуется выводить список статей с дополнительными полями, т.е. в виде типа контента, созданного с помощью Seblod.
И второй момент - модуль выводит топ-список в одной из позиций шаблона joomla, а мне требуется вывести топ-список в области контента не в виде модуля, а именно в виде списка статей, который будет листаться пагинацией (как я предполагаю - вывести с помощью типа поиска и отсортировать по некому полю "рейтинг статьи").
Вся загвоздка в том, чтобы создать для типа контента "статья" специальное поле "рейтинг статьи", которое бы позволяло работать с этим количественным значением рейтинга, которое формируется путем голосования с помощью плагина Extravote.
Надеюсь, понятно изложил свою задачу. В ознакомительной статье по Seblod я прочитал очень приятные и заманчивые строки:

Первым китом, на котором стоит Seblod, является поиск по типам контента. Мы можем создать неограниченное количество типов поиска по каким угодно полям, комбинациям полей, вхождениям. Все результаты мы можем выводить где угодно, в каком угодно виде. Причем речь идет не только о полях Seblod, а о любых полях, имеющихся в базе данных. Это просто великолепно.

Второй кит – это невероятное взаимодействие Seblod со всеми расширениями, имеющимися на сайте. Мы можем встроить в наш контент данные из любых таблиц, имеющихся в базе данных Joomla. Проще говоря, создать тип контента, включающий данные других расширений Joomla, например, галереи, магазина, и.т.д. Благодаря этому можно получить интеграцию всего и вся, связав различные компоненты в новом типе контента.

Прочитал я это описание, губа сразу же раскаталась, а руки зачесались :)
Мне как раз и требуется - реализовать взаимодействие Seblod с другим расширением (Extravote).
Т.е. каким-то образом привязать к специально созданному полю "рейтинг статьи" ячейку БД, в которую Extravote сохраняет данные о рейтинге.
Может быть найти переменную в php модуля Top Extravote, которая содержит данные о рейтинге, тогда встает вопрос - как можно переменную привязать к полю Seblod.

Уверен, мою задачу реализовать возможно, только не знаю - какого уровня знания php и Seblod для этого потребуются. У меня они почти на среднем уровне.
Подскажите, пожалуйста - с какой стороны подходить к такой задаче, посоветуйте.

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

4 года 4 мес. назад - 4 года 4 мес. назад #5805 от Wedal
Антон, Extravote, на сколько я помню, обновляет и стандартную ячейку рейтинга Joomla в БД. Можно попробовать создать поле для Seblod и сделать его хранилищем именно эту ячейку.
Помню, еще на более ранних версиях Seblod я пытался сделать то, о чем вы говорите. Тогда решил этот вопрос так:
1) Создал числовое поле Seblod, как дополнение к типу контента.
2) Отредактировал плагин Extravote заставив его обновлять в том числе и это поле Seblod, а не только свое и стандартное Joomla.
3) Profit!

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.

4 года 4 мес. назад #5822 от Антон
Спасибо за ответ. Я пробовал создавать поле такого вида:

Ячейку rating_sum в базе данных создавал не я, она была уже доступна среди вариантов после того, как
я выбрал в списке "Impiy_content_extravote". Я уже предвкушал победу, когда обнаружил, что ничего не работает.
Более того, если вновь открыть настройки такого поля, то rating_sum пропадает, там оказывается просто пустое место
(имеется в виду rating_sum, которую я указывал неподалеку от Alter).

Не заимев каких-либо других идей, я полез на форум seblod.com.
К моей радости, на нем оказалось аж несколько тем, освещающих проблемы, аналогичные моей (благо, плагин Extravote крайне популярен).
Мой английский намекнул мне, что в этой теме проблему даже успешно решили:
Show votes and author in search/list resuls
Также нашел созвучную тему, тоже с неким решением:
Sort by rating?
Я усиленно напряг извилины и попытался понять все, что было бы необходимо для достижения моей цели.
После чего передо мной предстала вся правда-матка. Да.

Я понял, что без знаний PHP+MySQL хотя бы на базовом уровне можно забыть о том прекрасном втором ките, на котором основывается Seblod.
Я бы даже рискнул немного уточнить описание этого кита, дабы кто-то, такой же как я, ненароком не ввелся в заблуждение.
Seblod не то, чтобы позволяет невероятно взаимодействовать с любыми расширениями (он то позволяет, все верно), а точнее было бы сказать,
что Seblod этому не препятствует. И таким образом, если Вы даже приблизительно не представляете - как наладить взаимодействие любых расширений между собой просто без Seblod'a,
то и взаимодействие Seblod'a с этими расширениями вряд ли Вы реализуете (может ошибаюсь, но вот такое видение сложилось).

На оф. форуме Seblod несомненно полезные советы, также, как и совет отредактировать плагин Extravote и заставить его обновлять поле Seblod,
однако я, как рядовой пользователь движка сайтов Joomla и конструктора контента Seblod - не в силах ими воспользоваться.

P.s. Книги и видеотуториалы по теории PHP+MySQL уже благополучно скачаны. Чего я желаю и всем тем, кто схож со мной по амбициям и познаниям веб-кодинга :)

Пожалуйста Войдите или Зарегистрируйтесь, чтобы присоединиться к беседе.


Вверх