标签 WordPress技巧 下的文章

这个教程网上都转烂了,但是使用的都是图片显示等级,有一段时间追求极简,我就疯狂的压缩主题,能不用图片坚决不用,于是这个东西就诞生了,也没怎么在意,现在换到Typecho之后,更是不关注这东西了,但是今天@欧爹突然提起这个功能,想让我帮他折腾上,于是我就找到之前的主题,将代码拿出来,整理一下就发给他了。

终于有机会帮上欧爹了,我牟足了干劲,想办法满足欧爹的奇葩要求(考虑到他博客火爆程度,他嫌原本的7级不够用,于是稍微增加到了10级)

其实最烦人的就是选色,也还好,有了色阶选起来也不是特别难受,最终效果我感觉还是很不错的(详见上图) 技术含量很低,为了凑字数,打了那么多字,下面就上本篇文章的重点吧

下方代码放进functions.php内

//获取访客VIP样式
function get_author_class($comment_author_email,$user_id){
global $wpdb; $author_count = count($wpdb->get_results( "SELECT comment_ID as author_count FROM $wpdb->comments WHERE comment_author_email = '$comment_author_email' ")); 
/*如果不需要管理员显示VIP标签,就把下面一行的“//”去掉*/
//$adminEmail = get_option('admin_email');if($comment_author_email ==$adminEmail) return;
if($author_count>=5 && $author_count<10) echo '<a class="vip1" title="LV.1">LV.1</a>';
else if($author_count>=10 && $author_count<50) echo '<a class="vip2" title="LV.2">LV.2</a>';
else if($author_count>=50 && $author_count<150) echo '<a class="vip3" title="LV.3">LV.3</a>';
else if($author_count>=151 && $author_count<300) echo '<a class="vip4" title="LV.4">LV.4</a>';
else if($author_count>=301 &&$author_count<450) echo '<a class="vip5" title="LV.5">LV.5</a>';
else if($author_count>=451 && $author_count<550) echo '<a class="vip6" title="LV.6">LV.6</a>';
else if($author_count>=551 && $author_count<700) echo '<a class="vip7" title="LV.7">LV.7</a>'; 
else if($author_count>=701 && $author_count<850) echo '<a class="vip8" title="LV.8">LV.8</a>'; 
else if($author_count>=851 && $author_count<1050) echo '<a class="vip9" title="LV.9">LV.9</a>'; 
else if($author_count>=1200) echo '<a class="vip10" title="神一样的人物 V1000+">LV.10</a>'; }
//认证用户
function comment_links_title($email = ''){
$links=array( 
'1'=>'test@163.com', 
'2'=>'test@gmail.com', 
'3'=>'test@qq.com', );
//添加你想要设置个性图片的评论者Email,格式参考我写的
if(in_array($email,$links)) echo '<a class="vp" title="认证用户">认证</a>';
} 

将下方代码放进评论内容循环内需要显示的地方

<?php comment_links_title($comment->comment_author_email);//认证
if(user_can($comment->user_id, 1)){echo "<a title='本站博主' class='vip'>博主</a>";}; //博主
get_author_class($comment->comment_author_email,$comment->user_id);//等级?>

**下面是CSS,样式仅供参考**

