Bạn có nhiêu drupal site khác nhau, nhưng muốn người dùng của website này cũng có thể sử dụng cùng thông tin đăng nhập ở các website khác, thông tin thay đổi ở site này, kéo theo thông tin ở các site khác cũng thay đổi, ... Tôi có một kinh nghiệm nhỏ của tôi ở project gần đây để xử lý việc này khá đơn giản.
Hệ thống menu ở Drupal 6 đã được cải tiến rất nhiều, đẹp hơn, gọn hơn và uyển chuyển hơn. Đáng kể nhất ở đây là hook_menu_alter đã được thêm vào, giúp người thảo chương thực hiện một số thao tác tưởng chừng khó mà nay rất dễ.
Các bước để Drupal xây dựng cấu trúc menu là:
1. Gọi các hook_menu của các module để lấy về các menu items.
2*. Gọi hook_menu_alter của các module, cho phép chúng thay đổi tuỳ ý cấu trúc menu vừa được thu lượm.
3. Lưu cấu trúc menu items đã được alter vào CSDL.
Một trang trong Drupal được định nghĩa đầy đủ bởi một menu item, bao gồm, path, quyền truy cập, tiêu đề trang, callback, ... như vậy, thay đổi cấu trúc một menu item, có dẫn đến việc thay đổi hoàn toàn một trang đang có.
Hệ thống menu ở Drupal 6 đã được cải tiến rất nhiều, đẹp hơn, gọn hơn và uyển chuyển hơn. Đáng kể nhất ở đây là hook_menu_alter đã được thêm vào, giúp người thảo chương thực hiện một số thao tác tưởng chừng khó mà nay rất dễ.
Các bước để Drupal xây dựng cấu trúc menu là:
1. Gọi các hook_menu của các module để lấy về các menu items.
2*. Gọi hook_menu_alter của các module, cho phép chúng thay đổi tuỳ ý cấu trúc menu vừa được thu lượm.
3. Lưu cấu trúc menu items đã được alter vào CSDL.
Một trang trong Drupal được định nghĩa đầy đủ bởi một menu item, bao gồm, path, quyền truy cập, tiêu đề trang, callback, ... như vậy, thay đổi cấu trúc một menu item, có dẫn đến việc thay đổi hoàn toàn một trang đang có.
Trường hợp site của bạn bạn không muốn khoe rằng mình đang sử dụng Drupal, chèn thêm hậu tố .html vào các path của Drupal sẽ giúp ích. Drupal có module path để tạo tên giả cho các path hiện có, tuy nhiên, path chào cũng cần thêm hậu tố .html thì... sử dụng module path hơi phí. Bạn chèn đoạn mã sau vào file settings.php, magic sẽ được thực hiện.
NOTE: bài viết chỉ dành cho Drupal 5
Trường hợp site của bạn bạn không muốn khoe rằng mình đang sử dụng Drupal, chèn thêm hậu tố .html vào các path của Drupal sẽ giúp ích. Drupal có module path để tạo tên giả cho các path hiện có, tuy nhiên, path chào cũng cần thêm hậu tố .html thì... sử dụng module path hơi phí. Bạn chèn đoạn mã sau vào file settings.php, magic sẽ được thực hiện.
Flashvideo là một Drupal module hỗ trợ việc đăng tải video dựa trên node. Module này có thể sử dụng thư viện ffmpeg cài trên web server để thực hiện tự động việc chuyển đổi các định dạng video khác về flv, từ đó, video có thể dễ dàng nhúng vào các flash player.
Trường hợp bạn sử dụng một linux server thì chuyện đơn giản, cài ffmpeg dễ, lệnh để flashvideo thực thi cho việc chuyển đổi định dạng cũng được viết sẵn, ... Nhưng nếu sử dụng Windows thì có vẻ hơi phiền phức hơn một chút -- ffmpeg.org không có bản phân phối cho Windows, tài liệu hướng dẫn nghèo nàn, ...
Trong trường hợp bạn cần một site có tính năng: upload các file video với các định dạng khách nhau (wmv, avi, mpeg, ...), dung lượng file có thể lên đến 100 MB, site tự động chuyển file về định dạng .flv, tạo ảnh thumbnail, ... thì bạn có thể sử dụng Drupal 6 kết hợp với module flashvideo được cài đặt trên một server có hỗ trợ thư viện FFmpeg, ở đây tôi sử dụng Dreamhost.
Một trong số các chiêu SEO là làm sao cho người dùng, hay máy đọc, đi hết trang này đến trang kia trong site. Đối với Drupal, sử dụng free tags có lẽ là cách phù hợp. Nhưng nếu có thêm được tính năng, dựa vào nội dung bài viết rồi Drupal tự động đánh thẻ thì hay biết mấy (^_^) và nếu như ở trang node details cụ thể, nếu có được tính năng, từ những tags được đánh cho node, Drupal tự phát sinh các term liên quan, thì còn gì bằng! Module cho các tính năng đó, sẽ không khó thực hiện (bạn dành thời gian code Drupal nhé).
Recent comments
2 days 21 hours ago
2 days 21 hours ago
5 days 19 hours ago
1 week 1 day ago
1 week 2 days ago
1 week 4 days ago
1 week 5 days ago
2 weeks 16 hours ago
2 weeks 3 days ago
2 weeks 3 days ago