首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何改进基于wordpress后元的选择查询?

如何改进基于wordpress后元的选择查询?
EN

Stack Overflow用户
提问于 2021-03-06 11:07:14
回答 1查看 275关注 0票数 0

我创建了一个函数,使用元值从postmeta表中获取post_id。在此之前,我使用了Learndash中内置的函数,使用的数据库查询时间约为3.2秒。但是在编写了我自己的函数之后,我能够将它减少.4秒。但我仍然认为可以对其进行更多的优化,因为查询监视器插件也将我的查询标记为缓慢。

截图:

我正在努力提高下面代码的速度,我已经尝试了所有可能的解决方法和技术。

这是代码:

代码语言:javascript
复制
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秒?

我们也已经有备忘录了。

EN

回答 1

Stack Overflow用户

发布于 2022-04-11 16:44:44

陈腐的问题,我知道。

尝试将列添加到postmeta的meta_key索引索引中。

代码语言:javascript
复制
ALTER TABLE wp_postmeta 
  DROP INDEX meta_key,
  ADD INDEX (meta_key(32), meta_value(32), post_id);

或者使用可湿性粉剂指数MySQL用于速度插件。它更新了许多索引。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66504993

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档