WordPress添加随机文章小工具

Timle.CN:专注 WordPress建站WordPress主题WordPress插件 分享,同时也关注各种 建站资源前端技巧免费资源IT互联网热点 。CTRL+D即可收藏本站,我们期待您的再次光临!

[文章目录]

为排版需要,想把随机文章(random posts)小工具加到页脚,由于某些主题不自带,必须自己制作。本着尽可能不用插件的原则到网上搜了一下,有简单的办法,有复杂的办法,此文《为wordpress主题添加随机文章小工具》是比较方便快捷的,经实际体验,去除掉其中一些莫名其妙的格式和代码后把通用代码公布于众。

使用随机文章的好处

避免好的文章被淹没了,搜索引擎每次来访问的是不同的链接,增加内链。可以自由拖放,与其他小工具搭配使用,避免写在侧边栏过于死板。

为WP主题添加随机文章小工具方法

首先找到主题的functions.php在?>之前添加如下代码并上传覆盖到主题目录:

 //随机文章
class RandomPostWidget extends WP_Widget
{
 function RandomPostWidget()
 {
 parent::WP_Widget('bd_random_post_widget', '随机文章', array('description' => '我的随机文章小工具') );
 }
 function widget($args, $instance)
 {
 extract( $args );
 $title = apply_filters('widget_title',empty($instance['title']) ? '随机文章' :
 $instance['title'], $instance, $this->id_base);
 if ( empty( $instance['number'] ) || ! $number = absint( $instance['number'] ) )
 {
 $number = 10;
 }
 $r = new WP_Query(array('posts_per_page' => $number, 'no_found_rows' => true,'post_status' => 'publish', 'ignore_sticky_posts' => true, 'orderby' =>'rand'));
 if ($r->have_posts())
 {
 echo $before_widget;
 if ( $title ) echo $before_title . $title . $after_title;
?>
 <ul>
 <?php while ($r->have_posts()) : $r->the_post(); ?>
 <li>
 <a href="<?php the_permalink() ?>" title="<?php echo esc_attr(get_the_title() ? get_the_title() : get_the_ID()); ?>"><?php if ( get_the_title() ) the_title(); else the_ID(); ?></a>
 </li>
 <?php endwhile; ?>
 </ul>
 <?php
 echo $after_widget;
 wp_reset_postdata();
 }
 }
function update($new_instance, $old_instance)
{
 $instance = $old_instance;
 $instance['title'] = strip_tags($new_instance['title']);
 $instance['number'] = (int) $new_instance['number'];
 return $instance;
}
function form($instance)
{
 $title = isset($instance['title']) ? esc_attr($instance['title']) : '';
 $number = isset($instance['number']) ? absint($instance['number']) : 10;?>
 <p><label for="<?php echo $this->get_field_id('title'); ?>"><?php _e('Title:'); ?></label>
 <input id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" type="text" value="<?php echo $title; ?>" /></p>
 
 <p><label for="<?php echo $this->get_field_id('number'); ?>"><?php _e('文章显示数量:'); ?></label>
 <input id="<?php echo $this->get_field_id('number'); ?>" name="<?php echo $this->get_field_name('number'); ?>" type="text" value="<?php echo $number; ?>" size="3" /></p>
<?php
}
}
add_action('widgets_init', create_function('', 'return register_widget("RandomPostWidget");'));

什么?看不懂?没关系,不需要看懂,实在怕搞错的,不想动手的童鞋可以试一试插件的方法,比如:中文工具箱、Random Pages Widget等等。

版权声明:本站所有文章和资源使用CC BY-NC-SA 3.0 CN协议发布,转载应当以相同方式注明并注明文章来自“Timle.CN -> WordPress添加随机文章小工具”。在页面右边可以分享本文哦!

有 2 发吐槽 关于 “WordPress添加随机文章小工具

  1. 沙发
    Sven 2014-12-31
    咦 不错嘛 主题居然被你移植过来了!!他们没有成功过的呢~
    • 回复
      Timle.CN 2015-01-1
      @Sven :razz: :razz: 审查元素是个好东西,我弄的时候把主题模版化了,不过还有好多小问题搞不定,有空要请教请教!

疑问 难过 胜利 微笑 抠鼻 可爱 抓狂 偷笑 奋斗 衰 撇嘴 色 贼笑 爬虫 鼓掌 发怒 擦汗 握手 酷 玫瑰 哭 呲牙

WordPress添加随机文章小工具
5 票, 5.00 平均等级 ( 99% 分 )