变量$theTitle不会插入到单引号字符串中。
query_posts(\'category_name=.$theTitle&orderby=rand\');
将要求使用该字符串$标题不会替换为标题和点(.)将保留在查询中。结果将是不可预测的。
因此,请使用双引号字符串:
query_posts( "category_name={$theTitle}&orderby=rand" );
或者更改参数的顺序并连接标题。
query_posts( \'orderby=rand&category_name=\' . $theTitle );
是否确实要使用
query_posts()
在作业中?这不像是告诉老师你没有读
documentation 上面写着“不要使用query\\u posts()”。
编辑:
显然,query\\u posts()函数使用WP\\u query的参数,这很有意义。
The instructions 假设您应该使用类别slug,而不是类别名称:category_name (string) - use category slug (NOT name).
我不知道他们为什么不给那个paramteter起名category_slug
因此,首先我们需要得到类别slug。
function wpse_100126_get_category_slug() {
$current_cat = get_category( get_query_var( \'cat\' ) );
return $current_cat->slug;
}
然后将其插入查询:
query_posts( \'orderby=rand&category_name=\' . wpse_100126_get_category_slug() );