Как да поставя приставка за последните публикации в сайта

Притурки за показване на последно добавените публикации за blogger страници има не една и две. От Blogger полагат усилия и тези притурки да стават все по-лесно приложими за обикновения потребител. Аз, обаче се сблъсках с проблем, решение на който в откритите от мен такива притурки за последните публикации в сайта нямаше.

Проблемът е свързан с т. нар. sticky posts или предатирани публикации. Когато заредите "Направи си сайт", ще видите четири публикации, които би трябвало при поместване на нова публикация да се изместват от нея, но на практика новата публикация винаги застава зад тях. Точно това е ролята на предатирането на публикациите. Просто в blogger няма друг начин да накараме няколко, точно определени публикации, да се зареждат винаги преди другите. Та когато си инсталирах от разработените и налични в blogger притурки за последните публикации установих, че тези ми четири публикации присъстват и в списъка, генериран от джаджата. Пробвах една, втора, трета джаджа и в нито една не открих възможност да изключа тези четири публикации от показването им. Накрая се хванах и си направих моя приставка за последни публикации, която сега ви предоставям и на вас. Препоръчвам ви я като решение и за вашия блог, заради възможностите да я персонализирате изцяло според вашите нужди.

Вярно, че основното предимство на решението по-долу, е възможността да определите някакъв брой последни публикации, които да бъдат изключени от показване. Т.е. да показвате на посетителите си последните публикации след 3-тата, например. Но ако сега тази функция не ви е нужна, то не значи, че няма да ви потрябва, нали!

Инсталация на притурка за последни публикации

Инсталирането на приставката е много лесно - просто копирайте и поставете долния код на желаното за показването й място във вашия блог, например в HTML/Java секция в страничната му лента. Тя ще се появи с форматирането на самото място, принципно указано в кода на вашия сайт. За да заработи, е нужно само да замените в кода "adres-na-saita.com" с точния адрес на вашия сайт в блогър.
<script src="http://www.google.com/jsapi" type="text/javascript"></script>
<script type="text/javascript">
google.load("gdata", "1.x", { packages : ["blogger"] });
</script>
<script type="text/javascript">
function _run() {
var content = document.getElementById('content');
var bloggerService = new google.gdata.blogger.BloggerService('com.appspot.interactivesampler');

var feedUri = 'http://adres-na-saita.com/feeds/posts/default?start-index=1&max-results=10';

var handleBlogPostFeed = function(postsFeedRoot) {
var posts = postsFeedRoot.feed.getEntries();
var html = '';
html += '<ul>';
for (var i = 0, post; post = posts[i]; i++) {
var postTitle = post.getTitle().getText();
var postURL = post.getHtmlLink().getHref();
html += '<li><a style="text-decoration: none;" href="' + postURL + '">'
+ postTitle
+ '</a></li>';
}
html += '</ul>';
content.innerHTML = html;
};
var handleError = function(error) {
content.innerHTML = '<pre>' + error + '</pre>';
};
bloggerService.getBlogPostFeed(feedUri, handleBlogPostFeed, handleError);
}
google.setOnLoadCallback(_run);
</script>
<div id="content" style="margin:0; padding:0; width:100%;">Зареждане...</div>
<div align="right" style="font-size:80%;"><a href="http://www.napravisisait.com/2009/09/recent-posts-gadget-for-bloggers.html" target="_blank" title="Притурка за последните публикации в blogger-блог">Вземи тази притурка!</a></div>
Можете да използвате притурката и в случай, че искате да поставите в сайта си джаджа, показваща последните публикации на друг сайт. За целта просто заменете адреса "http://adres-na-saita.com/feeds/posts/default" с адреса на хранилката (RSS feed) на нужния сайт и готово. В този случай обаче, може да искате джаджата да показва от кой сайт именно идват тези публикации. Тогава, използвайте долния код:
<script src="http://www.google.com/jsapi" type="text/javascript"></script>
<script type="text/javascript">
google.load("gdata", "1.x", { packages : ["blogger"] });
</script>
<script type="text/javascript">
function _run() {
var content = document.getElementById('content');
var bloggerService = new google.gdata.blogger.BloggerService('com.appspot.interactivesampler');

var feedUri = 'http://adres-na-saita.com/feeds/posts/default?start-index=1&max-results=10';

var handleBlogPostFeed = function(postsFeedRoot) {
var posts = postsFeedRoot.feed.getEntries();
var html = '';
html += '<dl>'
+ '<dt><strong>Източник:</strong> '
+ '<a href="'
+ postsFeedRoot.feed.getLink('alternate').getHref()
+ '">'
+ postsFeedRoot.feed.getTitle().getText()
+ '</a></dt>';
html += '<dd><ul>';
for (var i = 0, post; post = posts[i]; i++) {
var postTitle = post.getTitle().getText();
var postURL = post.getHtmlLink().getHref();
html += '<li><a style="text-decoration: none;" href="' + postURL + '" target="_blank">'
+ postTitle
+ '</a></li>';
}
html += '</ul></dd>';
content.innerHTML = html;
};
var handleError = function(error) {
content.innerHTML = '<pre>' + error + '</pre>';
};
bloggerService.getBlogPostFeed(feedUri, handleBlogPostFeed, handleError);
}
google.setOnLoadCallback(_run);
</script>
<div id="content" style="margin:0; padding:0; width:100%;">Зареждане...</div>
<div align="right" style="font-size:80%;"><a href="http://www.napravisisait.com/2009/09/recent-posts-gadget-for-bloggers.html" target="_blank" title="Притурка за последните публикации в blogger-блог">Вземи тази притурка!</a></div>

Настройка на приставката

Всички параметри, които можете да персонализирате в горните два кода са оцветени в оранжево:
  • start-index=1 - номер на публикацията, от която да започва списъка (променете само цифрата)
  • max-results=10 - брой на публикациите, които да бъдат включени
  • style="text-decoration: none;" - този атрибут премахва подчертаването на връзките в списъка
  • target="_blank" - при наличието на този атрибут, връзките от списъка ще се отварят в нова страница
  • id="content" style="..." - ако разбирате от HTML и CSS редакция, ще можете да промените дори визията на притурката , макар че това не би трябвало да ви се наложи, тъй като както казах, тя ще вземе настройките, които вашият сайт вече има за съответното място
  • Източник, Зареждане... - можете да смените тези текстове с всеки друг, който смятате за по-удачен
Е, от този по-лесен начин да се сдобиете с така полезната притурка за последни публикации в блогър, здраве му кажи. Честито!

Ако информацията тук ви е била интересна или съм ви бил полезен, можете да ме подкрепите или просто да препоръчате този материал от бутона по-долу. Ще се радвам да чуя и коментари от ваша страна.

Вижте още:
Споделете тази статия от "Направи си сайт!" в още мрежи и/или гласувайте за нея!

1 коментара:

Unknown каза...

От 1 час се чудех как да изкарам ботони с публикациите в блога , благодаря много това свърши прекрасна работа

Публикуване на коментар

Моля, имайте предвид, че коментарът ви ще бъде одобрен само ако пишете на кирилица. Можете да използвате някои HTML оператори, например <b>, <i>, <a>.
Благодаря ви!