Phát hiện trình duyệt Joomla


10

Chúng ta có thể tạo một bài đăng câu hỏi / câu trả lời kỹ lưỡng với các phương thức cốt lõi cho phép phát hiện trình duyệt trong Joomla 2.5 và 3 không? Sau khi nghiên cứu nhanh trên web, tôi cảm thấy rằng không có đủ thông tin trên một trang duy nhất hoàn thành chủ đề.

Câu trả lời:


14

Một hướng dẫn kỹ lưỡng hơn thực sự nên được thêm vào tài liệu wiki IMO, nhưng chia sẻ những gì tôi có thể thông qua điện thoại di động bây giờ.

Để tương thích 2.5 và 3.x, bạn có thể sử dụng JBrowser để thực hiện một số phát hiện trình duyệt. Tuy nhiên, lớp này có thể không hoạt động tốt với các trình duyệt hoặc phiên bản mới hơn. Để sử dụng nó để có được trình duyệt:

$browser = JBrowser::getInstance()->getBrowser();

Đối với phiên bản 3.2 trở lên, bạn có thể sử dụng JApplicationWebClient, đây là lớp mới hơn được thiết kế để linh hoạt hơn với các tùy chọn trình duyệt ngày nay. Để sử dụng nó để có được trình duyệt:

$client = JFactory::getApplication()->client->browser;

Cả hai lớp đều được ghi lại trên trang web API, http: // api.j Joomla.org/cms-3/index.html sẽ liên kết bạn với trang cơ sở cho 3,3 tài liệu.


3
Tôi sẽ không sử dụng JBrowser, đặc biệt nếu bạn muốn kiểm tra xem thiết bị có di động hay không hoặc loại nào. Nó thực sự có lỗi.
Valentin Despa

9

Ngoài câu trả lời của Michael, Lớp JApplicationWebClient còn có một vài thuộc tính hữu ích khác:

$client = JFactory::getApplication()->client;

$client->browser;
// The detected browser used by the web client (returns an integer)

$client->browserVersion;
// The detected browser version used by the web client. (string)

$client->mobile;
// True if the web client is a mobile device (Boolean)

$client->platform;
// The detected platform on which the web client runs (integer)

$client->userAgent;
//The web client's user agent string. (string)

$client->robot;
// True if the web client is a robot (Boolean)

Tài liệu API lớp JApplicationWebClient

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.