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

很多WordPress插件都可以实现相关文章的功能。插件的好处是配置简单,但是可能会对网站的速度产生一些小的影响。所以很多人更喜欢用代码来实现所需的功能。不过话说回来,代码实现也有缺点,就是配置复杂,不懂代码的人完全糊涂或者只能抄袭别人的代码,不如用插件。
在这里,我整理了几种用代码实现相关文章的方法,会详细注明代码各部分的功能,以及如何定制自己想要的功能,希望对大家有所帮助。在我们开始之前,很清楚以下所有方法输出的HTML代码格式都是以下形式,您可以根据需要修改它们:
& ltul id = & quotxxx & quot& gt& lt李& gt* & lta title = & quot文章标题1 & quotrel = & quot书签& quothref = & quot文章链接1 & quot& gt文章标题1
& 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?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*暂时没有相关文章
方法二:分类关联这种方法是通过获取文章的分类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就是这样实现相关文章功能的。分享方法详情请关注国外主机评测其他相关文章!
此前《七大罪》曾有几集过渡剧情的特番,而关于第二季动画的消息日前也已经公布,动画将在明年1月上映,届时将直面世纪霸权紫罗兰了。而关于第二季的内容,按照漫画进度十诫也将悉数登场,而在此前还未登场过的七大罪之一傲慢之罪艾斯卡诺也准备出场了,目前为其配音的声优则是组长杉田智和。按照漫画剧情来看第二季如果要把故事完全展开的话,那么半年番基本上是妥妥的了!距离7月22日已经越来越近,这个日期既是《魔法少女奈叶》剧场版的首映日也是《周刊文春》准备爆料某知名声优恋爱的日子。而鉴于此前种种迹象,这位声优是水树奈奈的可能性已经十分的大,而最近又有一件事情基本上要坐实这个猜想。
作为重点关注的对象水树奈奈确定将在7月22日做客花江夏树、日高里菜主持的广播节目,并将在节目上有重大发表,要我说当一切巧合的事都汇聚在一起,就已经不再是巧合了,关于节目上的重大发表怕不是就是奈奈酱恋爱的消息。不过呢,对于声优界的御三家来说年龄确实不小了,若是能得到幸福,对于粉丝们来说也是个不错的消息。至于具体究竟会是谁呢?还是耐心等到22日再说吧!最近几日,日本电影方面《银魂》真人版以及《口袋妖怪》的新剧场版双双上映,然而在pokemon情怀下,《银魂》的票房虽然不错但还是败给了pokemon。
在周末首日票房方面,pokemon强势登顶,而《银魂》则排在了第三位,以至于导演福田雄一在推特上发文鼓励粉丝们去贡献电影票,不过讲真的,《银魂》真人版有如此收获已经算不错的了,pokemon一路走来已经20年,伴随了无数人的童年,这次剧场版又是回到故事的原点,所以票房登顶并不算意外!七月新番《异世界食堂》虽然作为美食番放在了深夜进行放送而颇有报复社会的意思,但是这丝毫没有阻挡观众对其的好评。
该作在niconico上放送第二话之后,好评率可以说高达98.8%,俨然要成为本季霸权的感觉,不过呢,理性的分析下,这部番本身以美食为主,但也隐含了人与人奇妙邂逅的故事线,单元剧形式下想要争夺霸权还是有点困难的,从题材内容来说更吸引看番多年又或是年龄较大的观众,年轻一点的可能就不太能静下心看这种节奏较慢的动画!