質問: プログラムでジオフィールドデータを更新する 私の設定は: アドレスデータを収集するためのノードのアドレスフィールド 「別のフィールドのジオコード」を使用して住所フィールドとgoogleジオコーダーを選択するジオフィールド uiでノードを編集/保存すると、データがジオコーディングされます。しかし、私は何千ものノードを持っており、各ノードのジオコード情報を更新するスクリプトを書こうとしています。すべてのノードをロードしてnode_save()を実行しようとしましたが、ジオコードフックが起動しませんでした。プログラムでジオフィールド情報を更新するにはどうすればよいですか?使用できるフックはありますか?
回答: ワイルドな推測:_node-edit-form_プロセスを使用してノードを実行し、geofield-magicを実行できます。 drupal_form_submit() を見て、ノードタイプの「コンテンツの追加」フォームの通常の手動送信から_$form_state['values']_を観察し、それらをプログラムで再構築してdrupal_form_submit() 関数。それはうまくいくのだろうか...一方、ジオフィールドの値の構造を調べて、プログラムで geocoder モジュールのapiのgeocoder()関数を利用して再構築することもできます。