Bây giờ tôi có các tình huống để xác nhận tham số Mô-đun trong phía quản trị viên của mô-đun.
Tôi biết có tùy chọn với Bộ lọc trong thông số mô-đun nhưng bị giới hạn, tôi không thể xác thực một số mẫu hoặc điều kiện tùy chỉnh.
Có tùy chọn nào có sẵn trong Joomla để xác thực các tham số Mô-đun ở phía quản trị viên không?
Cảm ơn trước.
Bạn có thể tạo một quy tắc tùy chỉnh để xác nhận. Ví dụ: tên mô-đun của bạn là mod_mymodule
:
Thêm thuộc tính addrulepath
vào bộ trường trong tệp .xml:
addrulepath = "mô-đun/mod_mymodule"
Đây sẽ là đường dẫn đến thư mục quy tắc tùy chỉnh.
Thêm thuộc tính validate
vào trường có tên của tệp quy tắc:
xác thực = "testint"
Điều này sẽ cung cấp cho chúng tôi các tập tin testint.php
.
Tạo tệp quy tắc testint.php
và đặt nó vào đường dẫn được chỉ định trong thuộc tính addrulepath
. Vì vậy, đường dẫn đầy đủ sẽ là:
administrator/modules/mod_mymodule/testint.php
Đây là một lớp quy tắc xác nhận đơn giản:
class JFormRuleTestint extends JFormRule
{
public function test(&$element, $value, $group = null, &$input = null, &$form = null)
{
return ((int)$value > 0 && (int)$value < 2);
}
}
nó sẽ mở rộng lớp JFormRule
và bạn sẽ chỉ cần một phương thức, được gọi là test
. $value
sẽ chứa đầu vào từ trường. Ở đây chúng tôi đang kiểm tra nó là số nguyên trong khoảng từ 0 đến 2.