我认为你的问题有几种解决方法。如果您不想在WP数据库中为每个远程项目都有一个条目,一个可能的解决方案是使用property
slug并添加重写规则以获取ID号:
add_action( \'init\', \'cyb_property_rewrite_rule\' );
function cyb_property_rewrite_rule() {
add_rewrite_rule( \'^property/([0-9]{1,})/?$\', \'index.php?pagename=$matches[1]&remote_ID=$matches[2]\', \'top\' );
}
//Add remote_ID to vars pool to be recognized by WordPress
add_filter(\'query_vars\', \'cyb_add_query_vars\');
function cyb_add_query_vars( $vars) {
$vars[] = "remote_ID";
return $vars;
}
现在,要检索的项目的ID存储在
remote_ID
可以通过的查询变量
get_query_var:
$item_ID = get_query_var(\'remote_ID\');
您可以创建
page template 对于该页面,您可以在内容中获得远程项目:
<?php
/*
Template Name: Property Page Template
*/
get_header();
?>
<div id="content">
<?php
$remote_item = cyb_get_the_property();
?>
</div>
<?php
get_footer();
?>
在
cyb_get_the_property()
您可以获取数据:
function cyb_get_the_property() {
$item_ID = get_query_var(\'remote_ID\');
//Itegrate with the remote CMR API
$item_data = \'\';
return $item_data;
}