プログラムでノードを保存しています。私の読書から、node_save()が呼び出されたときに、Path autoがトリガーされてURLエイリアスが自動的に作成されるように聞こえます。ただし、これは発生していません。
$ node-> path_set_alias = TRUEに設定する必要があると後で読みました。ただし、これも正しく機能していません。
7.12および最新バージョンのpathautoを使用します。
これが私のコードです。
$node = new stdClass();
//set other defaults
node_object_prepare($node);
$node->type = $page_data['content_type'];
$node->body[LANGUAGE_NONE][0]['value'] = $page_data['description'];
$node->body[LANGUAGE_NONE][0]['summary'] = text_summary($page_data['description']);
$node->body[LANGUAGE_NONE][0]['format'] = 'filtered_html';
$node->title = $page_data['title'];
$node->field_product_price[LANGUAGE_NONE][0]['value'] = $page_data['price'];
$node->field_item_location[LANGUAGE_NONE][0]['postal_code'] = $page_data['zipcode'];
$node->uid = "1";
$node->status = 1;
$node->active = 1;
$node->pathauto_perform_alias = TRUE;
//the name of my actual field is 'product images'
$node->field_product_images[LANGUAGE_NONE] = $images;
unset($images);
$node->field_baby_clothes_category[LANGUAGE_NONE][0]['tid'] = $page_data['category'];
if($node = node_submit($node)) { // Prepare node for saving
node_save($node);
}
これを正しく機能させる方法についての考えは?ありがとう!
Drupal.orgでは、$ node-> languageプロパティを設定しないと、この問題が発生することを説明しました。 $ node-> language = LANGUAGE_NONEまたは$ node-> language = 'en'を設定すると、これを修正できます。
また、Drupalに対して$ node-> pathauto_perform_aliasではなく、$ node-> path ['pathauto'] = TRUEを使用します。