drupal 8. 9. các trang web x được quản lý bằng Composer có thể được cập nhật lên Drupal 9. x bằng cách làm theo các bước dưới đây.
Trước khi cập nhật
Làm theo hướng dẫn trên trang Nâng cấp lên Drupal 9
- Drupal 9 yêu cầu cài đặt. thay đổi php
Như với bất kỳ bản cập nhật lớn nào, hãy sao lưu toàn bộ [hệ thống tệp và cơ sở dữ liệu] trước khi bạn bắt đầu
Quy trình cập nhật của Viện Truyền thông
Viện Truyền thông đã cung cấp tập lệnh cập nhật để hỗ trợ nâng cấp này. Tham khảo quy trình cập nhật gt_installer Drupal 8 lên Drupal 9 của Institute Communications để cập nhật Chủ đề GT, Công cụ GT và Hồ sơ GT lên phiên bản mới nhất của chúng.
Quá trình nâng cấp
1. Cài đặt Trạng thái nâng cấp và đọc báo cáo
Cài đặt Trạng thái nâng cấp giống như bất kỳ mô-đun nào khác
composer require drupal/upgrade_status
drush en upgrade_status
drush cr
Sau khi kích hoạt mô-đun và xóa bộ đệm, hãy điều hướng đến Báo cáo > Trạng thái nâng cấp [quản trị viên/báo cáo/trạng thái nâng cấp]. Trên trang Trạng thái nâng cấp, hãy ghi lại phần Xóa và Cập nhật .
Xóa hiển thị các mô-đun và chủ đề đã gỡ cài đặt không tương thích. Bạn có thể xóa từng dự án bằng cách sử dụng
composer remove drupal/PROJECTNAME
Bản cập nhật hiển thị từng dự án cần bản phát hành tương thích với Drupal 9. Đối với mỗi dự án, hãy chuyển đến Sự cố [hoặc Drupal liên quan. org] và ghi lại phiên bản nào được yêu cầu để tương thích với Drupal 9.
2. Nâng cấp mô-đun/chủ đề Drupal lên 9. bản phát hành tương thích với x
Sử dụng kiến thức từ danh sách Trạng thái nâng cấp' Cập nhật ở trên, nâng cấp từng mô-đun lên bản phát hành Drupal 8 và Drupal 9 được đề xuất
composer require drupal/imageapi_optimize:^4.0
Nếu bạn không chắc chắn về cách viết câu lệnh yêu cầu của nhà soạn nhạc, mỗi bản phát hành dự án [e. g. drupal/imageapi_optimize. ^4. 0] có đoạn văn bản Cài đặt với Trình soạn thảo để sao chép và dán
Lặp lại điều này cho từng dự án cần phiên bản mới để hỗ trợ Drupal 9. Sau đó, nâng cấp cơ sở dữ liệu trên trang web Drupal của bạn bằng cách truy cập {website}/update. php
Lưu ý cho các bản phát hành chỉ dành cho Drupal 9Hầu hết các mô-đun, bao gồm tất cả các phần phụ thuộc của bản cài đặt Drupal 8 Drupal Express, đều có bản phát hành tương thích với cả Drupal 8 và Drupal 9
- drupal. trang tải xuống dự án mô-đun org [e. g. câu hỏi thường gặp. 7. 0] thể hiện khả năng tương thích với cả hai phiên bản với
Requires Drupal: ^8 || ^9
Tuy nhiên, có những bản phát hành chỉ yêu cầu Drupal 9. Đối với các mô-đun đó [chẳng hạn như permissions_by_term. 3. 0], bạn sẽ cần nâng cấp chúng trong khi nâng cấp lên Drupal 9. x
3. Nâng cấp lõi Drupal lên 9. x
từ drupal. tài liệu tổ chức
composer require drupal/core-recommended:^9.0.0 drupal/core-composer-scaffold:^9.0.0 drupal/core-project-message:^9.0.0 --update-with-dependencies --no-update
Xin lưu ý đối số --no-update, mà.
We use --no-update to avoid a chicken-and-egg problem with mutual dependencies.
--no-update
4. bắt đầu nâng cấp
Bạn nghĩ rằng bạn đã cập nhật tất cả các mô-đun và chủ đề của mình và có thể bắt đầu cập nhật Drupal Core lên Drupal 9?
composer update
Ghi lại bất kỳ thông báo lỗi nào của nhà soạn nhạc trong quá trình này.
5. Cập nhật Drupal
Bây giờ, hãy chạy các bản cập nhật cơ sở dữ liệu
Nếu mọi thứ bị phá vỡ
Nếu nhà soạn nhạc gặp trục trặc và bạn thấy mình đang ở trong luyện ngục, hãy thay thế nhà soạn nhạc. json bằng phiên bản sao lưu trước khi nâng cấp của bạn và xóa nhà soạn nhạc. khóa tệp. Sau đó, buộc nhà soạn nhạc kiểm tra lại và cài đặt lại các mô-đun về phiên bản cũ của chúng với
Cuối cùng thì tôi cũng đã có thể ra mắt phiên bản alpha của trang web cá nhân của mình vào tuần trước bằng cách sử dụng Drupal 8, thứ mà tôi đã lên kế hoạch thực hiện từ khá lâu. Tôi đã quản lý để di chuyển các bài đăng trên blog của mình và chỉ cần thêm hình ảnh, lần này sử dụng sức mạnh của mô-đun Đoạn văn cho tất cả nội dung
Trong 8 ngày qua kể từ khi ra mắt, một số bản cập nhật đã có sẵn. Vì nhiều bạn Drupal hơi lo lắng về Composer nên mình nghĩ sẽ rất tốt nếu ghi lại các bước của mình cho mọi người xem
điều kiện tiên quyếtMẫu dự án nhà soạn nhạc
Để tạo trang web này, tôi đã sử dụng mẫu trình soạn thảo dự án drupal, đây là cách được đề xuất để thiết lập dự án Drupal 8 mới. Để bắt đầu dự án của mình, tôi đã chạy composer create-project drupal-composer/drupal-project
Kiến thức về quản lý cấu hình
Nhập cấu hình với drush cim
và xuất với
composer remove drupal/PROJECTNAME
0Để biết thêm thông tin về điều này, hãy đọc các bài viết khác của tôi Quản lý cấu hình Drupal 8 dễ dàng với các nhà phát triển đồng nghiệp & Quản lý cấu hình Drupal 8 - xử lý các sự cố nhập
1. Kiểm tra những gì cần cập nhật với giao diện người dùngNhư bạn có thể thấy từ hình trên, tôi cần cập nhật lõi Drupal và 2 mô-đun đóng góp. Bây giờ tôi có thể tiến hành mở trang web của mình trong thiết bị đầu cuối [chính xác là iTerm 2] để tôi có thể chạy trình soạn nhạc
Bạn cũng có thể chạy lệnh
composer remove drupal/PROJECTNAME
1 để cung cấp cho bạn danh sách đầy đủ, bao gồm các thành phần Symfony mà Drupal 8 hiện phụ thuộc vào. Đừng lo lắng, tất cả những gì bạn cần chú ý là những mục bắt đầu từ composer remove drupal/PROJECTNAME
2Kể từ khi viết bài viết này, tôi đã phát hiện ra lệnh
composer remove drupal/PROJECTNAME
3 tuyệt vời cung cấp danh sách ngắn hơn các dự án cấp cao nhất có phụ thuộc. Cập nhật các dự án được hiển thị ở đây với composer remove drupal/PROJECTNAME
4 ở cuối lệnh cập nhật trình soạn nhạc của bạn sẽ tự động nhận các dự án phụ thuộcCùng với lõi Drupal, bạn sẽ nhận thấy rằng
composer remove drupal/PROJECTNAME
5 và composer remove drupal/PROJECTNAME
6 như mong đợi, nhưng chúng tôi cũng thấy rằng composer remove drupal/PROJECTNAME
7 và drush cim
0 cũng có các bản cập nhật2. Cập nhật lõi DrupalTrước khi bạn làm bất cứ điều gì, tôi khuyên bạn nên nhập cấu hình vì một nhà phát triển đồng nghiệp có thể đã thêm một số cấu hình mới mà bạn chưa nhập vào môi trường cục bộ của mình bằng drush cim
Bạn có thể cập nhật lõi Drupal bằng cách chạy lệnh drush cim
2
Thay vì những gì tôi đã nhập trong ảnh chụp màn hình bên dưới, tôi khuyên bạn nên sử dụng drush cim
3 trong trường hợp nhà soạn nhạc của bạn. tệp khóa tham chiếu một phiên bản cụ thể
Tôi đã hoàn thiện bản cập nhật này thành cốt lõi bằng cách cập nhật cơ sở dữ liệu, xuất bất kỳ cấu hình mới nào và xóa tất cả bộ đệm bằng cách chạy drush cim
4,
composer remove drupal/PROJECTNAME
0, drush cim
6. Điều quan trọng cần nhớ là xuất cấu hình vì các bản cập nhật cơ sở dữ liệu có thể thêm, xóa hoặc cập nhật tệp cấu hình của bạnSau đó, tôi đã xem qua trang web để xem mọi thứ có ổn không và nó đã hoạt động tốt
Trước khi cam kết, tôi đã kiểm tra git diff và thấy phần bên dưới của nó
Một phần của unstaged git diff mà tôi đã cam kết
Thật tốt khi có điều này như một cam kết riêng biệt với bất kỳ bản cập nhật nào khác để dễ dàng xem những gì đã thay đổi, nhưng cũng cung cấp cho bạn khả năng hoàn nguyên điều đó nếu cần sau này
3. Cập nhật mô-đun đóng góp DrupalĐiều này cực kỳ dễ dàng, bạn chỉ cần chạy drush cim
7. Tôi khuyên bạn nên sử dụng drush cim
8
Chúng tôi đã thấy trước đó rằng mô-đun Metatag cần cập nhật, vì vậy tôi đã chạy drush cim
9
Tôi đã hoàn thiện bản cập nhật này thành cốt lõi bằng cách cập nhật cơ sở dữ liệu, xuất bất kỳ cấu hình mới nào và xóa tất cả bộ đệm bằng cách chạy drush cim
4,
composer remove drupal/PROJECTNAME
0, drush cim
6Trước khi cam kết, tôi đã kiểm tra git diff và thấy phần bên dưới của nó
Tôi hy vọng bạn tìm thấy hướng dẫn này hữu ích. Bạn có tham gia bất kỳ cuộc phiêu lưu thú vị nào khi cập nhật trang web Drupal 8 của mình với Composer không? . com