Показаны сообщения с ярлыком blogspot. Показать все сообщения
Показаны сообщения с ярлыком blogspot. Показать все сообщения

Шаблон со встроенными виджетами Graddit: mlnpics

2013-01-25
Скачать шаблон

Время от времени я буду адаптировать и выкладывать свободные шаблоны Blogspot с интегрированными виджетами Graddit. Первый пример mlnpics основан на шаблоне Queen от DZignine.
Главная страница:

Пост:

Ключевые моменты:
  • использованы виджеты: рейтинги, топы, агрегатор;
  • встроены скрипты замены ссылок "Prev" и "Next" на заголовки постов;
  • в меню отображаются статические страницы, в том числе страницы, на которых выводятся лучшие посты по различным категориям. Порядок показа постов в топах управляется виджетами Graddit и основан на среднем рейтинге по итогам голосования. Такой сортировки невозможно достичь исключительно средствами Blogspot;
  • в блоге возможна навигация на главной и между постами с помощют нажатия Ctrl + влево и Ctrl + вправо, так что посетителям не придётся искать ссылки и будет проще листать страницы.

Живое демо: http://mlnpics.blogspot.com.
Исходник шаблона пока не опубликован, в комментариях принимаю пожелания по улучшению/изменению шаблона. Ссылка на скачивание появится чуть позже.

Важно: в шаблоне нет авторской ссылки на Graddit, но есть ссылки на сайт автора оригинального шаблона, её удалять нельзя.

Скачать шаблон

Оцени и поделись
{[['']]}


Ещё больше полезного:

Blogger: сортируем посты по популярности

2012-11-04

Стандартно платформа Blogger предоставляет только две опции для сортировки постов: от новых к старым и наоборот. Виджеты Graddit дают возможность отобразить посты по убыванию или возрастанию их рейтинга. Посмотрите на эту страницу: http://fruitfulbookmarks-ru.blogspot.com/p/blog-page.html. На ней отображены 5 лучших постов из этого блога (по убыванию рейтинга). А на этой: http://fruitfulbookmarks-ru.blogspot.com/p/blogspot.html — анонсы лучших постов по теме "blogspot" (т.е. у которых есть метка blogspot).

Это не посты, а статические страницы, которые движок Blogger позволяет создавать. Если вы откроете исходный код этих страниц, то увидите, что на самом деле в них нет никаких постов, а лишь немного кода на javascript. Чтобы создать такую же страницу вам нужно:

  1. если вы всё ещё не создали аккаунт, сделайте это;
  2. создайте топ с нужными параметрами на закладке топов;
  3. В секции <head> своего шаблона подключите graddit-extras.js:
    <script src='http://static.graddit.com/js/graddit-extras.js' type='text/javascript'/>
  4. Создайте обычную HTML страницу, переключитесь в режим редактирования HTML и подключите jquery. Конечно, если эта библиотека ещё не подключена у вас в самом шаблоне:
    <script src='http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js' type='text/javascript'/>
  5. Добавьте функцию, которая будет отвечать за загрузку и обработку ваших постов:
    <script type='text/javascript'>
    function gradditLoadTopPosts(id) {
    var element = $("#" + id);
    if (element.length > 0) {
    var wrapperDiv = $("#top5");
    if (wrapperDiv.length == 1) {
    element.find("a").each(function(i, a) {
    var host = a.hostname;
    var blogHost = "fruitfulbookmarks-ru.blogspot";
    if (host.indexOf(blogHost) >= 0) {
    var docHost = document.location.host + "";
    var level1Doc = docHost.substring(blogHost.length, docHost.length);
    var level1Post = host.substring(blogHost.length, host.length);
    var link = a.href;
    if (level1Doc != level1Post) {
    link = link.replace(blogHost + level1Post, blogHost + level1Doc);
    }
    var containerId = "top_posts_" + i;
    wrapperDiv.append("<div id='" + containerId + "' style='display: none;'></div>");
    var container = $("#" + containerId);
    container.load(link);
    setTimeout(function() {
    var post = container.find("div[class='post hentry']");
    if (post.length > 0) {
    var newText = "";
    if (i > 0) {
    newText = "<hr style='width: 100%; clear: both;'/>"
    }
    newText += gradditCutText(post.html(), 900, 2) + "<" + "br/><" + "br/>";
    var startIdx = newText.indexOf("<h3 class=\"post-title entry-title\">");
    var endIdx = newText.indexOf("</h3>");
    newText = newText.substr(0, startIdx) + "<a href='" + link + "'>" + newText.substr(startIdx, endIdx - startIdx + 5) + "</a>" + newText.substr(endIdx, newText.length);
    container.html(newText);
    container.show();
    }
    }, 2000 * (i + 1));
    }
    });
    }
    }
    }
    </script>
    Пара слов об изменениях, которые вам нужно будет сделать, чтобы подстроить функцию под ваш блог:
    • #top5 - это id контейнера, вы увидите его ниже; также, в зависимости от шаблона, вам, возможно, придётся изменить имена классов, которые обрабатываются в функции. Экспериментируйте.
    • в строке var blogHost = "fruitfulbookmarks-ru.blogspot"; замените адрес блога на свой; не пишите домен страны (.ru, .co.uk) или .com!
    • при вызове функции для обрезания текста постов gradditCutText второй параметр - это максимальная длина текста, а третий - полезная опция, которая позволяет обрезать посты с точностью до слова (0 - ничего не делать, 1 - обрезать до слова, 2 - удлинять до слова). Если вы не хотите обрезать текст совсем, укажите оба паратметра равными 0;
  6. добавьте элемент-контейнер для постов и вызов топа с callback функцией:
    <div id="top5"></div>
    <div id="graddit_top_wrapper" style="visibility: hidden; display: none;"></div><script type="text/javascript" src="http://www.graddit.com/showtop/rus/31?id=graddit_top_wrapper&callback=gradditLoadTopPosts"></script>
    Не забудьте заменить ID топа (31 в этом примере) на свой собственный, который можно найти в коде топа в админке.

