使用以下代码定义cck位置时:
$location = array(
'latitude' => "0.000000",
'longitude' => "0.000000",
'street' => "street is set",
'city' => "city is set",
'postal_code' => "post code set"
);
$newLocationID = location_save( $location );
创建所有信息,但经度和纬度除外。
有人能告诉我为什么以及如何解决这个问题?
答案 0 :(得分:3)
我有同样的问题,这就是我解决它的方法。
由于最好的文档是源代码,我查看了location_save
函数,发现位置模块尝试使用函数_location_geo_logic
通过地理编码获取经度和纬度。
这是默认设置,当您查看_location_geo_logic
函数时,您会注意到,此地理编码会覆盖输入数组中的纬度和经度键。但是,只有在$inhibit_geocode
变量设置为FALSE
时才会执行此地理编码,因此您唯一需要做的就是将此密钥添加到$location array
:
$location['inhibit_geocode'] = TRUE;
对我而言,它很有效,我希望你能这样做。