【问题标题】:How to create a wordpress widget that dynamically changes according to the page如何创建一个根据页面动态变化的wordpress小部件
【发布时间】:2019-04-28 10:11:17
【问题描述】:

我正在创建一个插件,其中我的自定义侧边栏小部件会根据其加载的页面更改内容。一种方法是

// Register and load the widget
function custom_register_widget() {
    register_widget( 'custom_widget' );
}

//trigger on every sidebar load
add_action('dynamic_sidebar', 'custom_register_widget' );

但是,这会在每次页面加载时调用 register_widget()(从而对 WordPress DB 进行更改),从而降低页面速度。

有没有有效的方法?

【问题讨论】:

  • 您可以将 add_action 放在 if 中以检查您希望触发它的页面。有多种方法可以实现这一目标。

标签: php wordpress


【解决方案1】:

https://wordpress.stackexchange.com/questions/320295/how-to-create-a-wordpress-widget-that-dynamically-changes-according-to-the-page收到答复

register_widget() 不对数据库进行任何更改。它所做的只是使特定的小部件可供使用。它不应该用在dynamic_sidebar 钩子上。它应该用在widgets_init 钩子上。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-05
    • 1970-01-01
    • 1970-01-01
    • 2016-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-13
    相关资源
    最近更新 更多