Tôi đang phát triển một mô-đun để cập nhật các nút (cho phép sửa đổi). Có vẻ như thế này.
$nodes = node_load_multiple(array(), array('type' => $bundleType));
foreach ($ndoes as $node){
$w = entity_metadata_wrapper('node',$node);
$w->MyFields->set($someValue);
$w->save();
}
Nó đặt các trường chính xác nhưng id sửa đổi của nút không thay đổi sau đó $w->save()
.
Làm cách nào để cập nhật ID sửa đổi?
$w->revision->set(1)
đó có phải là một cách thủ công để cho drupal biết rằng nút đã được cập nhật? Tôi sẽ thử nó.
$w->revision->set()
làm việc Có vẻ như tôi hiểu lầm $w->save()
. Tôi nghĩ rằng nó sẽ tăng tự động sửa đổi id trong khi lưu. Có cách nào để có được bản sửa đổi tăng tiếp theo không? Cảm ơn bạn
revision->set(1)
yêu cầu nút ghi lại bản sửa đổi mới trong lần chỉnh sửa sắp tới / hiện tại của nút. Tôi không chắc tại sao trình bao bọc siêu dữ liệu không nhìn thấy cài đặt toàn cầu tạo bản sửa đổi mới ..... nhưng đặt cờ sửa đổi là một cách giải quyết rất đơn giản như bạn đã thấy bây giờ. Tôi đã cung cấp nhận xét của mình dưới dạng câu trả lời bên dưới nếu bạn quan tâm nâng cao nhận xét đó để giúp những người dùng khác trong tương lai tìm được câu trả lời chính xác.
create new revision
cờ được đặt trên nút cho loại nội dung? Bạn đã thử như thế$w->revision->set(1);
trước khi tiết kiệm? ....