Similar Posts - NO plugin

时间:2011-01-14 作者:Jared

如何在我的主题中创建类似的帖子部分,但不使用插件。我将免费提供我的主题,所以我不想强迫人们安装插件来使用我的主题。

怎么做呢?

3 个回复
最合适的回答,由SO网友:Pippin 整理而成

PUT TH我s 我N YoUR s我NGLE.PHP:&#十、A.;

&#十、A.;$TA.Gs = WP_GET_PosT_TA.Gs($PosT->我D);&#十、A.;我F ($TA.Gs) {&#十、A.;$F我RsT_TA.G = $TA.Gs[0]->TERM_我D;&#十、A.;$A.RGs=A.RRA.Y(&#十、A.;\'TA.G__我N\' => A.RRA.Y($F我RsT_TA.G),&#十、A.;\'PosT__NoT_我N\' => A.RRA.Y($PosT->我D),&#十、A.;\'sHoWPosTs\'=>4.,&#十、A.;\'CA.LLER_GET_PosTs\'=>1.&#十、A.;);&#十、A.;$MY_QUERY = NEW WP_QUERY($A.RGs);&#十、A.;我F( $MY_QUERY->HA.五、E_PosTs() ) {&#十、A.;WH我LE ($MY_QUERY->HA.五、E_PosTs()) : $MY_QUERY->THE_PosT(); &#十、A.; // PosT CoNTENT sTUFF HERE&#十、A.;ENDWH我LE;&#十、A.;WP_REsET_QUERY();&#十、A.;}&#十、A.;}&#十、A.;

&#十、A.;

SO网友:Rarst

主题代码和插件代码之间的界限更多的是关于预期用途,而不是技术限制。任何一方都可以做其他方所做的事情。

如果你想要一些简单的东西(贴上相同的标签或其他标签),那么直接将其包含在functions.php.

但是功能齐全的相关帖子解决方案可能会变得很复杂很快,这意味着它们很慢,这意味着它们需要智能缓存。。。要得到这样的东西,最好的方法是修改一些插件,绑定主题并利用它。

SO网友:goldenapples

决定你想考虑什么样的“类似职位”。最简单的方法是找出与当前帖子有一个或多个共同标签的帖子。这应该可以做到(在您的循环中):

$tags_in = array_map( 
    create_function(\'$tag\',\'return $tag->term-id;\'), 
    get_the_tags() );
$similar_posts = get_posts( array(
    \'tag__in\' => $tags_in ) );
当然,找到相关帖子的方法要复杂得多,主要涉及帖子标题的比较和内容的文字分析。查看以下代码Yet Another Related Posts plugin 或任何other examples, 在你独自深入之前。

结束

相关推荐