【问题标题】:Wordpress Hook - External Db ConnectWordpress 挂钩 - 外部数据库连接
【发布时间】:2012-04-09 15:39:18
【问题描述】:

我正在为 wordpress 开发一个简码。我的简码和小部件都需要连接到外部数据库才能获取信息。

我的第一个问题是我用什么钩子连接到外部数据库。我目前设置的方式告诉我标头已经发送。我需要它与标头一起发送以进行干净连接。如果不需要,我不想使用输出缓冲区。我想建立一个干净的连接。我用什么钩子来建立连接而不是得到标题错误?

我的第二个问题是:有没有办法让这个钩子只在某些页面上被调用?我不想在包含短代码的页面上的每个页面上都进行此连接。是否有 if 语句或某种钩子过滤器,以便仅在需要时进行 db connect,而不是在每次页面加载时调用。谢谢。

【问题讨论】:

    标签: wordpress http-headers hook dbconnection


    【解决方案1】:

    “wp”钩子在当前 $post 设置之后但在标题输出之前运行。

    因此,您应该能够像 if(strpos($post->post_content, "[shortcode]") !== false) 这样进行检查以确定数据库连接代码是否应该运行。

    你会像这样使用那个钩子:

    add_action("wp", "my_wp"); //where "my_wp" is the name of your function
    

    【讨论】:

    • 如果您收到随机错误和有关已发送标头的通知,请务必检查插件代码上方、下方或内部是否有多余的空格。
    • 感谢您的回复,但我仍然收到标头发送错误。我检查了我所有的空白,没有。还有其他建议吗?谢谢。
    • 经过一些测试,我发现在前端它可以工作(没有错误),但是当我登录到后端管理区域时,我得到了错误。
    • 不确定我做了什么,但现在似乎连接没有错误。但我现在确实有另一个问题。短代码不会在帖子中呈现,告诉我没有记录集,好像连接正在关闭。如果我将变量 echos 与 wp 挂钩,它将在 html 之前将它们呈现在头部,但由于某种原因,如果我在短代码中调用它们,它不会呈现。生病发布另一个问题。谢谢。
    猜你喜欢
    • 1970-01-01
    • 2019-10-17
    • 1970-01-01
    • 1970-01-01
    • 2014-04-14
    • 2012-01-08
    • 2023-01-03
    • 2021-02-26
    • 2016-05-30
    相关资源
    最近更新 更多