gpt4 book ai didi

mysql - 列出与 WordPress 中当前帖子具有相同标签的帖子

转载 作者:行者123 更新时间:2023-11-29 17:21:40 25 4
gpt4 key购买 nike

我的网站有 500 000 个帖子,但速度非常慢。

在 WordPress 网站上每个帖子的底部,我只想显示与当前帖子具有相同标签的 3 个随机帖子。

请注意,每个帖子始终只有 1 个标签(不多也不少)。

我使用以下代码,但 SELECT 获取了数千个帖子,而且速度非常慢。

使用posts_per_page=3,它通过查询获得数千个帖子(具有相同标签),之后,它只显示 3 个帖子,但 MySQL 负载非常高。相反,逻辑应该是“只找到 3 个帖子,然后停止”。

$posttags = get_the_tags();
foreach($posttags as $tag) {
$duot=$tag->slug;
$duot2=$tag->name;
}

$the_query = new WP_Query( 'tag='.$duot.'&posts_per_page=3' );
if ( $the_query->have_posts() ) {
echo '<h3>Other post with tag '.$duot2.'</h3><ul>';
while ( $the_query->have_posts() ) {
$the_query->the_post();
echo '<li >'.the_title().'</li>';
}
echo '</ul>';
}

wp_reset_postdata();

如何更改上述代码以减少 MySQL 查询的加载时间?

最佳答案

如果$id是要匹配的标签ID:

$args = array('numberposts' => 3, 'orderby' => 'rand', 'tag_id' => $id);

$query = new WP_Query($args);

查询选择 3 个带有选定标签的随机帖子。

这样更好吗?

关于mysql - 列出与 WordPress 中当前帖子具有相同标签的帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51217795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com