Typecho怎么实现无插件eclipse语法高亮插件

Typecho实现评论无限嵌套显示实例
作者:用户
本文讲的是Typecho实现评论无限嵌套显示实例,
好吧,写下这个题目我就觉得好像又没什么可说的,所以我估计会写的很简略。。。谁叫我就是个懒胖子呢。。。
评论列表的输出,官方的是下面这个样子的
&?php $comments-&
好吧,写下这个题目我就觉得好像又没什么可说的,所以我估计会写的很简略。。。谁叫我就是个懒胖子呢。。。
评论的输出,官方的是下面这个样子的
&?php $comments-&listComments(); ?&
官方的输出在定义CSS的时候有点别扭,所以很多都用到了蚂蚱的那篇《自定义评论列表的样式》中的方法(蚂蚱是大神啊~~)
接下来的内容是基于蚂蚱的代码
嗯,废话了这么多,先上一下效果,就是下图这个样子的,第一次回复缩进,第二层之后便不再缩进,保持对齐
下面说实现方法
首先看蚂蚱原来的一段代码:
&?php function threadedComments($comments, $options) {
$commentClass = '';
if ($comments-&authorId) {
if ($comments-&authorId == $comments-&ownerId) {
$commentClass .= ' comment-by-author';
$commentClass .= ' comment-by-user';
$commentLevelClass = $comments-&_levels & 0 ? ' comment-child' : ' comment-parent';
&?php } ?&
&li id="li-&?php $comments-&theId(); ?&" class="comment-body&?php
if ($comments-&_levels & 0) {
echo ' comment-child';
$comments-&levelsAlt(' comment-level-odd', ' comment-level-even');
echo ' comment-parent';
$comments-&alt(' comment-odd', ' comment-even');
echo $commentC
这一段是判断评论 ID,父级评论还是子级评论以及判断评论 ID 的奇偶数什么的,其实就在子评论部分加一层深度的判断就可以了
修改后的代码如下:
&?php function threadedComments($comments, $options) {
$commentClass = '';
if ($comments-&authorId) {
if ($comments-&authorId == $comments-&ownerId) {
$commentClass .= ' comment-by-author';
$commentClass .= ' comment-by-user';
$commentLevelClass = $comments-&_levels & 0 ? ' comment-child' : ' comment-parent';
$depth = $comments-&levels +1; //添加的一句
&?php } ?&
&li id="li-&?php $comments-&theId(); ?&" class="comment-body&?php
if ( $depth & 1 && $depth & 3 ) {
//此处的判断要修改
echo ' comment-child';
$comments-&levelsAlt(' comment-level-odd', ' comment-level-even');
elseif ( $depth & 2 ) {
echo ' comment-child2';
$comments-&levelsAlt(' comment-level-odd', ' comment-level-even');
echo ' comment-parent';
$comments-&alt(' comment-odd', ' comment-even');
echo $commentC
其实就是一句话的事,就是加了个判断,子评论中是否深度超过了2,然后给一个不同的id来定义样式,我还假装像模像样的搞了篇出来,好吧,我就是个水货。。。。。
以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索css
typecho评论插件、多说评论迁移typecho、typechoy评论css、typecho评论js、typecho评论,以便于您获取更多的相关知识。
稳定可靠、可弹性伸缩的在线数据库服务,全球最受欢迎的开源数据库之一
6款热门基础云产品6个月免费体验;2款产品1年体验;1款产品2年体验
弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率
开发者常用软件,超百款实用软件一站式提供
云栖社区()为您免费提供相关信息,包括
,所有相关内容均不代表云栖社区的意见!来源: 一极乐(/)
查看: 11,058
先看一段html,有人叫她幻灯片也有人叫焦点图还有叫轮换、轮播,当然你可以叫她动画片,如果我们要给自己Typecho加上一个焦点图轮播可能瓶颈主要在图片,因为其它地方和我们调用的列表没有任何区别。(其实可以不要看这段代码。。。)
&div class=&focus mb-b&&
&div id=&pic&&&ul&
&li&&a href=&/show/649.html& target=&_blank&&&img src=&/cssf/CpNg0MbL/medish.jpg& alt=&校运会第一天——飞扬吧!青春& /&&strong&校运会第一天——飞扬吧!青春&/strong&&/a&&/li&
&li&&a href=&/show/640.html& target=&_blank&&&img src=&/cssf/CpEQ47jA/medish.jpg& alt=&“飞扬的青春,跳动的热情”长沙师范秋季阳光体育运动会团体操& /&&strong&“飞扬的青春,跳动的热情”长沙师范秋季阳光体育运动会团体操&/strong&&/a&&/li&
&li&&a href=&/show/639.html& target=&_blank&&&img src=&/cssf/CpCHqkiW/medish.jpg& alt=&“阳光体育,健康人生”我校运动会于今日正式开幕& /&&strong&“阳光体育,健康人生”我校运动会于今日正式开幕&/strong&&/a&&/li&
&li&&a href=&/show/652.html& target=&_blank&&&img src=&/cssf/Cq0KlY5Z/medish.jpg& alt=&习近平当选中共中央总书记& /&&strong&习近平当选中共中央总书记&/strong&&/a&&/li&
&li&&a href=&/show/629.html& target=&_blank&&&img src=&/cssf/CpxAABbV/medish.jpg& alt=&我校第八期团学干部培训班开班典礼隆重开幕& /&&strong&我校第八期团学干部培训班开班典礼隆重开幕&/strong&&/a&&/li&
&li&&a href=&/show/625.html& target=&_blank&&&img src=&/cssf/CpxV2EuM/medish.jpg& alt=&在创业中实现价值,在挑战中历练本领& /&&strong&在创业中实现价值,在挑战中历练本领&/strong&&/a&&/li&
&/ul&&/div&
&div class=&tip-bg&&&/div&
&div id=&tip&&&ul&&/ul&&/div&
&div class=&btn&&&ul&&li class=&prev& id=&focus_btn_left&&&/li&&li class=&next& id=&focus_btn_right&&&/li&&/ul&&/div&
让typecho可以调文章中的第一张图或者附件图片
function img_postthumb($cid) {
$db = Typecho_Db::get();
$rs = $db-&fetchRow($db-&select('table.contents.text')
-&from('table.contents')
-&where('table.contents.cid=?', $cid)
-&order('table.contents.cid', Typecho_Db::SORT_ASC)
-&limit(1));
preg_match_all(&/\&img.*?src\=\&(.*?)\&[^&]*&/i&, $rs['text'], $thumbUrl);
//通过正则式获取图片地址
$img_src = $thumbUrl[1][0];
//将赋值给img_src
$img_counter = count($thumbUrl[0]);
//一个src地址的计数器
switch ($img_counter & 0) {
case $allPics = 1:
echo $img_
//当找到一个src地址的时候,输出缩略图
echo &/404&;
//没找到(默认情况下),不输出任何内容
请添加到你模版文件夹中的【functions.php】文件中,直接往文件后面空白处插,,,
让typecho单独调用一个分类或者标签的文章列表
&?php $this-&widget('Widget_Archive@indexfocus', 'pageSize=6&type=tag', 'slug=focus')-&to($indexfocus); ?&&?php while($indexfocus-&next()): ?&
&li&&a href=&&?php $indexfocus-&permalink(); ?&& target=&_blank&&&img src=&&?php echo img_postthumb($indexfocus-&cid,4); ?&& alt=&&?php $indexfocus-&title() ?&& /&&strong&&?php $indexfocus-&title() ?&&/strong&&/a&&/li&
这里用到的是标签,如果弄个幻灯片还创建个分类杀鸡焉能用牛刀。
重考方法:typecho后台标签中添加一个标签【名称】可以是幻灯片也可以是焦点图,【缩略名】必须填focus(当然也可以填其它的但是要记得修改上面代码slug的值),然后编辑需要在博客展示焦点图轮播的文章【标签】写上刚才设置的标签名称。
参数解读:@indexfocus 作为标记可以随意修改,pageSize=6 其中6代表显示6张图也就是调最新的6个,type=tag 调用标签里的内容,slug=focus 标签中缩略名为focus的内容(也可以是cid=123 其中123代表标签的id,但是这样不科学),$indexfocus 代码片段有6个也是作为标记可以随意修改但是六个都要改到 而且不要和其它片段重复。
后台标签添加好,function.php文件修改好,(调用片段修改好,如果按要求这步可省略),然后代码片段放到你模板里焦点图轮换位置即可。
本文中的代码子曰去哪参考了多位大神的和自己小改,部分代码片段来源不详,请作者前来认领。。。
效果演示:
关于焦点图轮播、幻灯片效果可以去懒人图库找自己喜欢的。。。
转载请注明转自:()
话题相关文章
一极乐 为乐趣而生
寒叶邀请你对本文不足说出你的看法!
添加新评论
( 487,869 +)
( 70,902 +)
( 47,619 +)
( 37,157 +)
( 34,398 +)
( 33,948 +)
:我的那个文章地址麻烦再后面加上.html,谢谢了
:联通信号是硬伤
:我的大王卡还在用着!
:谢谢楼主了 十分有用
:感谢分享
:什么时候友链了?⊙﹏⊙‖∣。我不居然知道,但是你留言这样链接打不...
一极乐 衷心接受你的建议Typecho的一些好用插件
现在的博客都倾向于轻量化、开放性,所以功能才会更加丰富,插件可以因己所需,量身定制,使用自己最需要的资源。Typecho的插件远远没有wordpress多,但是基本能满足要求,经过近一个多月的试用,我主要使用了下面的一些插件,感觉比较好用,分享给大家。
注意,以下罗列的插件仅在Tyoecho
0.8上测试通过,现在已经有更高级的版本,我没有测试。目前,0.8版本已经够用,升级涉及到一系列的更改,太麻烦。()
MagikeEditor:简易编辑器插件
一款简易的后台文章编辑器,我个人非常喜欢。可以随便的自定义按钮,例如快速加
标签等,当然,也可以自己加
这样的标签。根据我的习惯,一般都是直接在后台输入完内容,然后再套几个
标签等,非常快速方便。试过很多其它比较华丽的编辑器,用的很不舒服,略过,简洁才是王道。
AjaxComments:异步无刷新评论插件
Typecho默认的评论是要页面刷新的,该插件可以异步提交评论,页面无刷新,非常人性化。当然还有一个重要的功能是附带评论回复的邮件通知,支持smtp发送,只要在源文件里面设置几个参数即可,不过由于不是异步发送的,可能是最大的欠缺了。另外该插件smtp邮件通知设置中,如果使用的是腾讯的企业邮箱,有个bug,可能无法发送邮件。经过我的测试,必须使发送人名称和发送邮件的地址一致才可以发送。由于博客在SAE上,这里用的是SAE版本的AjaxComments。
CommentFilter:评论过滤器
让你远离垃圾评论,绝对的神器。可以直接封掉评论者的IP,设置禁止词汇和敏感词,限制输入中文,经过简单的设置直接spam掉垃圾评论,阻止提交或者提交到待审状态。非常棒的插件,使用以后,垃圾评论为零。有了它,其它的例如滑动锁,验证码等等的都不需要使用了,太不友好。
后续:本人在该插件的基础上进行了改进并且升级,推出了SmartFilter插件,请参看
Sticky:文章置顶插件
文章列表默认是按照时间顺序显示的,致使有些重要的文章可能不能重点显示。这个插件可以对单篇文章置顶、多篇文章置顶、自定义置顶文章显示顺序、自定义置顶样式等,还是比较有用的。
Robots:蜘蛛来访记录插件
做SEO必备的一款插件,可以记录搜索引擎蜘蛛的种类、爬行时间、爬行的页面、来源的IP。有利于监控站点的被蜘蛛抓取的情况,了解蜘蛛的习惯。
后续:本人在该插件的基础上进行了升级,请参看
GravatarCache:头像缓存插件
评论者的头像缓存插件,主要是有一段时间Gravatar被GFW了,造成页面打开巨慢,该插件可以直接将头像下载到本地,防止Gravatar无法访问。由于SAE不支持本地写文件,这里使用的是SAE版本的GravatarCache,将头像下载保存到了Storage里面。
注意,由于gravatar的链接地址命名规则有了更新,致使该插件无法使用,目前本人已经修复,修改后的SAE新版本已经上传,可下载。另外修复了禁用插件时删除Storage出错的bug。()
Smilies:评论表情及贴图插件
在评论时可以加入表情和贴图,可以使评论的互动性更加丰富,该插件可有可无。
SlimBox2:图片灯箱显示插件
类似插件很多,但是感觉比较臃肿,这款算是非常小巧,20几K的大小。
AudioPlayer:MP3播放器插件
到目前为止就用过一次,虽然用的少,但是偶尔还是有用的,这是直接从wordpress迁移过来的,清爽简单。该插件的设置就是配置参数,可以参看官方文档,非常简单。
TypechoKit:侧边栏加强插件
这个其实算不上什么插件,就是几个简单的函数。例如随机日志、评论最多的日志、评论最多的访客、沙发最多的访客、最近评论数等。另外,这里有几个函数有点bug,我直接改掉了。具体是哪个也不太记得了。
Views:浏览次数统计插件
记录每篇文章的浏览次数,另外有一款Stat插件,和这个基本差不多,不过个人偏好这款,命名较好。这款插件其实就是在数据库文章表中加了一个字段,不太友好,改变了原有的的设计规范。建议还是自己做一张表,外键关联一下,这才能体现插件热插拔的特点。
CodeRenderUnmi:无插件实现代码高亮
使用纯CSS实现代码高亮,干净。只要引入一个css文件即可,当然先要将代码转化为相应的html代码即可。在线版网址:www.jswp.org/tool/code.html。
YoviSunCustom:YoviSun个人定制插件
顾名思义,这是我自己根据自己的博客写的插件,主要有:广告的设置与隐藏,欢迎语的开启与关闭,顶部图片的指定,自定义文字记录等。其实这个插件就是将自己经常用到的需要修改源代码的功能集成了,免去改源代码的麻烦,直接在前台进行设置即可。
另外还有,ArticleList热评与随机文章列表插件,归档页面插件JustArchives,Links友情链接插件,觉的太简单了,没必要做成插件的形式,直接将内容进行修改,结合到主题里面了。
转:/archive/my-typecho-plugins.html#comments
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 vim 语法高亮插件 的文章

 

随机推荐