从标题中的基于查询的关键字中排除帖子

时间:2013-08-13 14:07:33

标签: php wordpress

我有一个标准查询,根据观看次数显示帖子。

<?php $cat_id='-8';//the category ID
$limit = get_option('posts_per_page');
query_posts(array(
'showposts'=>32,'more' => $more = 0,
'v_sortby'  => 'views',
'v_orderby' => 'DESC',
'v_outtype' => 'content',
'v_timespan' => 'total',
'paged' => $paged
)); ?>              
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>

但是,我想排除标题中包含“金属”一词的所有帖子。

我做了一些搜索,我找到了可能实现此目的的代码,但我不确定如何将其应用于查询?

if(strpos(get_the_title(), 'metal') === false) {
    // Title does not contain metal
}

1 个答案:

答案 0 :(得分:0)

您的查询数组看起来像是持有查询参数。 我不确定哪个参数在'order by'和limit语句之前最后出现。但是假设v_timespan是最后一个条件而且值是直接使用的(没有过滤)我建议更改它(不要弄乱实际的查询字符串 - 这不会显示你的代码):

array(
'showposts'=>32,'more' => $more = 0,
'v_sortby'  => 'views',
'v_orderby' => 'DESC',
'v_outtype' => 'content',
'v_timespan' => "total and title not like '%metal%'";
'paged' => $paged
))