Проблема сохранения поля изображения с помощью хуков в Drupal 6 - PullRequest
1 голос
/ 07 июля 2010

Вот мой пользовательский модуль;он в основном выбирает файл с определенного URL, сохраняет его во временной папке, а затем я хочу, чтобы он изменил поле cck типа 'file' (имя поля: field_video_thumb):

function mymodule_nodeapi(&$node, $op) {
switch ($op) {
    case "update":
              $node->field_video_thumb[0] = 
              field_file_save_file ($filename, array(),
              $files_path, FILE_EXISTS_REPLACE);
              // node_save($node);
            break;
    }
}

Проблема, которую яесть здесь то, что когда я комментирую 'node_save ($ node)', он работает (но вызывает рекурсивно, конечно), и удаление его ничего не делает.

Я должен упустить что-то действительно очевидное, но не могу понятьэто из.

1 Ответ

1 голос
/ 07 июля 2010

Я ответил на аналогичный вопрос некоторое время назад.Существуют некоторые дополнительные шаги, но наиболее важным отличием от вашей попытки является использование операции «preave» hook_nodeapi() вместо «update», так как обновление происходит после обновления узла.

(Код в ответе был взят из служебного класса, поэтому вам нужно немного его настроить, чтобы он работал внутри функции.)

...