wordpress调用同分类随机文章

在内页里面的适当位置显示调用随机文章可以促进网站内链,增加文章阅读点击量,有利于SEO,网上大部分WordPress调用随机文章代码都是基于全站文章,这里发一个调用同分类随机文章的代码。

将下面代码放到主题文章页面single模板或者边栏sidebar模板适当位置即可:

<ul>
<?php
$cat = get_the_category();
foreach($cat as $key=>$category){
$catid = $category->term_id;
}
$args = array(‘orderby’ => ‘rand’,’showposts’ => 8,’cat’ => $catid );
$query_posts = new WP_Query();
$query_posts->query($args);
while ($query_posts->have_posts()) : $query_posts->the_post();
?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endwhile;?>
</ul>

其他常用wordpress调用文章代码

WordPress调用热门文章

<ul>
<?php
$post_num = 14; // 设置调用条数
$args = array(
‘post_password’ => ”,
‘post_status’ => ‘publish’, // 只选公开的文章.
‘post__not_in’ => array($post->ID),//排除当前文章
‘caller_get_posts’ => 1, // 排除置頂文章.
‘orderby’ => ‘comment_count’, // 依評論數排序.
‘posts_per_page’ => $post_num
);
$query_posts = new WP_Query();
$query_posts->query($args);
while( $query_posts->have_posts() ) { $query_posts->the_post(); ?>
<li>
<a href=”<?php the_permalink(); ?>” title=”<?php the_title(); ?>”>
<?php the_title(); ?>
</a>
</li>
<?php } wp_reset_query();?>
</ul>

WordPress调用随机文章

方法1:采用wordpress内置函数,在需要的时候直接调用以下代码。

<ul>
<?php $rand_posts = get_posts(‘numberposts=5&orderby=rand’);
foreach( $rand_posts as $post ) : ?>
<li>
<a href="<?php the_permalink(); ?>">
<?php the_title(); ?>
</a>
</li>
<?php endforeach; ?>
</ul>

 

方法2:用query_posts生成随机文章列表

<ul>
<?php
global $post;
$postid = $post->ID;
$args = array( ‘orderby’ => ‘rand’, ‘post__not_in’ => array($post->ID), ‘showposts’ => 14);
$query_posts = new WP_Query();
$query_posts->query($args);
?>
<?php while ($query_posts->have_posts()) : $query_posts->the_post(); ?>
<li>
<a href=”<?php the_permalink(); ?>” title=”<?php the_title_attribute(); ?>”>
<?php the_title(); ?>
</a>
</li>
<?php endwhile; else: ?>
没有可显示的文章
<?php  endif; wp_reset_query(); ?>
</ul>

方法3:在主题的function.php中添加函数,然后调用

function random_posts($posts_num=8,$before='<li>’,$after='</li>’){
    global $wpdb;
    $sql = "SELECT ID, post_title,guid
            FROM $wpdb->posts
            WHERE post_status = ‘publish’ ";
    $sql .= "AND post_title != ” ";
    $sql .= "AND post_password =” ";
    $sql .= "AND post_type = ‘post’ ";
    $sql .= "ORDER BY RAND() LIMIT 0 , $posts_num ";
    $randposts = $wpdb->get_results($sql);
    $output = ”;
    foreach ($randposts as $randpost) {
        $post_title = stripslashes($randpost->post_title);
        $permalink = get_permalink($randpost->ID);
        $output .= $before.'<a href="’
            . $permalink . ‘"  rel="bookmark" title="’;
        $output .= $post_title . ‘">’ . $post_title . ‘</a>’;
        $output .= $after;
    }
    echo $output;
}

random_posts()参数有$posts_num即文章数量,$before开始标签默认<li>,$after=结束标签默认</li>

然后在需要调用随机文章的地方插入下面的代码:
代码如下 复制代码
<div class="right">
<h3>随便找点看看!</h3>
<ul>
<?php random_posts(); ?>
</ul>
</div>

wordpress随机文章(随机日志)四种实现方法

wordpress随机文章(随机日志)四种实现方法。wordpress添加随机文章可以用插件,也可以用代码实现,不过个人还是比较喜欢用代码来实现,毕竟没有必要单纯为了实现随机文章而安装一个插件(插件多了容易影响网站性能)

wordpress随机文章实现方法一

在function.php中加入如下方法

/**
* 随机文章
*/
function random_posts($posts_num=5,$before='<li>’,$after='</li>’){
    global $wpdb;
    $sql = "SELECT ID, post_title,guid
            FROM $wpdb->posts
            WHERE post_status = ‘publish’ ";
    $sql .= "AND post_title != ” ";
    $sql .= "AND post_password =” ";
    $sql .= "AND post_type = ‘post’ ";
    $sql .= "ORDER BY RAND() LIMIT 0 , $posts_num ";
    $randposts = $wpdb->get_results($sql);
    $output = ”;
    foreach ($randposts as $randpost) {
        $post_title = stripslashes($randpost->post_title);
        $permalink = get_permalink($randpost->ID);
        $output .= $before.'<a href="’
            . $permalink . ‘"  rel="bookmark" title="’;
        $output .= $post_title . ‘">’ . $post_title . ‘</a>’;
        $output .= $after;
    }
    echo $output;
}

在需要显示的地方调用如下代码

<div class="right">
    <h3>随便找点看看!</h3>
    <ul>
        <?php random_posts(); ?>
    </ul>
</div><!– 随机文章 –>

不复杂吧,以上代码不依赖也不影响其他代码。

wordpress随机文章实现方法二

在需要显示的地方直接调用如下代码

<ul>
<?php $rand_posts = get_posts(‘numberposts=5&orderby=rand’);
foreach( $rand_posts as $post ) : ?>
   <li>
        <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
   </li>
<?php endforeach; ?>
</ul>

wordpress随机文章实现方法三:用query_posts生成随机文章列表

在需要显示的地方直接调用如下代码

<?php
query_posts(array(‘orderby’ => ‘rand’, ‘showposts’ => 2));
if (have_posts()) :
while (have_posts()) : the_post();?>
<a href=”<?php the_permalink() ?>”
    rel=”bookmark”
    title=<?php the_title(); ?>”><?php the_title(); ?></a>&nbsp;
    <?php comments_number(”, ‘(1)’, ‘(%)’); ?>
<?php endwhile;endif; ?>

wordpress随机文章实现方法四:支持在随机文章中显示标题和文章摘要

<?php
query_posts(array(‘orderby’ => ‘rand’, ‘showposts’ => 1));
if (have_posts()) :
while (have_posts()) : the_post();
the_title(); //这行去掉就不显示标题
the_excerpt(); //去掉这个就不显示摘要了
endwhile;
endif; ?>

在wordpress随机文章实现的4种方法中除了第一种方法,其他三种方法中都使用到了,get_posts、the_post等方法,这些方法破坏页面中记录的当前文章的信息,如果使用在页面的最后部分,影响不大,如果在调用的代码后面还有评论等内容,则会导致评论内容调用的是随机到的最后一篇文章的评论。

资料来源:http://www.rainleaves.com/html/1391.html