/*评论者VIP显示功能的样式*/
.vp,.vip,.vip1,.vip2,.vip3,.vip4,.vip5,.vip6,.vip7,.vip8,.vip9,.vip10{overflow:hidden;padding:0 4px;color:#fff !important;margin:0 6px 0 0;} .vp:hover,.vip:hover,.vip1:hover,.vip2:hover,.vip3:hover,.vip4:hover,.vip5:hover,.vip6:hover,.vip7:hover,.vip8:hover,.vip9:hover,.vip10:hover{background:#aaa;}
.vp{background:#2ae;}
.vip{background:#90EE90;} 
.vip1{background:#C1FFC1;} 
.vip2{background:#98FB98;} 
.vip3{background:#7FFF00;} 
.vip4{background:#FFEC8B;} 
.vip5{background:#FFC125;} 
.vip6{background:#FFA500;} 
.vip7{background:#C6E2FF;} 
.vip8{background:#A4D3EE;} 
.vip9{background:#7EC0EE;} 
.vip10{background:#EE2C2C;}
至此,本篇文章结束

最近想给博客添加一个分类,但是鉴于新开办的分类并不是那么重要,所以不想让其在首页列表显示,当然需要排除掉,网上普遍的方式是修改主题的index.php或loop.php里的代码,虽然对于我来说改起来还是轻而易举,但是如果主题同时包含多个列表文件,那是就要一个个排除了,不怎么方便,于是找到了下面的这个方法,简单方便,直接修改functions.php就OK了。

下面的方法可以帮你方便地在首页排除特定分类的文章。

复制下面的代码到你的主题functions.php文件:

function exclude_category_home( $query ) {
if ( $query->is_home ) {
$query->set( 'cat', '-99, -999' );
}
return $query;
}
add_filter( 'pre_get_posts', 'exclude_category_home' );

修改第3行的分类ID,然后保存文件,就大功告成了。“-”号就是排除的意思。

很多时候我们需要将某些内容在指定的页面中显示,例如把友情链接这只成只在首页显示,或者将广告设置为只在文章页显示,这些都可以通过修改代码来达到效果。

下面为常用的页面判断语句

  1. is_home()     ====主页
  2. is_single()     ==== 文章页
  3. is_page()     ==== 页面
  4. is_category()     ==== 文章分类页
  5. is_tag()      ====文章标签页
  6. is_archive()     ==== 归档页
  7. is_404()     ==== 404页
  8. is_search()     ==== 搜索结果页
  9. is_feed()     ==== 订阅页
知道了这些语句后,我们如何使用呢?举个例子:

我要将“天空团首页”五个字设置为只显示在首页,那么可以这样,<?php if ( is_home() ) { ?>天空团首页<?php } ?>

上方示例中黄色加粗部分可以任意替换,可以判断 is_single()  [只在文章页显示]或 is_archive() [归档页显示]等等方式

既然可以设置为只在某页显示某内容,那么可不可以设置成只在某页禁止显示某内同呢?答案是肯定的

语法小注:|| 表示或,&& 表示和,! 表示非,使用上面的语法便可以更加灵活的定义页面显示内容了,语法示例如下:

  1. !is_home()      ====除首页以外的页面都显示
  2. !is_category(4)     ====仅在ID非4的分类显示
  3. is_home() || is_category(‘movies’)      ====在首页显示同时在名称为movies的分类显示
  4. is_page(‘about’)      ====仅在名称为about的页面显示
  5. is_home()&&!is_paged()     ==== 在首页显示,分页不显示
OK,到此结束,祝大家中秋快乐

最近越发懒散了,什么都不想折腾,G5还有一些需要调整的,还要忙着规划G6,折腾了几天,什么都不满意,最后什么都摆忙活了,心情有点乱乱的,很是郁闷,天气越来越热了,我是越来越沉不住气,今天小更一下吧,证明我还活着

代码高亮功能网上有很多实现的方法,插件很多,介绍免插件的博客也不少,但是他们都用到了js+css,好吧,今天我来个简单的,纯css的,对!你没看错,用css就行了,当然,这货不支持代码高亮,仅仅是放代码用的,,我表示自己很喜欢,配合一些在线代码着色器,那就完美了

最终实现效果:

其实简单到不行,只需要把下面的css丢到你主题的css里就OK了
  1. .context ol {overflow-x:auto;overflow-y:hidden;margin:10px;padding:0 0 0 30px;background:#eee;border:1px solid #aaa;}
  2. .context ol li{font-size:12px;padding:0 5px 0 10px;width:100%;border-left:1px solid #596;border-bottom:1px solid #eee;line-height:20px;color:#666;background:#fff;list-style-type:decimal;}
  3. .context ol li:hover{background:#eee;}
这样,在撰写文章的时候,插入ol就行咯

好了,现在是个人心情时间:

18岁过去了,有破处了,第一次18岁,也仅仅这一次,以后SHA人就不能从轻判了,以后也不能装嫩了,再也不能对着大街喊:我是未成年!不能了,啥都不能了

祝我自己生日快乐,嘿嘿,5.23的生日,我到现在才祝福自己呢,今年的生日没往年的隆重,虽然这一生只有这一个18岁,但是我想自己一个人平平静静的度过,当然最后没能如愿,还是被家人、朋友、同学拉着庆祝了一下,很感谢!我爱你们!

我想,这是我这辈子最喜欢的生日礼物了,我擦,真尼玛没节操,我们班同学真是聪明绝顶,这样的东西都能搞出来,真服了他们脑袋了。逐个捏碎!哈哈

么!么么!!18岁!!!我很快乐!!!!

怎么祝福我生日快乐呢?很简单:访问这个页面,表示一下你的心意,稍微意思意思一下就OK啦,哈哈,可以在备注里留下你的联系方式,偶会灰常感谢你滴,嘎嘎

欧爹(OYOY)犒赏过

之前我的登陆方式都是在前台加的登陆表单,当时欢欢喜喜加的,而且觉得效果不错,甚是喜欢了很久,不过最近在@大发 的领头下,我决定,把前台登陆表单给去掉,使用登陆界面登陆,但是默认的登陆界面实在太枯燥了,所以我也改了登陆界面,虽然没发叔的那个方法麻烦,而且我这个趋于简单,所以功能上也没发叔那里的高级,俺这个貌似也不咋优雅。。实现方法也更是只需一个css就轻松搞定了。

第一步

虽然说是只需一个css,但是还是需要代码将css追加到登陆页面的

  1. //自定义登录页面
  2. function custom_login_logo() { echo '<link rel="stylesheet" id="wp-admin-css" href="'.get_bloginfo('template_directory').'/admstyle.css" type="text/css" />';}
  3. add_action('login_head', 'custom_login_logo');

将上面代码丢进模板函数里,至于怎么丢才正确,想必大家都知道,如果你不知道,可以选择谷歌一下,也可以选择跳过此文章

上方代码丢进去之后,那就是第二步了

第二步

第二步当然是css,将CSS下载下来,然后解压丢到主题根目录就行了,效果在此

背景图片来自腾讯微博,不用担心拖速度,不用担心费流量。。

不同版本的wordpress可能略有不同,自己F12改一下就OK了

Ps:蛮讨厌别人不声不响的就扒我的站啦,你扒就扒呗,说一声不不会怎么样,又不是不让你扒,而且被扒也是你认可我的一种方式,不然你也不屑于扒了,对吧…

好了,文章写晚了,嘈也吐完了,我也闪人了…