我想你已经给出了答案:使用自定义帖子类型:为每种类型定义一个自定义帖子类型。
双向同步的一些注意事项:
元数据属性更改不会更改修改日期,这可能便于同步时进行验证。幸运的是,您可以为此添加一些回调,例如:示例元数据字段更改>修改日期
add_action( "updated_post_meta", array($this, \'updateModifiedDate\'), 10 ,4);
add_action( "added_post_meta", array($this, \'updateModifiedDate\'), 10 ,4);
function updateModifiedDate($post_id, $key, $value) {
$array = array (
\'ID\' => $post_id,
\'post_modified\' => current_time(\'mysql\',false),
\'post_modified_gmt\' => current_time(\'mysql\',true)
);
wp_update_post($array);
}
很高兴使用“唯一键”-“修改”-“其他属性”存储上次在缓存中同步的时间。这将为您提供自上次以来发生的变化以及两侧的新变化。除此之外,还可以对它们的共享唯一密钥进行实时匹配。此组合信息为您提供了关于任一侧的新组合和/或任一侧的CRUDN操作的信息(这为您提供了75种不同的组合,您可以检查这些组合,其中大多数会导致相同的操作)。(CRUDN)x(CRUDN)x(side1 | side2 | both)通过这种方式,您可以支持双向同步。大多数可以自动完成,在某些情况下,合并需要手动干预或选择。
在complexer环境中进行批处理时的一般建议:使用临时环境:将包含要加载的数据的表,可能已经转换以便于加载。然后安排加载以转换数据、地图数据等。。对于生产环境,例如wp custom posts+meta+tax始终将所有内容记录在同步日志中,以便您始终可以找到发生的情况,尤其是同步自动运行时,在那里放置一些计时器,以便您可以看到瓶颈,尤其是对于需要数小时(或数周)才能加载的大型作业。瓶颈是指“清理”数据,这可能需要总时间的三分之一