2023年5月23日星期二

为Goggle Blogger添加自动文章摘要

Blogger首页是默认全文显示的,如果每个文章都很长,阅读体验很差,Blogger虽然有插入自动阅读标示,这样首页显示的时候就显示插入点以前的地方。但是要手动,而且形成的摘要文字长度不一,不美观。通过在网上搜索,找到一篇博客,虽是英文,好在有视频教程,照猫画虎,最后成功实现。

原文链接:http://petrus-think.blogspot.com/2016/04/goggle-blogger.html
1. 模板-修改HTML
2. 找到</head>
3. 在前插入以下代码:
<script type='text/javascript'>
img_thumb_width = 180; // Image Thumbnail Width
img_thumb_height = 180; // Image Thumbnail Height
summary_noimg = 500; // Length of Summary Text if no image is Used
summary_img = 400; // Length of Summary Text if post has Image Thumbnail
</script>
<script type='text/javascript'>
//<![CDATA[
function removeHtmlTag(strx,chop){
if(strx.indexOf("<")!=-1)
{
var s = strx.split("<");
for(var i=0;i<s.length;i++){
if(s[i].indexOf(">")!=-1){
s[i] = s[i].substring(s[i].indexOf(">")+1,s[i].length);
}
}
strx = s.join("");
}
chop = (chop < strx.length-1) ? chop : strx.length-2;
while(strx.charAt(chop-1)!=' ' && strx.indexOf(' ',chop)!=-1) chop++;
strx = strx.substring(0,chop-1);
return strx+'...';
}
function createSummaryAndThumb(pID){
var div = document.getElementById(pID);
var imgtag = "";
var img = div.getElementsByTagName("img");
var summ = summary_noimg;
if(img.length>=1) {
imgtag = '<span style="overflow:hidden; border: none; margin:0 15px 10px 0; float:left; max-height:'+img_thumb_height+'px;width:auto;"><img src="'+img[0].src+'" width="'+img_thumb_width+'px" height="auto"/></span>';
summ = summary_img;
}
var summary = imgtag + '<div>' + removeHtmlTag(div.innerHTML,summ) + '</div>';
div.innerHTML = summary;
}
//]]>
</script>

说明:
summary_noimg = 500:是指如果文章的长度少于430个字符,就不插入摘要,直接显示全文;
summary_img = 400:指如果文章有图片的话就把图片转化成缩略图在首页显示;
img_thumb_height = 180:指形成的缩略图的高度;
img_thumb_width = 180:指形成的缩略图的宽度;
上面的数值可以根据自己的要求更改;
4. 利用Ctrl+F功能找到<data:post.body/>
把找到的<data:post.body/>都替换成如下代码(我找到了两处):
<b:if cond='data:blog.pageType == &quot;static_page&quot;'><br/>
<data:post.body/>
<b:else/>
<b:if cond='data:blog.pageType != "item"'>
<div expr:id='"summary" + data:post.id'><data:post.body/></div>
<script type='text/javascript'>createSummaryAndThumb("summary<data:post.id/>");
</script> 
<span class='jump-link' style='float:right;padding-top:20px;'><a expr:href='data:post.url + &quot;#more&quot;' expr:title='data:post.title'><data:post.jumpText/></a></span>
</b:if>
<b:if cond='data:blog.pageType == "item"'><data:post.body/></b:if>
</b:if>

最后保存模板,OK!

Ditulis Oleh : alipada // 五月 23, 2023
Kategori:

0 comments: