Mô-đun cập nhật trình soạn thảo Drupal lên phiên bản cụ thể

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 9

Hầ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ết

Mẫ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ùng

Như 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

1. Kiểm tra những gì cần cập nhật với Composer

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
2

Kể 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ộc

Cù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 cim0 cũng có các bản cập nhật

2. Cập nhật lõi Drupal

Trướ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 cim2

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 cim3 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 cim4,

composer remove drupal/PROJECTNAME
0, drush cim6. Đ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ạn

Sau đó, 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 cim7. Tôi khuyên bạn nên sử dụng drush cim8

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 cim9

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 cim4,

composer remove drupal/PROJECTNAME
0, drush cim6

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ó

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

Chủ Đề