Blogger Arşiv Sayfasında Tüm Yayınları Listelemek



Blogger Arşiv Sayfası Kodu 150 Yayından Fazlası Gösterilemiyor Çözümü

Her internet sitesi veya blogu için arşiv sayfası önemli bir listeleme aracıdır. Özellikle eski yayınların karanlıkta kalmaması ve ziyaretçilerin aradığını daha kolay bulmaları için gerekli bir özellik olarak mutlaka bir site sayfası olarak yer verilmelidir.

Blogger Tüm Yayınları (150+) Gösteren Arşiv Sayfası (SiteMaps) Oluşturmak

Google, Haziran 2017 de getirdiği güncelleme ile tüm web sitelerinin içeriklerini Beşyüzerli paketler yerine 150'şer paketler halinde beslemeleri almaya başladı. (Bence Binerli paketler halinde alsa daha iyi olurdu ama neyse değişikliğe uyum sağlam gerekir). Dolayısı ile bu paketleri kullanan eski kodlarda 150 yayından sonrasını listelememe sorunu oluştu. 


Blogger için bir arşiv listeleme kodu üzerinden örnek verelim:



<script type="text/javascript">
function LoadTheArchive(TotalFeed)
{
var PostTitles = new Array();
var PostURLs = new Array();
var PostYears = new Array();
var PostMonths = new Array();
var PostDays = new Array();
if("entry" in TotalFeed.feed)
{
var PostEntries=TotalFeed.feed.entry.length;
for(var PostNum=0; PostNum<PostEntries ; PostNum++)
{
var ThisPost = TotalFeed.feed.entry[PostNum];
PostTitles.push(ThisPost.title.$t);
PostYears.push(ThisPost.published.$t.substring(0,4));
PostMonths.push(ThisPost.published.$t.substring(5,7));
PostDays.push(ThisPost.published.$t.substring(8,10));
var ThisPostURL;
for(var LinkNum=0; LinkNum < ThisPost.link.length; LinkNum++)
{
if(ThisPost.link[LinkNum].rel == "alternate")
{
ThisPostURL = ThisPost.link[LinkNum].href;
break
}
}
PostURLs.push(ThisPostURL);
}
}
DisplaytheTOC(PostTitles,PostURLs,PostYears,PostMonths,PostDays);
}
function DisplaytheTOC(PostTitles,PostURLs,PostYears,PostMonths,PostDays)
{
var MonthNames=["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"];
var NumberOfEntries=PostTitles.length;
var currentMonth = "";
var currentYear = "";
for(var EntryNum = 0; EntryNum < NumberOfEntries; EntryNum++)
{
NameOfMonth = MonthNames[parseInt(PostMonths[EntryNum],10)-1]
if (currentMonth != NameOfMonth || currentYear != PostYears[EntryNum]) {
currentMonth = NameOfMonth;
currentYear = PostYears[EntryNum];
document.write("<div class='dateStyle'>" + currentMonth+" "+currentYear+" </div>");
}
document.write('<a href ="'+PostURLs[EntryNum]+'"><div class=dayStyle>'+parseInt(PostDays[EntryNum],10)+":&nbsp;&nbsp;</div> "+PostTitles[EntryNum]+"</a><br />");
}
}
</script>

<script src="https://www.webkenti.net/feeds/posts/default?max-results=999&amp;alt=json-in-script&amp;callback=LoadTheArchive"> </script>

<!--ADDITION-->

<script src="https://www.webkenti.net/feeds/posts/default?max-results=150&start-index=151&alt=json-in-script&callback=LoadTheArchive"></script>

<script src="https://www.webkenti.net/feeds/posts/default?max-results=150&start-index=301&alt=json-in-script&callback=LoadTheArchive"></script>

<script src="https://www.webkenti.net/feeds/posts/default?max-results=150&start-index=451&alt=json-in-script&callback=LoadTheArchive"></script>

<script src="https://www.webkenti.net/feeds/posts/default?max-results=150&start-index=601&alt=json-in-script&callback=LoadTheArchive"></script>

<script src="https://www.webkenti.net/feeds/posts/default?max-results=150&start-index=751&alt=json-in-script&callback=LoadTheArchive"></script>

<script src="https://www.webkenti.net/feeds/posts/default?max-results=150&start-index=901&alt=json-in-script&callback=LoadTheArchive"></script>


<!--CUSTOMIZATION-->

<style type="text/css">
.dateStyle {
color:#000;
font-weight:bold;
background-color:#f6f6f6;
font-size: 18px;
font-family: Roboto, sans-serif;
margin-top: 20px;
padding: 2px;
}

.dayStyle {
color:#000;
font-weight:bold;
font-family: Roboto, sans-serif;
display: inline-block;
padding: 2px;
}
</style>



https://www.webkenti.net : Blog URL adresiniz.


Blogumuz da kullandığınız arşiv listeleme kodunda örnekte verildiği gibi aşağıdakine benzer bir script olacaktır.

<script src="https://www.webkenti.net/feeds/posts/default?max-results=999&amp;alt=json-in-script&amp;callback=LoadTheArchive"> </script>


Bu script hemen altına, yukarıdaki örnekteki gibi

<!--ADDITION-->

<script src="https://www.webkenti.net/feeds/posts/default?max-results=150&start-index=151&alt=json-in-script&callback=LoadTheArchive"></script>

<script src="https://www.webkenti.net/feeds/posts/default?max-results=150&start-index=301&alt=json-in-script&callback=LoadTheArchive"></script>

<script src="https://www.webkenti.net/feeds/posts/default?max-results=150&start-index=451&alt=json-in-script&callback=LoadTheArchive"></script>

<script src="https://www.webkenti.net/feeds/posts/default?max-results=150&start-index=601&alt=json-in-script&callback=LoadTheArchive"></script>

<script src="https://www.webkenti.net/feeds/posts/default?max-results=150&start-index=751&alt=json-in-script&callback=LoadTheArchive"></script>

<script src="https://www.webkenti.net/feeds/posts/default?max-results=150&start-index=901&alt=json-in-script&callback=LoadTheArchive"></script>


Kodlarını eklediğinizde arşiv kodlarınız tüm yayınları listelemeye başlayacaktır.


Ve bitti :)



Teşekkürler :

Justin H. Wilson : HTML kodlarını yazdı.

Singa Chu : JS kodlarını yazdı.

Rajeev Edmonds : HTTPS düzenlemesi yaptı.

Sarah Andres : CSS yapılanmasını yaptı.

Levent Kentoglu : HTML, JS, CSS düzenlemesini yaptı.


Yorumlar