我正在尝试将WP与另一个提供API的服务同步,该API允许我将他们的表的更新、创建和删除连接到我的站点。
因此,当他们在服务器上创建、更新或删除行时,我会获得有关该更新的详细信息,包括行ID。
我考虑同步的方式是使用自定义的post类型,或者添加一个新的单独表,其中包含post->api关系,如post_id:1 = api_id:53
.
或更改wp_posts
通过添加包含api\\u id的列。
我知道我可以添加metabox,它会将其添加为post\\u meta,但我不确定这会有多有效,如果我更改wp_posts
, 查询速度会快得多。
那么我该如何改变wp_posts
用WordPress的方式?如果不可能,我应该添加元框还是只为关系创建一个全新的表?
最合适的回答,由SO网友:Christopher Ross 整理而成
从技术上讲,您可以使用SQL添加一个post列,但我要提醒您不要这样做,因为备份脚本、导出等可能会忽略它。
相反,我将使用自定义字段或通过带有update\\u post\\u meta()函数的PHP将内容添加为post\\u meta。
要获取基于元的帖子,只需使用:
$args = array(
\'post_type\' => \'custom_post_type\',
\'meta_key\' => \'api\',
\'meta_value\' => $api_value,
);
$posts = get_posts( $args )
或者,获取API键的值
get_post_meta( $post_ID, \'api\', true );