CMS Eleanor - Поиск
Полная версия этой страницы: Официальный форум Eleanor CMS » Внедрение Google rich Snippets в Rate
Официальный форум Eleanor CMS » Поддержка пользователей системы Eleanor CMS » Первые шаги
Страницы: 1, 2
Добрый день.
Думаю многим тема будет полезна в качестве повышения CTR с поисковиков благодаря "звездочкам Гугла".
звездный рейтинг
Такие плагины уже есть готовые для Вордпресс и Джумлы...но желания работы с этими ЦМС вобще нет.
В Вашей ЦМС уже есть встроенный рейтинг.

Вопрос скорее всего к Александру, ну или кто еще в пхп неплохо соображает соображает:

Как правильно всунуть микродаты в html код нужной страницы? Т.е. что подставить заместь КОД1, КОД2?

1. Нужно вставить в шаблон, тут сложностей нет...
<div class="aggregateRating" itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">

подключаем разметку
<meta itemprop="worstRating" content = "1"/>    

это минимальное значение в голосовалке, вроде можно не указывать...на всякий пожарный
2. В html код..например новости:
<span class="ratingValue" itemprop="ratingValue">КОД1</span>/<span itemprop="bestRating">5</span>
оставило <span class="RatingCount" itemprop="RatingCount">КОД2</span> человек

вся загвоздка - как вытянуть из ПХП в ХТМЛ :help: :
КОД1 -> средняя оценка -> 'average_mark' в коде
КОД2 -> к-во голосов-> 'have_voted' в коде


-------------
1)Подробнее о микроформатах\микродатах:
http://ruschema.org
2) Дополнительные микроформаты, микродаты, спец.знаки в Description, хлебные крошки в юрлах и т.д.
http://saney.ru/tools/google-snippets-generator.html
3)Проверка работоспособности микроформатов:
http://www.google.com/webmasters/tools/richsnippets
4) Чтобы долго не ждать "ням-ням" сайта гуглом - в Инструментах Вебмастера также можно добавить сайт и отправить карту сайта на переиндексацию. B)

ЗЫ На картинке отображена схема для отзывов(комментариев...параметр reviewCount в Схеме)...потому еще желательно узнать как выдернуть считалку комментов.
Alexander
Хм. Интересно. Попытаюсь внедрить :)

Добавлено через 1 минут, 35 секунд:

Можете показать пример страницы с таким рейтингом?

Добавлено через 9 минут, 38 секунд:

Меня смущает тег meta в теле документа....
ну самые популярные kinopoisk.ru, imdb.ru
(рейтинги фильмов)
гугл рейтинг

Просто нельзя накручивать рейтинги или просто цифры от балды ставить...в инструментах Вебмастера где-то
есть кнопка пожаловаться на накрутку.
Alexander
SERJ, если я просто вставлю рядом с рейтингом строки:

'<div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating" class="hidden"><span itemprop="ratingValue">',round($average,1),'</span><span itemprop="ratingCount">',$total,'</span><span itemprop="bestRating">',max($marks),'</span><span itemprop="worstRating">',min($marks),'</span></div>'

Этого будет достаточно?
стоит rc5, вставил вышеприведенный код в base--full.php
перед
<div class="ratebase"><?php echo$rating?></div>
Результат "ни_ошень" (пробовал и без ' ' вокруг кода)


Вот то, что выводится мышкой при наведении (on hover вроде эта штука называется) --->> надо поставить между Вернуться и Рейтингом с выводом через то, что я указывал.

ЗЫ Может можно через
<?php echo $переменная;?> 

ЗЫЫ
И вроде эта штука кешироваться не должна, забыл сказать. :rolleyes:
Alexander
SERJ, я не назвал своё решение готовым. Мне интересно, по-вашему внедрение такого кода в КАЖДЫЙ рейтинг будет достаточно?
В виду своих скромных знаний...затрудняюсь ответить.
Вот пример как аналогичный рейтинг переделывали под Джумлу. Может поможет:
deconf.com/en/projects/joomla-extra-vote-compatibility-with-google-rich-snippets-star-rating/
Alexander
SERJ, на теги посмотрите.
ок. отвечу завтра, есть пару мыслей.
Alexander
Рейтинг может быть только 1 на одной странице?
Логично что один...

Я уже пару часов занимаюсь сексом с Нотепад++...
как вывести значения среднего рейтинга и голосов...хоть в штмл, хоть в пхп...

