プログラムでノード参照フィールドを設定するためのヘルプが必要です。
私のモジュールは正常にを作成し、「CCK」フィールドのペアをノードに関連付けます。これらのフィールドの1つは、node_referenceフィールドです。私のコードは次のとおりです。
$field_ref_name = 'field_custom_reference';
$field = field_info_field($field_ref_name);
if (empty($field)) {
$field = array(
"field_name"=>$field_ref_name,
"label"=>"Custom Reference",
"type"=>"node_reference",
"cardinality"=>"1",
'locked' => TRUE,
);
field_create_field($field);
}
$instance = array(
"field_name"=>$field_ref_name,
"label"=>"Sequence Reference",
"type"=>"node_reference",
"widget"=>array(
"type"=>"node_reference_autocomplete"
),
"description" => "text describing purpose of this field",
);
$instance["entity_type"] = "node";
$instance["bundle"] = $type;
if( !in_array($type, $field['bundles']['node']) )
field_create_instance($instance);
これでコードは機能しますが、ノード参照フィールドに有効な値を入力してノードを編集して保存しようとすると、次のエラーが発生します。
...:この投稿は参照できません。
エラーの理由は、ノード参照フィールド設定に「参照可能なコンテンツタイプ」として選択されたノードがないためであることに気付きました。
参照可能なコンテンツタイプを設定するためにコードを調整する方法を知っている人はいますか?