Nội dung bài viết
La Kiến Vinh Phương pháp sử dụng Mobile_Detect.php (Third Party) kiểm tra xem người sử dụng đang dùng thiết bị di động nào truy cập vào web với ngôn ngữ PHP. Điều này có ích lợi lớn trong việc điều hướng người dùng đến giao diện cần thiết hoặc giới thiệu các sản phẩm phù hợp cho họ.

Giới thiệu

Càng hiểu rõ người sử dụng, bạn càng có cơ hội bán hàng và chăm sóc khách hàng lớn hơn. Trong giới hạn bài viết này việc phát hiện thiết bị khác nhau truy cập vào website bạn sẽ giúp bạn hiểu rõ người dùng và có các hành động tương ứng:

  • Giúp người sử dụng dễ dàng nhận được một giao diện tương thích với thiết bị của họ thay vì sử dụng chung giao diện với màn hình cỡ lớn của PC.
  • Điều hướng người sử dụng đến đúng ứng dụng dành riêng cho thiết bị của họ hoặc các nhóm sản phẩm.
  • Để hiện thực tính năng này, ta cần một nhóm dữ liệu liên quan phân tích thông qua $_SERVER['HTTP_USER_AGENT'] nhưng điều này sẽ tốn thêm nhiều chi phí cho sản phẩm in-house, để đơn giản hóa vấn đề, ta sẽ sử dụng sản phẩm của bên thứ 3 - http://mobiledetect.net, họ đã xây dựng sẵn việc nhận dạng các thiết bị trọng yếu cho chúng ta sử dụng.

Tiền đề bài viết

Với STDIO, chúng tôi có sử dụng Mobile_Detect.php để tạo sự tiện dụng cho người sử dụng trong việc đọc các bài viết của STDIO trên các thiết bị khác nhau. Bài viết này được biên soạn nhằm thực hiện những điều sau:

  • Chia sẻ cho cách thức cơ bản nhận dạng thiết bị người sử dụng truy cập vào website (PHP).
  • Một giải pháp gọn nhẹ cho việc điều chỉnh view của website phù hợp với thiết bị người dùng.
  • Giúp bạn định hướng người dùng tới các sản phẩm phù hợp hệ thống của họ.
  • Chia sẻ bài viết này cũng là việc tôi tỏ lòng biết ơn với giải pháp của http://mobiledetect.net.

Đối tượng hướng đến

Các web-developer, có nhu cầu kiểm tra thiết bị người sử dụng truy cập vào website để đưa ra định hướng đúng đắn, phù hợp cho người sử dụng - views, giới thiệu sản phẩm. Trong bài viết này, tôi chỉ hướng dẫn phát hiện ra 6 loại thiết bị với hệ điều hành cụ thể - [Android - Windows Phone 8 - iOS] x [Phone - Tablet] vì hiện tại các hệ điều hành trên mobile này phổ biến nhất hiện nay và trong giới hạn của STDIO, tôi chỉ sử dụng để phát hiện 6 loại thiết bị, hệ điều hành trên, bạn có thể tham khảo thêm trên trang chủ của họ để có nhiều trải nghiệm hơn.

Trong bài viết này, tôi sẽ hướng dẫn cụ thể, chi tiết ở mức độ dễ code nhất, nên không đòi hỏi các kỹ năng đặc biệt, chỉ cần bạn biết cơ bản PHP là đủ. Do viết ở mức độ đơn giản, nên tôi không tối ưu hóa codes quá nhiều để tránh khó hiểu.

Mobile_Detect.php

Mobile_Detect.php là một thư viện đã được xây dựng sẵn bởi Victor Stanciu và các nhà phát triển khác Șerban Ghiță, Nick Ilyin. Chỉ cần một file này, bạn có thể nhận dạng được khá nhiều hệ điều hành, thiết bị, trình duyệt, rất tiện cho việc phân loại thiết bị người sử dụng.

Khảo sát ví dụ

Đầu tiên bạn thử truy cập STDIO Training bằng máy tính bàn (desktop, laptop), bạn sẽ thấy được giao diện sau

stdio_training_center_pc

Sau đó, cũng với đường dẫn trên, bạn sử dụng thiết bị Android, hoặc iOS hoặc Windows Phone 8, điều bạn nhận ra là, trình duyệt của bạn không mở trang web trên như trên PC, mà nó sẽ có giao diện như bên dưới đây phù hợp với điện thoại của bạn.

stdio_training_center_phone

Điều đó xảy ra vì, tại web-server, nhóm phát triển STDIO đã kiểm tra được thiết bị mà người sử dụng truy cập vào là thiết bị gì để có hành động tương ứng. Theo thiết kế của STDIO, người sử dụng truy cập vào bằng PC sẽ mở trang web cho người dùng nhận giao diện phiên bản giao diện PC, nếu là các thiết bị di động sẽ gửi cho người dùng giao diện di động tương ứng (CSS, JS, ...).

Hướng dẫn cài đặt và sử dụng

Download Mobile_Detect.php

Bạn có thể download Mobile_Detect.php tại đây - Mobile_Detect.zip hoặc bạn có thể download từ trang chủ http://mobiledetect.net.

Cài đặt

Sau khi download Mobile_Detect.zip về, bạn giải nén được file Mobile_Detect.php, sau đó bạn up file này lên web-host và đơn giản include (include_once, require, require_once) vào file php nào muốn kiểm tra thiết bị.

Codes kiểm tra thiết bị cơ bản

Đặt đoạn code này vào bất kỳ đâu bạn muốn kiểm tra, lưu ý rằng $ZERO_PATH là đường dẫn trên web server của bạn đến nơi mà bạn đặt file Mobile_Detect.php, hãy thay đường dẫn này cho phù hợp với trường hợp của bạn.

// Sua lai $ZERO_PATH cho phu hop voi truong hop cua ban
// Trong truong hop nay, chung toi dat Mobile_Detect tren www.stdio.vn
$ZERO_PATH = "../Mobile_Detect.php";

require_once($ZERO_PATH);

$detect = new Mobile_Detect;

if($detect->isMobile())
{
	if ($detect->isTablet())
	{
		echo "TABLET: ";
		
		if($detect->version("Windows Phone"))
		{
			echo "Windows Phone 8";
		}
		else if($detect->isiOS())
		{
			echo "iOS";
		}
		else if ($detect->isAndroidOS())
		{
			echo "Android";
		}
	}
	else
	{
		echo "PHONE: ";
		
		if($detect->version("Windows Phone"))
		{
			echo "Windows Phone 8";
		}
		else if($detect->isiOS())
		{
			echo "iOS";
		}
		else if ($detect->isAndroidOS())
		{
			echo "Android";
		}
	}
}
else
{
	echo "PC: www.stdio.vn";
}

Các liên kết

  • http://mobiledetect.net - 30/3/2015
  • https://training.stdio.vn - 30/3/2015
THẢO LUẬN
ĐÓNG