私は運がない数日間調査した問題に悩まされています。ロケーションデータをプログラムで設定する
$edit = array();
$edit['uid'] = $user->id;
$edit['name'] = $user->name;
$edit['status'] = 1;
$edit['taxonomy'] = array($term_id);
$edit['title'] = $Title;
$edit['body'] = $body;
など...その後
と一緒に保存:すべてが完璧に動作
node_invoke_nodeapi($edit, $nType);
node_validate($edit);
if ($errors = form_get_errors()) {
print_r($errors);
}
$node = node_submit($edit);
node_save($node);
この
は、私は、フォーム供給されたデータからノードを追加するカスタムモジュールのコードを持っています。しかし、私は提供された(墨塗りされた)zipフィールドに基づいて各ノードに位置データを追加しようとしています。
gmapモジュールとlocationモジュールがインストールされ、動作しています。 Drupalコンテンツエディタを使用してzipを直接追加すると、すべて機能します。ビューもgmap。だから私はバージョンと改造がすべて正しいことを知っている。で、国要素なし
$location['country'] = "US";
$location['postal_code'] = $zip;
$locationID = location_save($location);
:
$location = array(
'country' => 'US',
'postal_code' => $zip,
);
$locationID = location_save($location);
と、この:
私はこれを使用しました。 そしてノードデータINITセクション(上記)でこの:
$edit->locations[0]['lid'] = $locationID;
又は
if($locationID) $edit['field_location'][0]['lid'] = $locationID;
又は
if($locationID) $edit['location'][0]['lid'] = $locationID;
しかし、これのどれも動作しません。送信は実際にはOKですが、場所データは保存されません。そして、どんなエラーも投げられません。
これについてのお手伝いがあれば幸いです。