Gần đây, chúng tôi đã nâng cấp lên Drupal 9.3.0 bằng cách sử dụng bố cục tệp Trình soạn thảo. Trang web kết quả đang hoạt động bình thường và hiện đang chạy trong miền xuất bản. Chúng tôi có một bộ tiện ích mà chúng tôi chạy dưới dạng tập lệnh Drush. Một trong những nội dung chưa xuất bản này mà chúng tôi không muốn google và các công cụ tìm kiếm khác tìm thấy -- chưa.
Tôi đã chuyển vào thư mục chứa composer.json -- cao hơn webroot một cấp. tôi đã chạy nhà soạn nhạc yêu cầu drush/drush
đã thêm "drush/drush": "^11.0",
thành composer.json và cập nhật thư mục nhà cung cấp cho phù hợp. Sau đó, tôi đã tạo một tập lệnh php nhỏ để hủy xuất bản một nút -- có tên là x.php:
<?php
sử dụng Drupal\node\Entity\Node;
in "Top\n";
$node = Nút::load('1881');
$node->setPublished(FALSE);
$node->save();
in "Bot\n";
tôi đã chạy nhà cung cấp/drush/drush/drush scr x.php
. Tập lệnh chạy không có lỗi và in "Top" và "Bot" như mong đợi. Tuy nhiên, chạy phần khen này Không hủy xuất bản nid = 1881. Tôi chạy lại lệnh với -d
switch mang lại cho tôi rất nhiều đầu ra -- nhưng không có thông báo lỗi nào hoạt động. Tôi đã kiểm tra error_log của trang web -- không có gì. tôi đã thêm một var_dump($nút);
sau $node = Nút::load('1881');
và có thể thấy nút đang được tải.
Tôi cần hủy xuất bản hơn 700 nút và không muốn thực hiện việc này theo cách thủ công. Bất kỳ đề xuất về cách tiến hành?