Bài viết này mình sẽ hướng dẫn cho các bạn cách lấy link nhạc trực tiếp từ nhaccuatui.com để sử dụng trong các player. Hệ thống sẽ tự động lấy direct link từ link nghe nhạc trên thanh địa chỉ của trình duyệt.
Một bài nhạc bất kỳ trên nhaccuatui.com sẽ có dạng /bai-hat/ten-bai-hat.id.html.
Lấy link nhạc trực tiếp từ nhaccuatui.com
Nếu như bạn dùng JW Player hoặc MediaElement.js thì bạn sẽ cần lấy link trực tiếp. Để lấy link trực tiếp từ nhaccuatui.com bạn dùng đoạn code sau:
function hocwp_theme_custom_get_nhaccuatui_direct_link( $link ) { $result = ''; $info = pathinfo( $link ); if ( ! isset( $info['extension'] ) || 'mp3' != $info['extension'] ) { $domain = HT()->get_domain_name( $link, true ); if ( 'nhaccuatui.com' == $domain ) { $tmp = basename( $link ); $tmp = 'http://m.nhaccuatui.com/bai-hat/' . $tmp; $content = HT_Util()->get_contents( $tmp ); $content = strip_tags( $content, '<a>' ); $dom = new DomDocument(); @$dom->loadHTML( $content ); foreach ( $dom->getElementsByTagName( 'a' ) as $item ) { $href = $item->getAttribute( 'href' ); if ( ! empty( $href ) ) { $info = pathinfo( $href ); if ( isset( $info['extension'] ) && 'mp3' == $info['extension'] ) { $result = $href; break; } } } } } elseif ( 'mp3' == $info['extension'] ) { $result = $link; } return $result; }
Bạn chỉ cần nhập đầu vào cho hàm hocwp_theme_custom_get_nhaccuatui_direct_link
là đường dẫn bài hát:
https://www.nhaccuatui.com/bai-hat/thu-cho-me-truong-vu.v0Kzu3fzl6Ve.html
Kết quả trả về của hàm sẽ là đường link trực tiếp của bản nhạc.
echo hocwp_theme_custom_get_nhaccuatui_direct_link( 'https://www.nhaccuatui.com/bai-hat/thu-cho-me-truong-vu.v0Kzu3fzl6Ve.html' ); //http://r1---vt.nixcdn.com/874e675cb20ddb5136a669ad959b0f19/5ad28744/NhacCuaTui938/ThuChoMe-TruongVu-2453305.mp3
Trong hàm này mình sẽ kiểm tra domain của link xem có phải của trang nhaccuatui.com hay không. Nếu đúng thì bạn dùng hàm file_get_contents
để lấy toàn bộ mã HTML của link. Sau đó bạn dùng DomDocument
để phân tích tất cả các link lấy về. Nếu link nào có đuôi .mp3 thì đó là link trực tiếp của bài hát hiện tại. Chúc bạn thành công.
Cái này lấy tất cả link trong nhạc của tui hay sao vậy bạn?
Không bạn, lấy link trực tiếp của bài từng bài hát.
Code không chạy nữa bạn ơi
Admin cho hỏi cái thêm vào đâu của theme vậy
Code này hiện đã cũ nên cần phải cập nhật lại nha bạn, còn việc chèn vào giao diện thì nó chỉ là hàm bình thường, bạn cần phải gọi hàm để sử dụng nhé.