Grav - Móc sự kiện

Trong chương này, chúng ta sẽ nghiên cứu về Event Hookstrong Grav. Trong chương Plugins , bạn sẽ thấy, logic của plugin được bao gồm trong hai phương pháp. Các phương pháp làonPluginsInitializedonPageInitialized; các phương thức này tương tự như móc sự kiện. Để biết thêm và kiểm soát sức mạnh của các plugin Grav, bạn cần kiểm tra tính khả dụng của các móc sự kiện. Các móc sự kiện có mối quan hệ trực tiếp với Grav từ đầu đến cuối. Bạn phải biết thứ tự mà các hook được gọi và những gì có thể sử dụng được tại thời điểm các lệnh gọi này.

Bảng sau liệt kê các Grav cốt lõi event hooks được kích hoạt trong quá trình xử lý một trang.

Sr.No. Sự kiện & Mô tả
1

onFatalException

Bạn có thể kích hoạt sự kiện này bất kỳ lúc nào, nếu PHPđưa ra một ngoại lệ chết người. CácProblem plugin sử dụng điều này để quản lý việc hiển thị danh sách giải thích đầy đủ, cho lý do tại sao Grav đưa ra lỗi nghiêm trọng.

2

onPluginsInitialized

Đây là sự kiện plugin đầu tiên có thể sử dụng được trong Grav. Các đối tượng sau đã được giới thiệu như được đề cập bên dưới:

  • Uri
  • Config
  • Debugger
  • Cache
  • Plugins
3

onAssetsInitialized

Điều này xác định rằng assets trình quản lý được tải và sẵn sàng sử dụng và quản lý.

4

onPageNotFound

Nếu bạn tìm thấy một trang không mong muốn, bạn có thể loại bỏ sự kiện này. Hiện tại, plugin lỗi được sử dụng để chỉ định404 error trang.

5

onPageInitialized

Điều này chỉ định trang được yêu cầu bởi URL được tải vào đối tượng Trang.

6

onOutputGenerated

Điều này chỉ định quy trình đầu ra bởi Twig templatingđộng cơ. Hiện tại, nó chỉ là một chuỗiHTML.

7

onOutputRendered

Đây là một quá trình đầu ra, được gửi đến màn hình.

số 8

onShutdown

Đây là một sự kiện mới và rất mạnh mẽ cho phép bạn thực hiện các hành động. Điều này được thực hiện sau khi Grav cócompleted processingvà kết nối với máy khách bị đóng. Hành động riêng lẻ này không yêu cầu bất kỳ tương tác nào với người dùng, do đó có thể ảnh hưởng đến hiệu suất. Nó bao gồm theo dõi người dùng và xử lý công việc.

9

onBeforeDownload

Đây là một sự kiện mới passesvào đối tượng sự kiện có chứa tệp. Nó cho phép người dùng thực hiện ghi nhật ký, cấp và bỏ qua quyền tải xuống tệp được đề cập.

Móc sự kiện cành cây

Twig có bộ sưu tập móc sự kiện riêng để sử dụng như được đề cập bên dưới.

Sr.No. Sự kiện & Mô tả
1

onTwigTemplatePaths

Vị trí cơ sở của đường dẫn mẫu được đặt trên Twig object. Sự kiện này được sử dụng để thêm các vị trí khác nơi Twig sẽ tìm kiếm các đường dẫn mẫu.

2

onTwiglnitialized

initialize động cơ tạo khuôn Twig.

3

onTwigExtensions

Nó chỉ định các phần mở rộng nhánh lõi đã sẵn sàng để sử dụng. Móc sự kiện này cho phép bạn thêm phần mở rộng Twig của riêng mình.

4

onTwigPageVariables

Quá trình Twig này cho phép bạn trực tiếp một trang, tức là bạn có thể định vị process:twig:trutrong một trang tiêu đề YAML. Tại đây, bạn có thể thêm bất kỳ biến nào vào Twig và có thể truy cập vào twig trong quá trình này.

5

onTwigSiteVariables

Trong quá trình này, bạn sẽ thấy toàn bộ mẫu trang web trong order wisebằng phương pháp Twig. Hơn nữa, bạn có thể thêm bất kỳ biến nào vào Twig trong quá trình này.

Móc sự kiện Bộ sưu tập

Bảng sau liệt kê một móc sự kiện tập hợp.

Sr.No. Sự kiện & Mô tả
1

onCollectionProcessed

Trong phần này, khi quá trình hoàn tất, bạn có thể control một bộ sưu tập.

Móc sự kiện trang

Bảng sau đây liệt kê một bộ sưu tập các móc sự kiện trang.

Sr.No. Sự kiện & Mô tả
1

onBuildPagesInitialized

Sự kiện này rất hữu ích cho các plugin kiểm soát nội dung và lưu kết quả vào bộ nhớ cache. Sau khi sự kiện này được kích hoạt, các trang sẽ được tái chế. Điều này xảy ra khi bộ nhớ cache cóexpired hoặc nhu cầu refreshing.

2

onBlueprintCreated

Sự kiện này giúp xử lý và quản lý các biểu mẫu.

3

onPageContentRaw

Trong quá trình này, khi một trang được tìm thấy, headers được sửa, nhưng contentsẽ không được sửa. Bạn sẽ thấy mọi trang được kích hoạt trong hệ thống Grav. Nếu bạn đã xóa bộ nhớ cache hoặc xóa bộ nhớ cache, sự kiện này xảy ra.

4

onPageProcessed

Khi một trang là testedvà đã sửa, mọi trang đều bị loại bỏ trong hệ thống Grav. Hiệu suất không quan trọng trong trường hợp này, vì nó sẽ không phát trên trang được lưu trong bộ nhớ cache.

5

onPageContentProcessed

Bạn có thể thấy sự kiện này bị loại bỏ sau khi kỹ thuật content () của trang đã sửa nội dung trang. Sự kiện này hữu ích trong trường hợp bạn muốn thực hiện các hành động trên nội dung sau khi sửa nhưng hãy đảm bảo rằng kết quảcached.

6

onFolderProcessed

Một lần folderđược kiểm tra và sửa lỗi, mọi thư mục đều bị loại bỏ trong hệ thống Grav. Hiệu suất không quan trọng trong trường hợp này, vì nó sẽ không phát trên trang được lưu trong bộ nhớ cache.