В целях безопасности:
Вы можете убедиться, что хук меню использует правильный доступ
В хуке меню:
$items['/ajax/%/edit'] = array(
'title' => 'something',
'page callback' => 'your_edit_callback',
'page arguments' => array(1),
'access callback' => 'node_access',
'access arguments' => array('update', 1),
'type' => MENU_LOCAL_TASK,
);
function your_edit_callback($node_id){
//something that edits the node here, only user(s) with node_access will be able to get here.
}
о доступе к узлу: * Вопределяя права доступа для узла, node_access () сначала проверяет, есть ли у пользователя разрешение «обход узла».Такие пользователи имеют * неограниченный доступ ко всем узлам.пользователь 1 всегда будет проходить эту проверку.
Лично я никогда не использовал field_attach, но полагался на node_save.
$node = node_load($node_id);
$node->field_fieldname[LANGUAGE_NONE][0]['value'] = "monkeys";
node_save($node);