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查询

时间: 2024-09-20 15:28:30

wordpress 文章首页置顶实现例子的相关文章

wordpress中is_sticky()置顶文章方法参数与用法

[说明] 检查当前文章是否置顶.返回值TRUE 或者 FALSE. [用法] <?php is_sticky($post_ID); ?> [参数] $post_ID (string) (optional) 文章 ID 默认: None 返回值 (boolean)True,或 false. [示例] is_sticky(); // 任意置顶文章被显示. is_sticky('17'); // 当ID为17的文章被显示. [源文件] is_sticky() 位于 wp-includes/post.

Yii实现文章列表置顶功能示例_php实例

本文实例讲述了Yii实现文章列表置顶功能的方法.分享给大家供大家参考,具体如下: 我的理解:首先点击获取当前ID,model层查询所有sort字段,遍历数据,得到最大值,修改数据,替换数据,即可. 效果图: 模型层: //显示列表 public function lists1() { $arr=Yii::$app->db->createCommand("select * from acticle join type on type.t_id=acticle.t_id order by

Yii实现文章列表置顶功能示例

本文实例讲述了Yii实现文章列表置顶功能的方法.分享给大家供大家参考,具体如下: 我的理解:首先点击获取当前ID,model层查询所有sort字段,遍历数据,得到最大值,修改数据,替换数据,即可. 效果图: 模型层: //显示列表 public function lists1() { $arr=Yii::$app->db->createCommand("select * from acticle join type on type.t_id=acticle.t_id order by

杰克逊视频YouTube首页置顶

杰克逊YouTube官方视频日浏览量升至1000万次 北京时间6月28日上午消息,据美国知名科技博客报道,一代巨星迈克尔·杰克逊(Michael Jackson)上周五猝然离世,全球所有人变得怀旧起来,人们重温他的音乐,欣赏他的视频.昨日,YouTube已将杰克逊的杰克逊的视频放置首页位置. 据视频研究机构TubeMogul数据显示,昨日,置首使得杰克逊YouTube官方音乐视频浏览量飙升至1000万次,而平时平均日浏览量约21.6万次,几乎增长了50倍.TubeMogul数据还显示,在杰克逊去

wordpress函数get_option(‘sticky_posts’)与置顶文章例子

这里部落先说一下,wordpress获取置顶文章列表的方法,其产只要一小段代码就能搞定,内容如下: 补充说明一下,部落之前的主题,就是使用的下面的代码: <?php         $sticky = get_option('sticky_posts');         rsort( $sticky );         $sticky = array_slice( $sticky, 0, 1);         query_posts( array( 'post__in' => $stic

如何让wordpress自定义文章类型支持置顶功能

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 最近开发一个wordpress淘宝客主题,应客户要求,需要做一个店铺推广.这个店铺推广需要上首页,也就是说只有提供了赞助的的店长的链接才可以在首页展示.为了达到这个目的,笔者提供的解决方案是采用置顶功能.店铺采用wordpress自定义文章类型.然而问题来了,wordpress自定义文章类型默认并不支持置顶功能.为此我们可以通过一个插件来实现

wordpress文章置顶不改变文章排序实现方法

文章置顶不排序 query_posts方法的代码如下:  代码如下 复制代码 <?php $display_categories = get_option('swt_cat_exclude'); $limit = get_option('posts_per_page'); $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $sticky = get_option('sticky_posts'); $args = arr

wordpress只在某个分类菜单下置顶指定的文章

很多时候,我们的wordpress站点,可能需要将某篇文章进行置顶,如果是全局的话,直接在文章页面里编辑之后进行置顶操作就行了,但如果想只在一个分类菜单下进行置顶操作的话,目前就需要借助插件或者修改代码来实现了.比如部落网站中有一篇文章,在网站SEO这个菜单下,想让这篇文章置顶显示,就是这样一个意思了. 如果您需要用插件的话,直接安装WP-Sticky即可实现这个功能. WordPress网站分类列表不显示置顶文章,内容丰富栏目较多的网站会对推荐的文章进行置顶显示,以便访客打开该分类时第一时间能

WordPress置顶文章与非置顶文章的列表分离

置顶文章归置顶的样式,在循环文章列表中排除置顶文章. Case1置顶列表解决方案: 在要插入置顶文章列表的地方写入一下语句:  代码如下 复制代码 <?php query_posts(array('showposts' => 1, 'post__in' => get_option('sticky_posts'), 'caller_get_posts' => 1 )); if (have_posts()) : while (have_posts()) : the_post(); ?&