Всё готово. А ещё в топах появилась возможность фильтровать посты по меткам. То есть (если вы дружите с JS) можно на одной странице, например, показывать лучшие посты по категориям. Конечно, это не совсем сортировка, а просто отображение N лучших постов. Но ведь можно, скажем, показывать не 5, а 20 постов, разбить на страницы и приделать листалку страниц. Если это приобретёт популярность, я обазательно расширю функциональность.



Оцени и поделись
{[['']]}


Ещё больше полезного:

Рейтинг-виджет от Graddit

2011-11-11
    Инструкция для пользователей Tumblr здесь.

    Graddit представляет рейтинг-виджет, который вы легко сможете добавить на страницы своего сайта. Код виджета можно получить на странице рейтингов. У рейтингов гибкие настройки, но обо всём по порядку.

    На странице выбора виджета для демонстрации возможностей есть несколько рейтингов с предустановленными настройками, код которых вы сможете тут же скопировать и использовать в блоге. Среди них: рейтинги со звёздами в виде картинкок, рейтнги с символьными звёздами и просто с произвольными символами, рейтинги с отзывами, рейтинги вида +/-. Код специально подготовлен для использования в шаблонах Blogger, но есть и код в "сыром" виде:


    Если по какой-то причине вас не устраивает поведение или вид рейтингов по умолчанию, то вы можете по своему вкусу изменить параметры виджета. Вот некоторые из них (на примере общего кода)

<div id='rate' class='rate'>{[["&#9734;","&#9733;"]]}</div>

Этот элемент div содердит информацию о символах, которые будут использованы при отображении рейтинга: "&#9734;" соответствует незакрашенной звезде, "&#9733;" — закрашенной. id элемента важен, он передаётся на сервер (см. ниже).

<div id='stats'></div>

Этот элемент div будет содержать текст с количеством голосов. Его id также передаётся на сервер, но этот div может и отсутствовать, вместо него можно использовать предыдущий (rate) div.

<script type='text/javascript' src='http://www.graddit.com/rate/ rus/ 5/mjov07w?id=rate&stats=stats'></script>
обязательная часть, которую не стоит менять язык: rus или eng количество звёзд уникальный идентификатор рейтинга id элемента, куда будет помещён рейтинг id элемента, куда будет помещён текст (количество голосов)

