我想从WordPress edit.php
删除帖子状态计数。
我的WordPress CMS有超过500,000个帖子。每次打开页面时都会加载发布计数。每次都会触发以下查询。 这使我的Wordpress CMS加载速度非常慢。
SELECT post_status, COUNT( * ) AS num_posts FROM wp_posts WHERE post_type = 'post' GROUP BY post_status
答案 0 :(得分:0)
我想出了这个解决方案。
//Disable Article Counter - query runs for about 1-2 seconds
add_filter('admin_init', function () {
foreach (get_post_types() as $type) {
$cache_key = _count_posts_cache_key($type, "readable");
$counts = array_fill_keys(get_post_stati(), 1);
wp_cache_set($cache_key, (object)$counts, 'counts');
}
}, -1);
add_action('admin_head', function () {
$css = '<style>';
$css .= '.subsubsub a .count { display: none; }';
$css .= '</style>';
echo $css;
});
邮寄柜台使用wp缓存,这种方法的想法是,在最早的时候,用包含1(0表示跳过可点击状态)的“正确”对象预填充缓存。
这将显示所有状态-带1且查询未全部运行
此外,它还会返回一个css代码段以隐藏(1)