请在Chrome、Firefox等现代浏览器浏览本站。网站域名:森林之家(www.foresthouse.cn)爱学习、爱分享、爱绿软、爱恐怖、爱音乐、爱唠叨、爱折腾、爱生活!

wordpress随便看看功能

wordpress forest 2636℃ 已收录 2评论

随便看看

很小但很实用的一个小功能详情见本站随便看看。其实就是个随机抽取表中一条数据。

实现方法:将以下代码加入到主题目录中的“functions.php”文件的?>之前即可。
function random_postlite() {
global $wpdb;
$query = "SELECT ID FROM $wpdb->posts WHERE post_type = 'post' AND post_password = '' AND post_status = 'publish' ORDER BY RAND() LIMIT 1";
if ( isset( $_GET['random_cat_id'] ) ) {
$random_cat_id = (int) $_GET['random_cat_id'];
$query = "SELECT DISTINCT ID FROM $wpdb->posts AS p INNER JOIN $wpdb->term_relationships AS tr ON (p.ID = tr.object_id AND tr.term_taxonomy_id = $random_cat_id) INNER JOIN $wpdb->term_taxonomy AS tt ON(tr.term_taxonomy_id = tt.term_taxonomy_id AND taxonomy = 'category') WHERE post_type = 'post' AND post_password = '' AND post_status = 'publish' ORDER BY RAND() LIMIT 1";
}
if ( isset( $_GET['random_post_type'] ) ) {
$post_type = preg_replace( '|[^a-z]|i', '', $_GET['random_post_type'] );
$query = "SELECT ID FROM $wpdb->posts WHERE post_type = '$post_type' AND post_password = '' AND post_status = 'publish' ORDER BY RAND() LIMIT 1";
}
$random_id = $wpdb->get_var( $query );
wp_redirect( get_permalink( $random_id ) );
exit;
}
if ( isset( $_GET['random'] ) )
add_action( 'template_redirect', 'random_postlite' );

使用方法

访问你网站的域名/?random即可看到效果,如果要在导航菜单现实的话,在后台新建一个自定义URL菜单即可。当然这只是一个例子具体使用方法灵活应用,也可以自己建一个PHP文件把代码复件进去调用也是可以的。
本站文章如未注明,均为原创丨本网站采用BY-NC-SA协议进行授权,转载请注明转自:https://www.foresthouse.cn/archives/395.html
喜欢 (2)or分享 (0)
发表我的评论(注:在您评论完以后不会立即显示,请不要重复刷新以免进入黑名单。)
取消评论
表情 代码 贴图 加粗 链接 私信 删除线 签到

Hi,请填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(2)条精彩评论。
  1. 请教一下如果想把显示出来的文章加入一定的限制条件,比如文章发布于多少天以内、哪一个分类 该怎么加入过滤条件呢? 谷歌浏览器 Windows 10
    DJH2020年-05月-06日发表回复| Google Chrome 81.0.4044.113| unknow
  2. 可以把这个改成随机分类目录吗来自天朝的朋友 谷歌浏览器 Windows 7
    乌云2020年-04月-03日发表回复| Google Chrome 80.0.3987.122| Windows 7 x64