PHP代码实现WordPress主题分页功能

虽然网上有不少wordpress插件能达到翻页的一个目的,但是尽可能少用插件是博主们必须要知道的。
下面我贴一段在网上找到的,分页实现的一个PHP程序。针对wordpress。
具体实现方法:
首先将下面一段函数代码添加到主题的functions.php模板文件中:

function kriesi_pagination($query_string){
global $posts_per_page, $paged;
$my_query = new WP_Query($query_string ."&posts_per_page=-1");
$total_posts = $my_query->post_count;
if(empty($paged))$paged = 1;
$prev = $paged - 1;
$next = $paged + 1;
$range = 2; // only edit this if you want to show more page-links
$showitems = ($range * 2)+1;

$pages = ceil($total_posts/$posts_per_page);
if(1 != $pages){
echo "</pre>
<div class="pagination">";
echo ($paged > 2 && $paged+$range+1 > $pages && $showitems < $pages)? "<a href="&quot;.get_pagenum_link(1).&quot;">最前</a>":"";
echo ($paged > 1 && $showitems < $pages)? "<a href="&quot;.get_pagenum_link($prev).&quot;">上一页</a>":"";

for ($i=1; $i = $paged+$range+1 || $i echo ($paged == $i)? "<span class="current">".$i."</span>":"<a class="inactive" href="&quot;.get_pagenum_link($i).&quot;">".$i."</a>";
}
}

echo ($paged < $pages && $showitems < $pages) ? "<a href="&quot;.get_pagenum_link($next).&quot;">下一页</a>" :"";
echo ($paged < $pages-1 && $paged+$range-1 < $pages && $showitems < $pages) ? "<a href="&quot;.get_pagenum_link($pages).&quot;">最后</a>":"";
echo "</div>
<pre>\n";
}
}

继续阅读

挑水叔的那些事

坚持做一件事,是多么不容易的事。————–致语

最近还是很喜欢写一些生活上的事情,因为我觉得这些分享出来一定很有趣,哪怕读者认为这些文字已经非常的见怪不怪。

挑水叔叔在我们学校已经换了一个了,现在还在为我们学校同学服务的这个挑水叔叔来自湖南。

最初和他认识是在一次上楼梯的时候,彼此之间互有打招呼。当时从我的角度出发还是很理解他,毕竟人家上了年纪,还天天为学生服务,光凭这种精神就非常的难能可贵。但当时对他了解真的不深,也没什么打过交道,因此也并不觉得这个挑水大叔有什么特别的地方。

但直到昨天晚上与他的一些对话,彻底改变了我对他的看法。

昨天晚上,大叔来到我的宿舍,送完水,于是我就和他随便聊了几句,但没想到的是大叔非常的健谈。

他看的书非常的多,他和我说到,资本论,还有名著,他基本都看过。 继续阅读

你有几个朋友?

这个话题不是一时兴起之作,但却由来已久。

在社交网络如此发达的现在,朋友可能渐渐变成了一个虚拟化的实体。

当然,我发布这篇文章的目的并不在于让大家反思自己的行为和习惯,我认为每个人都应该拥有自己的一套交友准则,并且遵守它。

可能读者会心里有些嘀咕,我有几个朋友?那可多了,身边的同学,身边的同事,数不胜数。

可你有没失落感?当你遭遇挫折之时,当你倒霉RP坏到极致的时候,你有没想过你身边希望能够有多一些的人陪伴你聊天?

当我即将走出大学这个象牙塔,逐渐思考的时候,才发现。很多事情,到最后不一定有结果。

拿什么来证明?

最好不过的就是大学的恋情,目前身边的朋友拍过拖的不少,而依然在一起的也不多。说明了什么?大学拍拖不靠谱吗?但大学拍拖到走后长跑结婚的不在少数。说明现在的年轻人马虎应付?身边拍拖的基本都比我成熟,可以说这个问题不是主要原因。 继续阅读

CVE-2012-2122: MySQL身份认证漏洞

我今天早上来上班,打开电脑,在seclists中看到一个很惊人的邮件: http://seclists.org/oss-sec/2012/q2/493 MySQL爆出了一个很大的安全漏洞,几乎影响5.1至5.5的所有版本。出问题的模块是登录时密码校验的部分(password.c),在知道用户名的情况下(如root),直接反复重试(平均大约256次)即可登入。不过,MySQL身份认证的时候是采用3元组,username,ip,password。如果client的IP在mysql.user表中找不到对应的,也无法登陆。

这个BUG实际上早在4月份就被发现了,今年5月7号,MySQL发布5.5.24的时候,修正了这个BUG。

漏洞分析:

出问题的代码如下

my_bool check_scramble(const uchar *scramble_arg, const char *message,
               const uint8 *hash_stage2)
{
  SHA1_CONTEXT sha1_context;
  uint8 buf[SHA1_HASH_SIZE];
  uint8 hash_stage2_reassured[SHA1_HASH_SIZE];
mysql_sha1_reset(&sha1_context);
 /* create key to encrypt scramble */ mysql_sha1_input(&sha1_context, (const uint8 *) message, SCRAMBLE_LENGTH);
  mysql_sha1_input(&sha1_context, hash_stage2, SHA1_HASH_SIZE);
  mysql_sha1_result(&sha1_context, buf);
  /* encrypt scramble */ my_crypt((char *) buf, buf, scramble_arg, SCRAMBLE_LENGTH);
  /* now buf supposedly contains hash_stage1: so we can get hash_stage2 */ mysql_sha1_reset(&sha1_context);
  mysql_sha1_input(&sha1_context, buf, SHA1_HASH_SIZE);
  mysql_sha1_result(&sha1_context, hash_stage2_reassured);
  return memcmp(hash_stage2, hash_stage2_reassured, SHA1_HASH_SIZE);
}

继续阅读

wordpress屏蔽英文垃圾评论的一个插件

最近本站一直受到英文垃圾评论的干扰,虽然说有Akismet.这个插件,但是每次登陆都要清空一次依旧很不爽,虽说wordpress插件并非装得多就好,但是一些必要的插件该使上用场的时候还是不能吝啬.

自从pr上1以后,几乎每天都有300-500条英文垃圾评论,有的带连接,有的则不带,看着你几乎都会心烦意乱.看了一些解决方案,最后我挑了这款叫:Some Chinese Please!的插件.需要的可以在插件安装那直接搜索这个插件名称,就可以搜到这款插件了,应对全英文无意义的垃圾评论起到看护神的作用不可小视.

安装好了之后,在设置会有一个SCP Setting设置,单击它,打开设置页面:

几乎不用教,一般人都知道怎么设置了.当有垃圾评论机器人刷评论的时候,这个插件就发挥效果,显示上面那段话.

至此,垃圾评论的问题算是暂时解决了..呼呼:)

本文来自:梧桐雨软件园原创,转载请注明出处。