Lấy đường dẫn trực tiếp Google Drive bằng PHP

Khi bạn upload tập tin lên Google Drive và chia sẻ lại cho người dùng thì đó là link embed chứ không phải link trực tiếp. Bài viết này mình sẽ hướng dẫn cho bạn cách lấy đường dẫn trực tiếp của tập tin được chia sẻ trên Google Drive bằng mã PHP.

Google Drive App

Bài viết này mình hướng dẫn bằng ngôn ngữ PHP. Đối với các ngôn ngữ lập trình khác thì các bạn cũng làm tương tự nhé. Cách làm thì giống nhau như code thì khác, tùy thuộc vào ngôn ngữ bạn dùng.

Lấy đường dẫn trực tiếp Google Drive bằng PHP

Để lấy được đường dẫn trực tiếp từ Drive thì bạn phải có API key. Bạn truy cập vào trang chủ Google API để tạo dự án mới. Sau đó bạn vào menu Credentials để lấy API key.

function hocwp_theme_get_google_drive_file_url( $url, $api_key = '' ) {
	if ( ! empty( $api_key ) ) {
		$url   = esc_url_raw( $url );
		$parts = parse_url( $url );
		parse_str( $parts['query'], $query );
		$id = '';

		if ( isset( $query['id'] ) ) {
			$id = $query['id'];
		} else {
			$parts = explode( '/', $url );
			$key   = array_search( 'd', $parts );
			if ( is_int( $key ) && isset( $parts[ $key + 1 ] ) ) {
				$id = $parts[ $key + 1 ];
			}
		}

		if ( empty( $id ) ) {
			$last = array_pop( $parts );
			$id   = remove_query_arg( 'e', $last );
		}

		if ( ! empty( $id ) ) {
			$url = 'https://www.googleapis.com/drive/v3/files/' . $id . '?alt=media&key=' . $api_key;
		}
	}

	return $url;
}

Trong đoạn code ví dụ này mình viết trên WordPress. Do đó sẽ có những hàm mình dùng chung trong mã nguồn WordPress. Nếu bạn dùng cho các dự án PHP thuần thì bạn chỉnh sửa lại cho phù hợp nhé.

Cách sử dụng: Bạn gọi hàm và truyền vào đường dẫn chia sẻ của Google Drive. Tiếp đến bạn điền API key vào hàm. Kết quả của hàm trả về là URL trực tiếp (direct link) nếu như phân tích đúng. Ngược lại sẽ giữ nguyên URL truyền vào ban đầu.

Như vậy, qua bài viết này bạn đã biết cách lấy đường dẫn trực tiếp của tập tin trên Google Drive rồi nhé. Chúc bạn thành công.

4 bình luận cho “Lấy đường dẫn trực tiếp Google Drive bằng PHP

    1. Tham khảo là chính bạn à, phải chỉnh sửa lại mới được. Bạn dùng ý tưởng để biên soạn thành code cho riêng mình.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *