0

我创建了一个函数,它使用元值从 postmeta 表中获取 post_id。在此之前,我使用的是 Learndash 的内置函数,并且使用该函数我的数据库查询时间约为 3.2 秒。但是在编写了我自己的函数之后,我能够将它减少 0.4 秒。但我仍然认为它可以进一步优化,因为Query Monitor插件将我的查询也标记为慢。

截屏:

查询监控慢查询

我正在尝试提高以下代码的速度,并且尝试了所有可能的解决方法和技术。

这是代码:

public function ntml_question_pid_by_proid($meta_value)
        {
            global $wpdb;

            $tbl = $wpdb->prefix . 'postmeta';

            $prepare_guery = $wpdb->prepare("
SELECT post_id 
  FROM $tbl 
 where meta_key = 'question_pro_id' 
   and meta_value like '%s'
", $meta_value);

            $get_values = $wpdb->get_col($prepare_guery);

            if (is_array($get_values) && count($get_values) > 0) {
                return $get_values[0];
            } else {
                return false;
            }
        }

是否有一种解决方法可以将页面速度提高至少 2 秒?

我们也已经有了内存缓存。

4

0 回答 0