Случайные посты могут быть полезным для новых...

Случайные посты могут быть полезным для новых читателей или посетителей блога, которые только-только открывают ваш проект для себя. Наиболее часто эти ссылки располагают после постов или в сайдбаре. Мало кто будет просматривать весь архив блога, а, увидев несколько ссылок на другие материалы после статьи и найдя для себя что-то интересное, читатель обязательно по ним перейдет. Конечно, чаще всего в конце постов располагают не просто случайные ссылки, а те, которые связаны с тематикой статьи. Размещая данный блок в сайдбаре, авторы часто совмещают его со списками последних статей и комментариев. Перед тем, как перейти к описанию процесса установки, хочу сказать пару слов благодарности автору.

Случайные посты могут быть полезным для новых...

Он ведет блог под названием «Немецкий дневник». Спасибо за разработку! Заходите, читайте блог. Установить случайные посты можно двумя способами – простым добавлением кода и с недавних пор с помощью виджета. Я рассмотрю оба варианта, так как это может пригодиться. Вариант1. Заходим в «Макет» – «Редактирование HTML», где перед закрывающимся тегом добавляем код:

 // // declare some variables var blog_url = 'http://YOUR_BLOG_NAME. blogger. com'; // blog main url -> don't forget write your blog url var randomCnt = 5; // number of random links var donate = true; // if you want to say thank you, let this variable be true // tests, if an element exists in given array function in_array(test_arr, test_number) { // create from array a string separated by # test_arr_str = test_arr. join('#'); test_arr_str = '#' + test_arr_str + '#'; // create search item to search in converted string test_number_str = '#' + test_number + '#'; // look for search item in converted string test = test_arr_str. indexOf(test_number_str); return test; } // show donate url function showDonatePost() { // url of donate post url = 'http://ametov. net'; // get title of a post title = 'Ametov. net'; titleData = document. createTextNode(title); tag_a = document. createElement('a'); tag_a. href = url; tag_li = document. createElement('li'); tag_li. id = 'donate_widget_random_posts'; tag_a. appendChild(titleData); tag_li. appendChild(tag_a); document. getElementById('widget_random_posts').appendChild(tag_li); } // make a post visible - show post url and title function showPost(root) { var feed = root. feed; var entries = feed. entry || []; var entry = feed. entry[0]; for(var j=0; j { if (entry. link[j].rel == 'alternate') { // get url of a post url = entry. link[j].href; // get title of a post title = entry. link[j].title; // if there is no title replace it with url if (title == '') title = url; titleData = document. createTextNode(title); tag_a = document. createElement('a'); tag_a. href = url; tag_li = document. createElement('li'); tag_a. appendChild(titleData); tag_li. appendChild(tag_a); if (donate) { document. getElementById('widget_random_posts').insertBefore(tag_li, document. getElementById('donate_widget_random_posts')); } else { document. getElementById('widget_random_posts').appendChild(tag_li); } } } } // get info as json string for given post function getPost(postNumber) { script = document. createElement('script'); script. src = blog_url + '/feeds/posts/summary? start-index='+postNumber+'&max-results=1&alt=json-in-script&callback=showPost'; script. type = 'text/javascript'; document. getElementsByTagName('head')[0].appendChild(script); } // get random posts for given blog function getRandomPosts(root) { var feed = root. feed; var total = parseInt(feed. openSearch$totalResults.$t,10); var randomNumber, test; var random_numbers = new Array(randomCnt); if (donate) showDonatePost(); for (var i=0; i { randomNumber = -1; test = -1; // this cicle is to avoid of post repeats do { randomNumber = Math. ceil(Math. random()*total); test = in_array(random_numbers, randomNumber); } while(test!= -1) random_numbers[i] = randomNumber; getPost(randomNumber); } } // the main function, which get first number of posts and from which // would be called all other functions above function showRandomPosts() { var script = document. createElement('script'); script. type = 'text/javascript'; script. src = blog_url + '/feeds/posts/summary? max-results=0&alt=json-in-script&callback=getRandomPosts'; document. getElementsByTagName('head')[0].appendChild(script); } //]]> 

Здесь в самом начале есть несколько параметров, на которые следует обратить внимание. blog_url – ссылка на ваш блог (http://мой-блог. blogger. com) randomCnt – количество случайных ссылок. donate – ставите true, если захотите поблагодарить автора за скрипт и false в противном случае. Далее в шаблоне или создав в сайдбаре элемент типа HTML/Javascript добавляем код:

 // main function call showRandomPosts(); 

Он отвечает непосредственно за вывод ссылок. Вариант2. Виджет случайных постов.

Случайные посты могут быть полезным для новых...

В нем кода немного поменьше, так как скрипт располагается вне блога. Чтобы установить заходите в раздел панели управления «Макет», добавляете элемент типа HTML/JavaScript, куда вставляете код:

 var blog_url = 'http://blogohelp. blogspot. com'; var randomCnt = 5; var donate = true; // main function call showRandomPosts(); 

Здесь используются те же переменные, что и в предыдущем варианте. Если есть какие-то вопросы, можете задавать в комментариях или на сайте автора скрипта. Не забывайте указывать в переменных адрес своего блога. Единственное, что у меня не получилось работать с BlogSpot проектом, у которого подключен купленный домен, а так работу виджета и самого скрипта я протестировал. P. S. Предлагаю почитать мой обзор: LinkedIn – лучшая деловая социальная сеть. Футбол лига чемпионов – новости, команды, результаты. Оригинальные фонтаны на любой вкус.

Понравилась статья? Получай обновления и будь всегда в курсе событий!
Подпишись на RSS или
blog comments powered by Disqus