wordpress 置顶代码优化

wordpress 置顶代码优化

wordpress 置顶代码保存方式

wordpress置顶的数据保存在options表的option_name等于sticky_posts,option_value的字段中。数据经过了序号化之后保存的,即使用php函数serialize

在wordpress里调取方法

$sticky = get_option(‘sticky_posts’);

目前的首页置顶的代码

目前我的首页置顶代码如下,我感觉很多模板都会有这个问题

$sticky = get_option('sticky_posts'); rsort( $sticky );
query_posts( array( 'post__in' => $sticky, 'caller_get_posts' => 1, 'showposts' => 4 ) );

上面的代码的问题分析

sql使用in的方式查询,如果置顶的文章越多,$sticky变量数据就会越多,查询的速度越慢。目前阶段数据量少感觉不出来,之后数据多了,查询会变慢很多

优化首页置顶的代码如下

    $sticky = get_option('sticky_posts'); rsort( $sticky );
    if(is_array($sticky)){
        $num=count($sticky);
        if($num>4){
            $num=4;
        }
        $sticky=array_slice($sticky,0,$num);
    }
    query_posts( array( 'post__in' => $sticky, 'caller_get_posts' => 1, 'showposts' => 4 ) );

原理其实是把get_option('sticky_posts')调出来的数组去4个,然后在去用in查询


QQ交流群:136351212
查看原文:http://www.phpsong.com/2479.html
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值