立即注册 登录
AdvertCN - 广告中国 返回首页

d6mmsm71的个人空间 https://www.advertcn.com/?31989 [收藏] [复制] [分享] [RSS]

日志

WordPress实现分类目录随机排序

已有 271 次阅读2020-8-1 11:47

WordPress 文章的随机排序很容易实现,但是文章分类目录(包括自定义文章类型的分类目录)默认情况下是没有随机排序的,所以想要实现分类目录随机排序就需要自定义一个函数,具体实现如下:

将以下代码添加到当前主题的 functions.php 文件最后一个?>的前面

  1. //分类目录随机排序
  2. function boke112_get_terms() {
  3.     // 获取所有分类 category(自定义类型的就输入相应的 taxonomy)
  4.     $terms = get_terms('category','hide_empty=1');
  5.     $count = count($terms);
  6.     if ( $count > 0 ){
  7.         shuffle($terms);
  8.         foreach ( $terms as $term ) {
  9.             echo '<a href="' . get_term_link( $term ) . '" target="_blank">' . $term->name . '</a>';
  10.         }
  11.     }
  12. }

然后在想要输出随机排序的分类目录处添加如下代码:

  1. <?php boke112_get_terms()?>

注意:

1、记得修改以上输出分类目录随机排序的样式;

2、代码中 hide_empty=1 的意思就是不显示没有文章的分类目录,想要显示没有文章的分类目录,只需要将 1 改为 0 即可;

3、category 表示文章的分类目录,如果想要实现自定义文章类型的分类目录(如 taobao),那么只需要将代码中的 category 改为 taobao 即可;

4、如果不想输出全部的分类目录,比如只想要输出 2 个随机分类目录,那么可以将代码中的 hide_empty=1 改为 hide_empty=1&number=2。

5、如果只是一个地方想要输出随机分类目录的,完全可以不用自定义函数,直接将以下代码添加到想要输出的地方:

  1. <?php
  2.     $terms = get_terms('category','hide_empty=1&number=2');
  3.     $count = count($terms);
  4.     if ( $count > 0 ){
  5.         shuffle($terms);
  6.         foreach ( $terms as $term ) {
  7.             echo '<a href="' . get_term_link( $term ) . '" target="_blank">' . $term->name . '</a>';
  8.         }
  9.     }
  10. ?>

路过

雷人

握手

鲜花

鸡蛋

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 立即注册

关于我们|联系我们|DMCA|广告服务|小黑屋|手机版|Archiver|Github|网站地图|AdvertCN

GMT+8, 2024-12-22 16:22 , Processed in 0.021632 second(s), 7 queries , Gzip On, MemCache On.

Copyright © 2001-2023, AdvertCN

Proudly Operating in Hong Kong.

返回顶部