首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从多个表更新WP数据库表

从多个表更新WP数据库表
EN

Stack Overflow用户
提问于 2015-10-30 07:03:55
回答 1查看 366关注 0票数 0

我正在使用可湿性粉剂谷歌地图应用程序。这允许在后端输入地图标记数据,并在前端的地图上显示。

我正在尝试调整这一点,以便作者可以创建帖子,来自帖子的数据填充可湿性粉剂Google Maps表,使其显示在地图上。换句话说,允许非管理员用户创建带有附加字段的地图标记。

WP Google Maps的主要信息存储在一个名为wp_wpgmza的表中。我曾尝试编写一个SQL触发器,在每次创建新的post时使用来自wp_posts和wp_postmeta的数据更新此表,但我无法破解它。关于从两个表中拉出的一些内容和wp_postmeta的结构

对解决这个问题有什么建议吗?

谢谢D

EN

回答 1

Stack Overflow用户

发布于 2015-10-30 12:40:23

在WordPress中,钩子和过滤器通常被用来完成大多数类似的事情。在保存/插入帖子之前,您可以很容易地使用以下钩子来调用函数:

代码语言:javascript
复制
do_action('save_post', $post_ID, $post);
do_action('wp_insert_post', $post_ID, $post);

下面是一个示例用法:

代码语言:javascript
复制
function my_function($post_ID, $post) {

}
add_action('save_post', 'my_function', 2);

在my_function中,您可以使用$wpdb->insert将数据输入到表中。

代码语言:javascript
复制
function my_function($post_ID, $post) {

    global $wpdb;
    $table = $wpdb->prefix . 'wpgmza';

    $data = array(
                'column1' => 'value1',
                'column2' => 'value2'
            );

    $wpdb->insert($table , $data);
}
add_action('save_post', 'my_function', 2);

或者,您可以使用function_exists()和插件本身使用的函数来插入到映射表中。

代码语言:javascript
复制
function my_function($post_ID, $post) {

    if (function_exists('some_google_map_app_function')) {
        some_google_map_app_function();
    }
}
add_action('save_post', 'my_function', 2);

注意: $post_ID、$post是一些参数,您可以使用它们来获取post数据的峰值和/或将其传递给google地图函数或插入到表中。

有用资源:

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

https://stackoverflow.com/questions/33426150

复制
相关文章

相似问题

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