VPS参考、测评、推荐
分享你关注的VPS主机优惠信息

WordPress是如何实现相关文章的功能的?分享的几种方法(wordpress文章编辑器)

WordPress是如何实现相关文章的功能的?分享的几种方法(wordpress文章编辑器)

是如何相关文章的功能的?下面这篇文章介绍了相关文章的几种方式,希望对你有所帮助!

WordPress是如何实现相关文章的功能的?分享的几种方法(wordpress文章编辑器)

很多WordPress插件都实现相关文章的功能。插件的好处是简单,但是可能会对网站的速度产生一些小的影响。所以很多人更喜欢用来实现所需的功能。不过话说回来,实现也有缺点,就是复杂,不懂代码的人完全糊涂或者只能抄袭别人的代码,不如用插件。

在这里,我整理了几种用代码实现相关文章的,会详细注明代码各部分的功能,以及如何定制自己想要的功能,希望对大家有所帮助。在我们开始之前,很清楚以下所有输出的HTML代码格式都是以下形式,您可以根据需要修改它们:

& ltul id = & quot标签_相关& quot& gt& lt?phpglobal $ post$ post _ tags = WP _ get _ post _ tags($ post-& gt;ID);if($ post _ tags){ foreach($ post _ tags as $ tag){//获取标记列表$tag_list[]。= $ tag-& gt;术语标识;}//随机获取标签列表中的一个标签$ post _ tag = $ tag _ list [mt _ rand (0,count($ tag _ list)-1)];//此方法使用query_posts()函数调用相关文章。下面是参数列表$ args = array(& # 39;标签_ _ in & # 39= & gt数组($post_tag),& # 39;类别_ _ not _ in & # 39= & gt数组(空),//排除的类别ID & # 39post _ _ not _ in & # 39= & gt数组($ post->;ID)、& # 39;海报& # 39;= & gt6.//显示相关文章的数量& # 39;caller _ get _ posts & # 39= & gt1 );query _ posts($ args);if(have _ posts()){ while(have _ posts()){ the _ post();update _ post _ cache($post);?& gt& lt李& gt* & lta href = & quot& lt? the _ permalink();?& gt”rel = & quot书签& quottitle = & quot& lt? the _ title _ attribute();?& gt”& gt& lt?PHP the _ title();?& gt& lt/a & gt;& lt/李& gt& lt?php } } else { echo & # 39& lt李& gt*暂时相关文章

方法二:分类关联这种方法是通过获取文章的分类id,然后获取该分类下的文章,从而获取相关文章。

& ltul id = & quotcat _ related & quot& gt& lt?phpglobal $ post$ cats = WP _ get _ post _ categories($ post-& gt;ID);if($ cats){ $ args = array(& # 39;& # 39;中的类别_ _;= & gt数组($cats[0])、& # 39;post _ _ not _ in & # 39= & gt数组($ post->;ID)、& # 39;海报& # 39;= & gt6, 'caller _ get _ posts & # 39= & gt1 );query _ posts($ args);if(have _ posts()){ while(have _ posts()){ the _ post();update _ post _ cache($post);?& gt& lt李& gt* & lta href = & quot& lt?PHP the _ permalink();?& gt”rel = & quot书签& quottitle = & quot& lt?PHP the _ title _ attribute();?& gt”& gt& lt?PHP the _ title();?& gt& lt/a & gt;& lt/李& gt& lt?php } } else { echo & # 39& lt李& gt*暂时相关文章

& ltul id = & quot标签_相关& quot& gt& lt?phpglobal $post,$ wpdb$ post _ tags = WP _ get _ post _ tags($ post-& gt;ID);if($ post _ tags){ $ tag _ list = & # 39;';Foreach ($post_tags as $tag) {//获取标记列表$tag_list。= $ tag-& gt;术语标识。',';} $tag_list = substr($tag_list,0,strlen($ tag _ list)-1);$ related _ posts = $ wpdb-& gt;获取结果(& quotSELECT DISTINCT ID,post _ title FROM { $ wpdb-& gt;前缀}文章,{ $ wpdb-& gt;前缀}term_relationships,{ $ wpdb-& gt;前缀}term_taxonomy,其中{$wpdb->prefix } term _ taxonomy . term _ taxonomy _ id = { $ wpdb-& gt;prefix } term _ relationships . term _ taxonomy _ ID AND ID = object _ ID AND taxonomy = & # 39;post _ tag & # 39而post _ status = & # 39出版& # 39;而post _ type = & # 39邮政& # 39;和term _ id(& quot;。$tag_list。”)和ID!= '”。$ post->;身份证。”'ORDER BY RAND()LIMIT 6 & quot;);//在上面的代码中,6用于限制只能访问6篇相关文章//通过修改数字6,可以修改你想要的文章数,如果($ related _ posts){ foreach($ related _ posts as $ related _ posts){?& gt& lt李& gt& lta href = & quot& lt?PHP echo get _ permalink($ related _ post-& gt;ID);?& gt”rel = & quot书签& quottitle = & quot& lt?PHP echo $ related _ post-& gt;post _ title?& gt”& gt& lt?PHP echo $ related _ post-& gt;post _ title?& gt& lt/a & gt;& lt/李& gt& lt?php } } else { echo & # 39& lt李& gt暂时没有相关的文章

& ltul id = & quotcat _ related & quot& gt& lt?phpglobal $post,$ wpdb$ cats = WP _ get _ post _ categories($ post-& gt;ID);if($ cats){ $ related = $ wpdb-& gt;获取结果(& quotSELECT post_title,ID FROM { $ wpdb-& gt;前缀}文章,{ $ wpdb-& gt;前缀}term_relationships,{ $ wpdb-& gt;前缀}term_taxonomy,其中{$wpdb->前缀}帖子。ID = { $ wpdb-& gt;前缀}term_relationships.object_id和{ $ wpdb-& gt;prefix } term _ taxonomy . taxonomy = & # 39;类别& # 39;和{ $ wpdb-& gt;prefix } term _ taxonomy . term _ taxonomy _ id = { $ wpdb-& gt;前缀} term _ relationships . term _ taxonomy _ id和{ $ wpdb-& gt;prefix } posts.post _ status = & # 39出版& # 39;和{ $ wpdb-& gt;prefix } posts.post _ type = & # 39邮政& # 39;和{ $ wpdb-& gt;prefix } term _ taxonomy . term _ id = & # 39;”。$cats[0]。”'和{ $ wpdb-& gt;前缀}帖子。ID!= '”。$ post->;身份证。”'ORDER BY RAND()LIMIT 6 & quot;);if($ related){ foreach($ related as $ related _ post){?& gt& lt李& gt* & lta href = & quot& lt?PHP echo get _ permalink($ related _ post-& gt;ID);?& gt”rel = & quot书签& quottitle = & quot& lt?PHP echo $ related _ post-& gt;post _ title?& gt”& gt& lt?PHP echo $ related _ post-& gt;post _ title?& gt& lt/a & gt;& lt/李& gt& lt?php } } else { echo & # 39& lt李& gt*暂时没有相关文章

& ltul id = & quot作者_相关& quot& gt& lt?php global $ post$ post _ author = get _ the _ author _ meta(& # 39;user _ login & # 39);$ args = array(& # 39;作者姓名& # 39;= & gt$post_author,& # 39;post _ _ not _ in & # 39= & gt数组($ post->;ID)、& # 39;海报& # 39;= & gt6.//显示相关文章的数量& # 39;orderby & # 39= & gt日期,//按时间排序& # 39;caller _ get _ posts & # 39= & gt1 );query _ posts($ args);if(have _ posts()){ while(have _ posts()){ the _ post();update _ post _ cache($post);?& gt& lt李& gt* & lta href = & quot& lt?PHP the _ permalink();?& gt”rel = & quot书签& quottitle = & quot& lt?PHP the _ title _ attribute();?& gt”& gt& lt?PHP the _ title();?& gt& lt/a & gt;& lt/李& gt& lt?php } } else { echo & # 39& lt李& gt*暂时没有相关文章

方法一:0.18067908287048秒方法二:0.0594690967秒方法三:0.07260400537秒方法四:0.04599秒方法五:0.0011秒。

推荐学习:WordPress教程

WordPress就是这样实现相关文章功能的。方法详情请关注草根吧VPS其他相关文章!

:WordPress是如何实现相关文章的功能的?分享的几种方法(wordpress文章) https://vps.caogenba.com.com/91805.html

赞(0) 打赏
未经允许不得转载:草根吧VPS_最新VPS信息参考 » WordPress是如何实现相关文章的功能的?分享的几种方法(wordpress文章编辑器)
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址