WordPress主页上的294个查询

时间:2011-12-21 作者:holyidiot

我在wordpress网站上有294个查询。我使用sql Monitor进行了检查,最大的查询是显示城市列表自定义字段的计数。假设有200个城市,那么在一个循环中会发生200个查询,以统计有关一个城市的帖子数量。有没有一种方法可以更有效地做到这一点。

我用来计算国家数量的代码是

<?php 
global $wpdb;
$countries = tgt_get_countries();
foreach ($countries as $country) {
$testcount = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->postmeta WHERE meta_value = \'$country\' AND meta_key = \'tgt_job_country\'");
if ($testcount !=0)
echo "<li><a href=\'http://dsdjjhfgd.net/s=jobseeker&usertype=jobseeker&country=".$country."&search=Search\'>".$country."(".$testcount.")</a></li>";
}
?>

1 个回复
SO网友:goldenapples

此查询将在一个查询中获取所有国家/地区和计数:

global $wpdb;
$countries_count = $wpdb->get_results( "
    SELECT meta_value AS country, COUNT(post_id) AS count
    FROM {$wpdb->postmeta} 
    WHERE  meta_key = \'tgt_job_country\'
    GROUP BY country ORDER BY country" );
foreach ($countries_count as $country)
        echo "<li><a href=\'http://dsdjjhfgd.net/s=jobseeker&usertype=jobseeker&country=".$country->country."&search=Search\'>".$country->country."(".$country->count.")</a></li>";
除非您需要首先获取国家/地区列表,否则这只会使用数据库中的meta\\u键提取每个值。。。

结束

相关推荐

Corrupt Wordpress Database

我认为这是最奇怪的文字印刷问题。一个拥有大量帖子数据库的客户网站已经有了自己的想法。前一分钟一切似乎都很好,接下来的帖子、类别和标签都不见了。此时仪表板告诉我9个类别中有2309个帖子,但当我单击admin中的categories链接时,列表中没有任何帖子。我可以在admin中看到所有帖子,但尽管它们过去被分配到类别并列出标签,但现在它们都“未分类”,没有标签。很明显,wordpress数据库在某种程度上已经损坏,但从哪里开始尝试修复呢!?以下是我迄今为止测试的内容:插件–我关闭了所有当前的插件。主题–我