Drupal程序化location_cck创建

时间:2011-08-17 22:44:41

标签: drupal location cck

使用以下代码定义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 );

创建所有信息,但经度和纬度除外。

有人能告诉我为什么以及如何解决这个问题?

1 个答案:

答案 0 :(得分:3)

我有同样的问题,这就是我解决它的方法。

由于最好的文档是源代码,我查看了location_save函数,发现位置模块尝试使用函数_location_geo_logic通过地理编码获取经度和纬度。

这是默认设置,当您查看_location_geo_logic函数时,您会注意到,此地理编码会覆盖输入数组中的纬度和经度键。但是,只有在$inhibit_geocode变量设置为FALSE时才会执行此地理编码,因此您唯一需要做的就是将此密钥添加到$location array

$location['inhibit_geocode'] = TRUE;

对我而言,它很有效,我希望你能这样做。