return $str_rat.'<script type="text/javascript">
		new Rating(\''.$id.'\','.$persent.','.($steps<0 ? 0 : (int)$steps).','.$width.','.$height.','.$this->Mainclass->GetModVal('id').','.$addon_arr.',\''.addslashes($this->RatingTitle($total,$votes_real)).'\');
		</script>';

из class_functions.php

... $total,$votes_real - это же и есть нужные значения?

но через <?php echo $total;?> - не работает. Могу предположить что не понимает id голосовалки :nea:

В пхп я condition zero :(
Alexander
SERJ, попробуйте скачать систему по следующим ссылкам. В обновленной версии я попытался реализовать то, о чем вы говорите. Проверьте, пожалуйста:
https://dl.dropbox.com/u/68705252/Eleanor.7z
https://dl.dropbox.com/u/68705252/Eleanor-utf8.7z
О_о =) Спасибо что не забыли =))
Работоспособность можно проверить тут:
http://www.google.com/webmasters/tools/richsnippets
(просто ща нет площадки для тестов :( )

Сейчас установлю на Денвер, гляну.

ЗЫ Я чет в соседних розделах не могу темы сосздать. Хотел спросить как потребляемую память, sql запросы и время генерации на сайте смотреть, а не в админке. Подключил на локалхосте APC и чет не наблюдаю прироста производительности... :dntknw:
А не=) В новой версии показывает:
Страница сгенерирована за 0.164 секунды. Использовано запросов: 12. Память: 1.04 Мб

(правда думал что запросов будет меньше и генерация будет лучше...)

А вот с рейтингом пока Хьюстон, у нас проблемы (с)

Жал на 5 (1 раз)...показывает 3, в коде 6 :skull:
Да и BestRating должен быть 5, а не 6.
Alexander
Цитата (SERJ @ 2024-10-13 20:07)
(правда думал что запросов будет меньше и генерация будет лучше...)

А в сравнении с прошлой версией что именно хуже?

Цитата (SERJ @ 2024-10-13 20:07)
Жал на 5 (1 раз)...показывает 3, в коде 6

Дело в том, что рейтинг в новой версии идет по современному: от -3 до 3 исключая ноль. На этом шаблоне, естественно, визуально отображается от 1 до 6. Так что я не вижу проблемы.
вся беда: звездочек должно быть или 5 или 10...т.е. 1-5, 1-10, но не (-3) - 3.

Значения с предыдущей не сравнивал...там память не показывает.
Для сравнения Джумла 2.5.6 рус.сборка...жрала приблизительно 25-30sql, 10-11Mb, после APC + "прогрессивное кеширование" встроенное... показывало 7 sql, 2.6-3mb
gzip судя по всему на Денвере по умолчанию не работает.
пытался по-молдавски всунуть код с usernews.php в class_functions.php версии RC5 (там нормальная считалка)...

Fatal error: Call to undefined method stdClass::SendHeaders() in Z:\home\domen\www\classes\others\class_ee.php on line 80

всегда делаю копию перед правкой, не помогла. По-ходу все 5 раз закешировалось :rolleyes:

Подскажите правки под RC5 :rolleyes:
Kaname26
рс5 мало кто занимается
Alexander
SERJ, хорошо, я так понимаю, по-вашему мы хуже жумлы в плане производительности? Можно увидеть сравнительную таблицу?

Почему именно 5? Путем пропорций можно все свести к любому числу звездочек. Но в описании стандарта я не нашел никаких ограничений на количество звездочек. Можно подробнее?

SERJ, с RC5 помогу решить проблему. Но нужно, чтобы вы вложили файл.
Тогда уже лучше 0.9пре переделать под 1-5 ... 1-10, или другие кратные 5 (1..20, 1-100)
http://ruschema.org/AggregateRating
примеры кодов...они то рабочие, но это считается накруткой и будет работать только пару дней если нет реального рейтинга.

Из требований: значения не должны кешироваться или должны обновляться при новом голосовании. И вроде значения должны округляться до десятых...т.е. средний рейтинг 4.6, а не 4,593576311.

О производительности я пока не хочу спорить, в Вашей ЦМС она по умолчанию и так хорошая. Просто рассматриваю планы дальнейшей оптимизации с уменьшением запросов и времени генерации, а также количества выделяемой памяти. С другой стороны gzip, APC - тоже дополнительная нагрузка на проц и винт, потому все относительно.
Нужны еще тесты с другими системами (eAcelerator, Memcasche, X-casche)
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.