Конечно, это не все возможные параметры. О некоторых речь пойдёт ниже, о других читайте следующие посты. Всё это касается внешнего вида и некоторых аспектов поведения виджета, но если вы хотите всё кардинально изменить, то специально для этого есть ещё один параметр: ...&callback=my_function_name

В этом случае после отображения рейтинга будет вызвана ваша JS функция my_function_name со следующими параметрами:
"key"уникальный идентификатор рейтинга
"id"id элемента div, в который будет помещён виджет
"stats"id элемента div, в который будет помещён текст (количество голосов)
"average"средний рейтинг
"amount"количество звёзд
"votes"количество голосов
"data"расшифровка голосов
"views"количество просмотров

Таким образом, вы обладаете полным контролем над виджетом.


Как добавить рейтинг-виджет в Blogger
  1. Выберите виджет, позже вам нужно будет скопировать код из закладки Blogger.
  2. В настройках блога перейдите на закладку Дизайн в старом интерфейсе Blogger; в новом интерфесе это пункт Template. Сохраните старый шаблон (кнопка Backup/Restore). Нажмите "Изменить HTML" и поставьте галочку напротив "Расширить шаблоны виджета":
    Старый интерфейс BloggerНовый интерфейс
  3. Сделать резервную копию шаблона можно и сейчас — просто выделите весь текст шаблона, скопируйте и сохраните в файле. В коде шаблона найдите строку "<data:post.body/>" и вставьте после неё код виджета. Если строка "<data:post.body/>" присутствует больше, чем в одном месте, и вы не уверены, куда именно вставить код виджета, то можно поэкспериментировать: вставить, например, "!!!", сохранить шаблон и проверить, угадали вы с местом или нет. Чтобы рейтинг отделить от текста парой пустых строк, вставьте перед ним <br/><br/>. Получится что-то вроде:
  4. В секцию <head>...</head> вашей страницы добавьте стили graddit:
    <link type="text/css" rel="stylesheet" href="http://static.graddit.com/css/graddit.css" />
  5. Сохраните шаблон и убедитесь, что рейтинг появился под всеми вашими постами. Если вы не хотите, чтобы рейтинг был виден на главной странице блога, а появлялся только при открытии постов, в коде виджета замените
    "<b:if cond='data:blog.pageType != &quot;static_page&quot;'>"
    на
    "<b:if cond='data:blog.pageType == &quot;item&quot;'>"

    Справа сверху на главной странице отображается пульс рейтингов — последние записи на различных сайтах и блогах, за которые голосуют, облако меток наиболее читаемых постов и картинки страниц, на которых недавно проголосовали люди.

    Сервис также предоставляет статистику голосований, а ещё есть личный кабинет — очень полезная штука, где можно настроить виджеты лучших и похожих постов, но об этом речь пойдёт позже.

    Ещё немного про поведение виджета. Наведя (и подержав пару секунд) курсор мыши на виджет можно получить расшифровку голосов:

Это можно отключить — удалите параметры ...&info= и ...&info_delay= из кода виджета. Вы можете контролировать время задержки появления расшифровки при помощи параметра info_delay, значение которого — количество секунд, до появления информации. Вы можете полностью контролировать всплывающее окно при помощи стилей, в т.ч. удалять нежелательные элементы. Для этого, правда, придётся где-то разместить аналог файла graddit.css и поддерживать его самостоятельно.



Ниже — наглядный пример, как это будет выглядеть в блоге.
И ещё один пример здесь: http://blogger.omg-linux.ru/2011/11/reitingi-dlya-bloga.html
Рейтинг-виджет от Graddit, 4.72 out of 5 based on 50 ratings

Оцени и поделись
{[['']]}


Ещё больше полезного:

Интеграция сервиса Fruitful Bookmarks с сайтом на примере блог-площадки Blogger (blogspot.com)

