如何只在Blogger的首页或某一页显现插件
这个方法其实是从在BloggerTricks.com的这篇文章里看到的,原文为英文,请小心慎入~
其实如果按照平常的添加插件的方法的话,插件会显示在你的部落格的每一页。问题是偶尔还是会有需要只出现在首页,或者只出现在某一特定文章的插件。如果你有这样的要求的话,那这篇文章就很有帮助了。
首先先到Blogger控制台的布局——>修改HTML,然后勾选扩展窗口小部件模板,接着,当然就是先备份,以免出现大家都不愿意看到的结果(我以前试过因此被逼重新安装我的模板……包括我另外添加的一些功能……)。
接着,我们就要寻找已经被添加了的插件的代码,要注意的是,这些代码的开头都会是<b:widget id=的
例子:标签的插件的代码开头会是类似以下如此
<b:widget id='Label1' locked='false' title='Title' type='Label'>
然后HTML插件代码的开头会是类似如此
<b:widget id='HTML1' locked='false' title='' type='HTML'>
至于要怎样找到你所要更换的插件的代码,没有什么好方法的,打开Page Source一行行慢慢找吧。
Firefox:View >> Page Source
IE:View >> Source
然后在你要修改的b:widget id那行代码的下方,你会看到
<b:includable id='main'>
然后在这句的下方添加
<b:if cond='data:blog.url == data:blog.homepageUrl'>
还没结束,最后一个步骤就是找出和b;includable id相对应的</b:includable>,在之前添加一个</b:if>,这才算结束了。
以下是一个例子:
<b:widget id='HTML2' locked='false' title='' type='HTML'>
<b:includable id='main'>
<b:if cond=’data:blog.url == data:blog.homepageUrl’>
<!-- only display title if it's non-empty -->
<b:if cond='data:title != ""'>
<h2 class='title'><data:title/></h2>
</b:if>
<div class='widget-content'>
<data:content/>
</div>
<b:include name='quickedit'/>
</b:if>
</b:includable>
</b:widget>
红色那两行便是插件的代码范围,蓝色的那两行便是你需要寻找的,粗体的那两行就是你需要添加的。
这样一来,相关的插件便只会在首页显现了。
至于如果只是不要在首页显现的话,步骤一样,只是把最后添加的这行代码
<b:if cond='data:blog.url == data:blog.homepageUrl'>
更换成这行代码
<b:if cond='data:blog.pageType == "item"'>
若是只要在特定的文章那页显示的话,步骤也是一样,也只是在最后时,添加这行代码
<b:if cond='data:blog.url == "Blog Post URL"'>
就成了!
如果不明白的话就请踊跃发问吧!
其实不只是页面元素,对于模板中的其他东西也是可以的
回复删除To Pstrey:
回复删除意思是侧栏,顶栏等地方都可以吗?
应该说,模板中的任何代码都是可以的,比如那个阅读全文就有用到这个
回复删除哦哦,了!多谢指点了~
回复删除通过html小工具嵌入waline评论后,首页一样显示这个评论系统,一直没有解决办法,又不懂技术,寻求AI工具也没鸟用,没想到十几年前你的方法仍然管用,谢谢。看了一下你的博客,没想到还没有弃用,佩服。
回复删除