Привет, дорогие мои друзья! Давненько я здесь не появлялся с новыми предложениями для Вас. Времени совершенно не хватает. Занимаюсь новыми проектами. Купил домены, хостинг (совсем не дорого) и создал свои блоги на движке WordPress. Знаете, отличная вещь. Больше возможностей, а следовательно в ближайшей перспективе надеюсь на хорошие заработки (тьфу, тьфу, чтоб не сглазить). И вам советую сделать тоже самое. Если возникнет желание, напишите, помогу, расскажу где, что, когда и сколько. А теперь давайте перейдём к нашей основной теме.

Виджет случайных сообщений для вашего блога

Кто не знаком с принципом работы виджета, коротко объясню. Каждый раз при обновление страницы, гаджет будет выводить разные случайные посты, то есть, ни когда не угадаешь, что он покажет в следующий раз. Виджет будет вытягивать совсем старые статьи, а это увеличит просмотры страниц. Вот как то так. Смотрите работу виджета тут. Обновляйте страницу и Вы всё увидите. Скриншот:
Случайные сообщения.
Для того, что бы установить красивый виджет случайных сообщений в блог, зайдите в панель инструментов blogger, выберите шаблон - дизайн - добавить гаджет HTLM/JavaScript и в его поле вставить код:

<style scoped="" type="text/css">
#random-posts img{float:left;margin-right:10px;border:1px solid #999;background:#FFF;width:36px;height:36px;padding:3px}
</style>
<ul id='random-posts'>
<script type='text/javaScript'>
var rdp_numposts=5;
var rdp_snippet_length=150;
var rdp_info='no';
var rdp_comment='Комментарии';
var rdp_disable='Off комментарии';
var rdp_current=[];var rdp_total_posts=0;var rdp_current=new Array(rdp_numposts);function totalposts(json){rdp_total_posts=json.feed.openSearch$totalResults.$t}document.write('<script type=\"text/javascript\" src=\"/feeds/posts/default?alt=json-in-script&max-results=0&callback=totalposts\"><\/script>');function getvalue(){for(var i=0;i<rdp_numposts;i++){var found=false;var rndValue=get_random();for(var j=0;j<rdp_current.length;j++){if(rdp_current[j]==rndValue){found=true;break}};if(found){i--}else{rdp_current[i]=rndValue}}};function get_random(){var ranNum=1+Math.round(Math.random()*(rdp_total_posts-1));return ranNum};
</script>
<script type='text/javaScript'>
function random_posts(json){a=location.href;y=a.indexOf('?m=0');for(var i=0;i<rdp_numposts;i++){var entry=json.feed.entry[i];var rdp_posttitle=entry.title.$t;if('content'in entry){var rdp_get_snippet=entry.content.$t}else{if('summary'in entry){var rdp_get_snippet=entry.summary.$t}else{var rdp_get_snippet="";}};rdp_get_snippet=rdp_get_snippet.replace(/<[^>]*>/g,"");if(rdp_get_snippet.length<rdp_snippet_length){var rdp_snippet=rdp_get_snippet}else{rdp_get_snippet=rdp_get_snippet.substring(0,rdp_snippet_length);var space=rdp_get_snippet.lastIndexOf(" ");rdp_snippet=rdp_get_snippet.substring(0,space)+"&#133;";};for(var j=0;j<entry.link.length;j++){if('thr$total'in entry){var rdp_commentsNum=entry.thr$total.$t+' '+rdp_comment}else{rdp_commentsNum=rdp_disable};if(entry.link[j].rel=='alternate'){var rdp_posturl=entry.link[j].href;if(y!=-1){rdp_posturl=rdp_posturl+'?m=0'}var rdp_postdate=entry.published.$t;if('media$thumbnail'in entry){var rdp_thumb=entry.media$thumbnail.url}else{rdp_thumb="http://lh3.ggpht.com/--Z8SVBQZ4X8/TdDxPVMl_sI/AAAAAAAAAAA/jhAgjCpZtRQ/no-image.png"}}};document.write('<li>');document.write('<img alt="'+rdp_posttitle+'" src="'+rdp_thumb+'"/>');document.write('<div><a href="'+rdp_posturl+'" rel="nofollow" title="'+rdp_snippet+'">'+rdp_posttitle+'</a></div>');if(rdp_info=='yes'){document.write('<span>'+rdp_postdate.substring(8,10)+'/'+rdp_postdate.substring(5,7)+'/'+rdp_postdate.substring(0,4)+' - '+rdp_commentsNum)+'</span>'}document.write('<div style="clear:both"></div></li>')}};getvalue();for(var i=0;i<rdp_numposts;i++){document.write('<script type=\"text/javascript\" src=\"/feeds/posts/default?alt=json-in-script&start-index='+rdp_current[i]+'&max-results=1&callback=random_posts\"><\/script>')};
</script>
</ul>
Сохраните гаджет. Перетащите его в нужное вам место на боковой панели. В коде можете настроить различный цвет. : 5, - указать количество вывода сообщений и т.д.

Добавлю ещё один виджет - Случайные сообщения без миниатюр

Выберите гаджет HTLM/JavaScript и в его поле вставить код:

<script type="text/javascript">
var randarray = new Array();var l=0;var flag;
var numofpost=5;function randomposts(json){
var total = parseInt(json.feed.openSearch$totalResults.$t,10);
for(i=0;i < numofpost;){flag=0;randarray.length=numofpost;l=Math.floor(Math.random()*total);for(j in randarray){if(l==randarray[j]){ flag=1;}}
if(flag==0&&l!=0){randarray[i++]=l;}}document.write('<ul>');
for(n in randarray){ var p=randarray[n];var entry=json.feed.entry[p-1];
for(k=0; k < entry.link.length; k++){if(entry.link[k].rel=='alternate'){var item = "<li>" + "<a href=" + entry.link[k].href + ">" + entry.title.$t + "</a> </li>";
document.write(item);}}
}document.write('</ul>');}
</script>
<script src="http://demo-school-blogger.blogspot.ru/feeds/posts/default?alt=json-in-script&start-index=1&max-results=1000&callback=randomposts" type="text/javascript"></script>
<div style="font-size:90%; text-align:right; text-shadow:2px 2px 2px #adadad;"></div>

Замените адрес блога http://demo-school-blogger.blogspot.ru на свой.

На этом позвольте попрощаться. До новых встреч. Желаю удачи во всём.

С уважением, Сергей - блог Всё для Blogger


Ух ты кнопочки! Понравилась статья? Поделитесь с друзьями в соцсетях:


30 коммент. :

  1. Иван Озаров25 апреля 2013 г., 22:56

    Виджет добавил, но в результате ничего не отобразилось, словно я его и не добвалял... Как быть?..

    ОтветитьУдалить
    Ответы
    1. Иван я понял почему у вас не работает виджет, надо просто подключить библиотеку jQuery и все заработает.

      Удалить
  2. Такого не может быть.

    ОтветитьУдалить
  3. Иван Озаров26 апреля 2013 г., 10:58

    Не хочет ничего показывать, и все тут

    ОтветитьУдалить
  4. Иван Озаров30 апреля 2013 г., 20:42

    На основе шаблона "Венецианское окно"...

    ОтветитьУдалить
  5. У меня установился в стандартном шаблоне.

    ОтветитьУдалить
  6. Ответы
    1. Регина, вам тоже надо подключит библиотеку jQuery и все заработает.

      Удалить
  7. Очень странно. На стандартном шаблоне работает.

    ОтветитьУдалить
  8. Не выходит, шабон стандартный

    ОтветитьУдалить
    Ответы
    1. Аскар, вот виджет установлен на стандартном шаблоне - http://demo-school-blogger.blogspot.ru/

      Удалить
  9. Ответы
    1. Видать из за шаблонов.Где то работает, а где то нет. ;-(

      Удалить
  10. Здравствуйте!подскажите пжлста как сделать что бы сообщение открывалось в этом же окне,а не новом?в этом классном виджете.спасибо заранее

    ОтветитьУдалить
  11. Здравствуйте! Мне очень нравится этот виджет, стал и работал он у меня отлично до вчерашнего дня. Вчера стало появляться окошко о необходимости авторизации с сообщением сервера: google code subversion repository. И виджет перестал работать, к сожалению(( Можно это как-то поправить, пожалуйста?)

    ОтветитьУдалить
  12. Присоединяюсь к последнему вопросу. Постоянно появляется окошко с авторизацией, пока не нажмешь ОТМЕНА, зайти в блог не возможно! ;(( Удалила этот виджет, все равно требуют авторизации.

    ОтветитьУдалить
    Ответы
    1. Добавил новые виджеты случайных сообщений, можете установить.

      Удалить
  13. требует авторизацию на свалке кодов. некамильфо [-(

    ОтветитьУдалить
  14. ( Можно это как-то поправить, пожалуйста?) -
    поправить легко, закачав файл rdmrecpostajax.js к себе на дропбокс в папку "паблик" и использовав свою ссылку типа src="https://dl.dropboxusercontent.com/u/ВАШ_ID/rdmrecpostajax.js" type="text/javascript" , и нечего здесь "разбираться" четыре месяца :d

    ОтветитьУдалить
    Ответы
    1. Сразу видно тупой, если ни фига не разбираешься не лезь. =))

      Удалить
    2. виджет работает. Но картинки не отображаются. Помогите пожалуйста починить.
      Вот блог: http://dddmolier.blogspot.com/

      Удалить
    3. Андрей,так у вас миниатюр нету.Картинки слишком большие,может из за этого.Установите без картинок.Я во тут выложил новенькое - http://shkolablogger.ru/vidzhetyi-i-gadzhetyi-dlya-blogger-blogspot.html

      Удалить
    4. У меня специфика такая, что обязательно надо с миниатюрами. иначе нет смысла добавлять. возможно есть способ сделать миниатюры?

      Удалить
    5. Андрей, сделайте первые картинки меньше, тогда будет то, что вам надо.

      Удалить
    6. Насколько меньше? Какой должен быть максимальный размер? Возможно ли както автоматизировать? изменить 10тысяч картинок очень времязатратно.

      Удалить
    7. Андрей, а вы пробовали изменить в коде размер картинок с 36х36 на более большее значение? Попробуйте может получится.

      Удалить
  15. Попробовал поменять на 600х600. Ничего не получилось. Этот размер отвечает за размер маленьких выводимых картинок.

    ОтветитьУдалить
    Ответы
    1. Да вы что, какие 600. Сделайте 60х60. Я вам про размер выводимых миниатюр и говорил.

      Удалить
  16. Спасибо! Хороший виджет - www.workaz.ru, но у меня отображаются только картинки и названия статей, причём только по горизонтали! А можно как то сделать, чтобы отображения были по вертикали с описанием? СпасибО!

    ОтветитьУдалить