2011-10-19
    Забегая вперёд, заметим, что результат интеграции вы можете увидеть на этом блоге: появились дополнительные элементы управления слева и справа на странице.
    При помощи ссылок слева (↓ и ↑) посетители могут сохранять и восстанавливать позицию просмотра блога. Конечно, это лишь часть функционала, предоставляемого полноценным хранилищем Fruitful Bookmarks, но зато она работает без этого самого хранилища, пользователям (и даже владельцу сайта или блога) не нужно его создавать. Сделать это предельно просто: нужно взять второй скрипт со страницы http://www.fruitfulbookmarks.com/#site, немного модифицировать, а именно, заменить все символы & на &amp; (всего их 4), так как Blogger экранирует эти символы в шаблонах, и добавить его в шаблон блога, например, в самом конце перед закрывающимся тегом </body>.

    Элементы справа помогают вашим посетителям сообщать об ошибках и опечатках, найденных в тексте, а вам — отслеживать эту информацию и исправлять найденные недочёты. Для получения панели управления опечатками следуйте инструкции из предыдущего поста: http://fruitfulbookmarks-ru.blogspot.com/2011/10/blog-post.html, модифицируйте стили по собственному желанию и получите удобный инструмент уведомления об ошибках и опечатках в вашем блоге на blogspot.com.

Оцени и поделись
{[['']]}


Ещё больше полезного:

Отслеживание ошибок и опечаток в текстах на вашем сайте или блоге

2011-10-11

    Посетители вашего сайта или блога могут помогать вам с исправлением ошибок, которые, к сожалению, иногда появляются в текстах. Опечатки, неточности, пропущенные знаки препинания — всё это будет найдено пользователями и с помощью нового сервиса Fruitful Bookmarks запротоколировано для последующего исправления. Для этого необходимо сделать следующее:

  1. перейти на сайт Fruitful Bookmarks;
  2. создать новое хранилище, вам понадобится идентификатор (ID, состоящий из 10 знаков) этого хранилища для последующих шагов;
  3. добавить в код HTML ваших страниц стили и элементы для управления правками (смотрите пример ниже).


    Пример того, как могут выглядеть стили элементов управления правками (имена должны совпадать):
div.ffbs_correction_main {
position: fixed;
top: 40px;
right: 1px;
width: 240px;
height: 33px;
border: 1px solid #20cc20;
z-index: 9999;
background: #ffe0e0;
padding-left: 2px;
padding-right: 2px;
overflow: auto;
opacity: 0.8;
-moz-border-radius: 4px;
border-radius: 4px;
font-size: 10px;
}

span.ffbs_moreless {
border-bottom: 1px dashed black;
font-size: 8px;
}

span.ffbs_moreless:hover {
cursor: pointer;
}

span.ffbs_lookup {
border-bottom: 1px dashed black;
font-size: 10px;
}

span.ffbs_lookup:hover {
cursor: pointer;
}

span.ffbs_highlight {
color: red;
background: #d0d0d0;
border: 1px dotted #0099cc;
}

    Пример загрузки элементов управления правками:
    <script src='http://www.fruitfulbookmarks.com/correction/init/ID ВАШЕГО ХРАНИЛИЩА/rus/collapse'></script>

    Немного подробнее об адресе http://www.fruitfulbookmarks.com/correction/init/ID ВАШЕГО ХРАНИЛИЩА/rus/collapse:
  • ID ВАШЕГО ХРАНИЛИЩА — этот тот самый 10-символьный идентификатор недавно созданного вами хранилища;
  • rus — язык элементов управления и сообщений. Здесь два возможных варианта: rus и eng;
  • collapse говорит о том, что элементы управления изначально будут отображаться в коротком виде, т.е. без отображения самих правок. Другая возможная опция — expand;

    Чтобы добавить правку, пользователю необходимо выделить текст, содержащий ошибки, нажать Ctrl+Enter и в открывшемся окне предложить исправленный вариант. После обновления страницы правка отобразится в "окне" управления правками, раскрыв которое администратор ресурса сможет перейти к проблемному месту в тексте или удалить правку.
    Пример работы вы можете посмотреть прямо сейчас — управление правками находится справа от этого сообщения.

    О выявленных ошибках в работе правок сообщайте в комментариях.

    P.S. И немного ошибок — вдруг в тексте сверху их нет.

Оцени и поделись
{[['']]}


Ещё больше полезного: