iFrame là gì? Cách nhúng iFrame vào website sao cho tối ưu nhất?

Đỗ Đức Đình Đạt 03/04/2021 562 lượt xem

 

iFrame là gì?

iFrame là thành phần hay thẻ tag của một HTML element giúp nhúng HTML, hình ảnh, video hay trang web khác vào website của mình. iFrame là viết tắt của cụm từ Inline Frame và tạm dịch là khung nội tuyến. Ngoài khái niệm về iFrame, về phương diện người sử dụng thì các lợi ích khi sử dụng iFrame là gì? Cùng tìm hiểu nhé!

iFrame là gì
iFrame là một công cụ đưa hình ảnh/video/trang web vào bài viết/website của bạn

Với iFrame, bạn có thể tăng sự thu hút cho website. Đồng thời tối ưu hóa SEO và tăng tỷ lệ truy cập, time-on-site trên web. Có thể xem iFrame là một phần của nội dung web chứ không phải là một phần của thiết kế giao diện website.

Ví dụ, website bạn đăng tải một bài viết hướng dẫn sử dụng cho khách hàng, nhưng để miêu tả một cách cặn kẽ và chi tiết, bạn thêm một video có liên quan từ Youtube để mô tả rõ hơn cho người đọc. Trong trường hợp này, bạn có thể thêm iFrame vào ngay bên trong bài viết của mình.

Hãy tìm hiểu kỹ hơn về HTML với bài viết: “HTML5 là gì?

Ưu nhược điểm của iFrame

iFrame là một thẻ HTML dùng để hiển thị nội dung từ Website khác trên Web WordPress bạn sở hữu. Để dễ hiểu hơn, tôi thường hình dung nó như một cửa sổ cho phép khách truy cập tương tác với nội dung từ một Website khác mà không cần rời khỏi trang Web duyệt. Điều này có thể giúp hạn chế ảnh hưởng đến tốc độ tải Server và Website của bạn.

Tôi sẽ đưa ra một ví dụ cụ thể để bạn dễ hiểu hơn nhé. Bạn gắn Video trên Website của mình. Khách truy cập có thể xem trực tiếp Video đó từ máy chủ Youtube tại vị trí bạn gắn trên Web mà không cần tải thêm Video trên máy chủ của bạn. 

iFrame còn nhiều ưu điểm khác mà tôi muốn giới thiệu với bạn ngay sau đây:

  • Nó có thể hiển thị nhiều quảng cáo, cho phép bạn nhúng nội dung trực quan một cách tự do.
  • Bạn có thể hiển thị nội dung từ nguồn bên ngoài ở mọi vị trí trên Website một cách thuận tiện.
  • Một ưu điểm khác tôi đánh giá rất cao, đó là iFrame rất an toàn. Lý do vì người xem không có quyền truy cập vào mã của nội dung gốc.

Tuy nhiên, mọi vấn đề đều có hai mặt. Bên cạnh những ưu điểm tuyệt vời, tôi cũng muốn lưu ý với bạn một số hạn chế của Iframe.

  • Nếu liên kết với các trang độc hại, nó có thể gây ra các mối nguy hiểm về bảo mật. Máy tính của người dùng có thể bị lây nhiễm mã độc và khiến trang bạn mất độ tin cậy.
  • iFrame có thể làm chậm trang Web, không lý tưởng để tối ưu hóa công cụ tìm kiếm. Đây là một điểm hạn chế khiến tôi rất cẩn trọng khi dùng thẻ HTML này. Tôi khuyên bạn chỉ nên sử dụng nó khi thật sự cần thiết.
  • Ngoài ra, không phải mọi loại thiết bị đều hỗ trợ Iframe.

Có nên sử dụng iFrame cho trang Web hay không?

Như tôi đã phân tích ở trên, iFrame mang lại rất nhiều lợi ích cho bạn. Nó làm cho trang Web của bạn được minh họa sinh động, sáng tạo hơn. Đây là yếu tố quan trọng giúp bạn giữ chân người truy cập ở lại trang Web lâu hơn, tăng tỷ lệ quay lại trang. Những điều này cũng góp phần giúp bạn tăng thứ hạng trang Web trên trang kết quả của các công cụ tìm kiếm.

Tuy nhiên, bạn cũng cần cân nhắc những vấn đề có thể gặp phải khi sử dụng iFrame. Nếu bạn không thể đảm bảo thông tin của nội dung trích từ trang Web khác là chính xác, hợp pháp. Nguy hiểm hơn nữa, các đoạn mã có thể chứa mã độc. Chúng không chỉ ảnh hưởng xấu đến trang của bạn, mà còn có thể gây nguy hiểm đến người dùng. Thông tin quan trọng có thể bị lấy cắp, Website có thể bị chuyển hướng không kiểm soát,… Tất cả đều có thể ảnh hưởng đến uy tín của bạn.

Khi bạn chèn nội dung của trang khác lên Website của mình, Google Search Bots sẽ không dẫn đến Website của bạn mà liên kết đến Link được nhúng. Điều này ảnh hưởng lớn đến việc SEO của bạn, dẫn khách hàng đi đến trang khác.

Chính vì thế, tôi nghĩ chúng ta chỉ nên sử dụng iFrame khi thật sự cần thiết. Đừng dùng nó quá thường xuyên nhé. 

Làm thế nào để sử dụng iFrame?

Bạn có thể tùy chọn kích thước, vị trí để nhúng iFrame trên website
Bạn có thể tùy chọn kích thước, vị trí để nhúng iFrame trên website

Đúng như tên gọi, cách sử dụng iFrame chính là dán đường link tài liệu bạn muốn hiển thị trên website ngay trên giao diện làm việc của WordPress. Để thao tác dễ dàng với iFrame, bạn cần hiểu ý nghĩa những cụm từ/thuật ngữ xuất hiện trong những dòng code. Đầu tiên, hãy tham khảo đoạn code dưới đây:

<iFrame src="https://youtu.be/_Nrd76bcqEw" width="680" height="480" allowfullscreen></iFrame>

Đoạn code trên sẽ giúp hiển thị video hướng dẫn Youtube trên website bạn. Hãy xem qua các tag có ý nghĩa gì nhé:

  • <iFrame>…</iFrame> tag được dùng để chứa video bên trong iFrame.
  • Nguồn của iFrame (src) là phần nội dung gốc từ server bên ngoài (hoặc server nội bộ khác). Nguồn URL này phải được đặt trong dấu ngoặc kép. (Trong ví dụ này là: “https://youtu.be/_Nrd76bcqEw”)
  • Width và height là chiều rộng và cao của iFrame. Bạn có thể thêm kích thước mặc định như là 680×480 pixels (px) trong ví dụ. Hoặc, bạn có thể sử dụng số phần trăm (10%-100%) để tự chỉnh kích thước iFrame tự động.

Các thuộc tính của iFrame

Src là thuộc tính khai báo nguồn của iFrame, nguồn iFrame phổ biến mà các website thường sử dụng là Youtube
Src là thuộc tính khai báo nguồn của iFrame, nguồn iFrame phổ biến mà các website thường sử dụng là Youtube

iFrame có nhiều thuộc tính từ đơn giản nhất như trích xuất nguồn, chiều rộng, chiều cao đến phức tạp hơn như kẻ đường viền iFrame, canh lề trái phải… Tuy nhiên, ở bài viết này, chúng tôi sẽ giới thiệu đến bạn đọc những thuộc tính cơ bản nhất của iFrame:

  • src: Thuộc tính khai báo đường dẫn tới 1 trang web hoặc 1 file tài liệu nào đó.
  • width: Thuộc tính dùng để khai báo chiều rộng của iFrame (đơn vị là px hoặc %)
  • height: Thuộc tính dùng để khai báo chiều cao của iFrame (đơn vị là px hoặc %)
  • name: Thuộc tính này dùng để đặt tên cho frame. Nó hay được dùng khi muốn hiển thị 1 liên kết nào đó trong 1 frame có thuộc tính name
  • frameborder: Thuộc tính dùng để thiết lập đường viền bao quanh frame. Thuộc tính này sẽ có 2 giá trị: 0 – ẩn đường viền, 1 – hiện đường viền. Nếu không khai báo thuộc tính này thì mặc định là đường viền được hiển thị

Để hiểu hơn về cấu trúc lẫn cách làm việc của iFrame, hãy cùng tham khảo đoạn code ngay dưới đây:

<a href="https://examples.com/documents" target="the-iFrame">Google Assistant</a><br/><br/>

<iFrame src="https://examples.com/documents" width="100%" height="500px" name="the-iFrame" frameborder="0"></iFrame>

Có thể thấy, đoạn code có những thuộc tính bao gồm khai báo đường dẫn (src), xác định chiều rộng, chiều cao (width, height), đặt tên frame (name) và ẩn thiết lập đường viền (frameborder).

Lưu ý gì khi sử dụng iFrame?

Nên quan tâm đến độ uy tín của trang web gốc khi nhúng iFrame
Nên quan tâm đến độ uy tín của trang web gốc khi nhúng iFrame

Mặt dù iFrame khiến cho nội dung trang web trở nên đa dạng và hoàn thiện hơn, nó cũng thể hiện nhiều mặt tối hay mối nguy hại đến trang web của bạn. Vậy các vấn đề bạn nên lưu ý khi sử dụng iFrame là gì?

Vấn đề bảo mật của iFrame là gì?

Việc bạn nhúng nhiều thành phần của các trang web khác nhau vào website của mình để tạo ra các multiple view (các cửa sổ độc lập) được iFrame đảm nhiệm rất tốt. Và nếu website bạn vận hành trơn tru với phương pháp này, nó sẽ đem lại lợi ích cực kì lớn cho người đọc trong quá trình truy cập. Bởi họ chỉ cần tìm đến một địa chỉ website duy nhất lại có thể tổng hợp kiến thức trực quan sinh động từ nhiều nguồn khác nhau.

Tuy nhiên, đây lại là con dao hai lưỡi với website của bạn. Lí do bắt nguồn từ đâu? Trên thực tế, bạn không thể kiểm soát toàn diện những nội dung bạn đã nhúng trên website của mình. Nó có thể chứa các đoạn mã độc hại. Đồng thời cũng gây ảnh hưởng xấu hoặc làm thay đổi nội dung trên trang web. Nó thậm chí còn có thể đánh cắp thông tin người dùng. Có khả năng chuyển hướng trang không kiểm soát.

Hậu quả là nội dung trong trang có thể bị sai lệch. Nặng hơn khiến cho website đánh mất uy tín, mất đi lượng khách hàng truy cập trung thành.

Ảnh hưởng xấu tới kết quả SEO

Liên kết trên trang web dẫn chiếu đến nguồn trang web khác dễ gây nên những hệ lụy xấu về SEO
Liên kết trên trang web dẫn chiếu đến nguồn trang web khác dễ gây nên những hệ lụy xấu về SEO

Mối quan hệ giữa tối ưu hóa SEO cho website và iFrame là gì? SEO là mục tiêu hàng đầu mà bất kỳ website doanh nghiệp nào cũng mong muốn đạt được. Thế nhưng, việc nhúng iFrame vô tội vạ có thể làm ảnh hưởng mạnh mẽ đến SEO. Bởi lẽ, khi bạn nhúng một nội dung từ nguồn khác lên website của bạn. Các Google Search Bots sẽ nhận diện và liên kết đến đó thay vì liên kết đến trang web của bạn.

Điều này không chỉ ảnh hưởng đến phân luồng truy cập, tỷ lệ người dùng và lượt xem các nội dung trên trang mà còn tác động đến tỷ lệ chuyển đổi và giảm xếp hạng website của bạn. Và điều  đó hoàn toàn đi ngược lại với những gì mà doanh nghiệp mong muốn.

Vì vậy, hãy đảm bảo các kết nối iFrame giúp phát huy tối đa sức mạnh của Internet. Cần chú ý rằng chúng không ảnh hưởng đến mục tiêu website doanh nghiệp muốn đạt được.

Để hiểu hơn về SEO, bạn có thể tìm hiểu trong bài viết tổng hợp:

Nên dùng iFrame khi nào?

iframe là gì? Thay vì sử dụng iFrame từ nguồn khác, doanh nghiệp có thể sáng tạo video để truyền thông đa phương tiện
Thay vì sử dụng iFrame từ nguồn khác, doanh nghiệp có thể sáng tạo video để truyền thông đa phương tiện

Khi không còn sự lựa chọn khác

Để đảm bảo an toàn cho website bạn nên hạn chế dùng iFrame. Bạn muốn hiển thị một đoạn video từ website nào đó? Bạn không chắc chắn về mức độ bảo mật? Bạn có thể lưu video đó về và tải nó lên một nơi lưu trữ online. Từ đó dùng thẻ video để hiển thị nếu bạn sử dụng CMS mã nguồn mở, blogger hay Hosting WordPress. Với các website mã nguồn đóng, bạn nên yêu cầu lập trình viên thêm chức năng đăng video cho mình.

Với các video trên Youtube hay các trang mạng xã hội như Instagram, Twitter, Facebook…, bạn có thể sử dụng trực tiếp cơ chế nhúng sẵn có. Bởi nó sẽ an toàn hơn việc nhúng bằng iFrame rất nhiều. Hãy luôn kiểm tra nguồn của mã iFrame bạn đang sử dụng. Chỉ sử dụng iFrame link từ những website uy tín và chất lượng cao.

Bạn có thể tìm hiểu thêm về CMS trong bài viết :”CMS là gì?

Truyền thông đa phương tiện

Để tránh phương hại đến SEO của website, bạn có thể sử dụng một cách nữa là truyền thông đa phương tiện. Hãy cố gắng sáng tạo nội dung phù hợp trên các kênh truyền thông trực tuyến của mình. Nếu thực hiện được việc này, không chỉ nguồn của nhúng iFrame được đảm bảo mà còn tạo được sự thống nhất chặt chẽ trong nội dung truyền thông của doanh nghiệp đấy!

Cách sử dụng iFrame

iframe là gì? Sử dụng iFrame hiệu quả, chất lượng, giúp doanh nghiệp gặt hái được những thành quả về SEO nhanh chóng.
Sử dụng iFrame hiệu quả, chất lượng, giúp doanh nghiệp gặt hái được những thành quả về SEO nhanh chóng.

Nhúng iFrame vào website

Cú pháp đơn giản nhất dùng để nhúng iFrame vào website là:

<iFrame src="https://www.w3schools.com"></iFrame>

Trong đó src: Chứa đường dẫn tới trang web muốn hiển thị.

Config iFrame page là gì?

Để các trang iFrame page chấp nhận được hiển thị trong trang main page dưới dạng thẻ iFrame, bạn cần thêm config này trong file:

config/application.rb

iFrame Config là gì?

Có 2 loại iFrame Config:

  • iFrame Config link tương đối: Khi ghép iFrame vào main page sẽ có dạng sau /mypage/jobs
  • iFrame Config link tuyệt đối: Khi ghép iFrame vào main page sẽ có dạng sau https://{iFrame_url}/mypage/jobs

Khi sử dụng thẻ iFrame không có config gì thêm main page sẽ mặc định nhận iFrame dưới dạng đường link tương đối.

Để main page nhận iFrame dưới dạng đường link tuyệt đối, bạn thêm config sau trong iFrame page file config/application.rb

iFrame page bằng js là gì?

Để xây dựng kênh thông tin lắng nghe giữa 2 bên website, có hai cách để thực hiện;

  • Cách 1: Sử dụng API. Cách này khá rõ ràng tuy nhiên sẽ tốn tài nguyên của server vì phải request liên lục lên server.
  • Cách 2: Giao tiếp trực tiếp từ client bằng JS

Khi nhúng 1 trang web khác vào trang mình bằng iframe thì ta không thể sử dụng các lệnh JS thường dùng. Để thao tác với các elements trên Iframe đó, mà phải sử dụng lệnh JS dựa trên Iframe ta lồng vào.

Bạn xem code ví dụ sau:

<!DOCTYPE html>
<html>
<body>
<iframe id="myFrame" src="https://www.w3schools.com/" style="height:380px;width:100%"></iframe>
<p>Click the "Tryit" button to hide the first H1 element in the iframe (another document).</p>
<button onclick="myFunction()">Try it</button>
<script>
function myFunction() {
  var iframe = document.getElementById("myFrame");
  var elmnt = iframe.contentWindow.document.getElementsByTagName("H1")[0];
  elmnt.style.display = "none";
}
</script>
</body>
</html>

Với nội dung trên web bình thường ta có thể dùng document.getElementById("myFrame") còn nếu thành phần đó nằm trên iFrame, tức ở 1 trang web khác ta phải sử dụng lệnh khác iframe.contentWindow.document.getElementsByTagName("H1")[0]; chỉ có vậy thôi đơn giản phải không nào.

Đóng mở pop-up

Đoạn code với cú pháp:

window.addEventListener("message", function(event) { })

Có ý nghĩa thêm một event để lắng nghe mọi thông điệp được gửi từ các iFrame page.

Trong các trang iFrame page chỉ cần dử dụng đoạn code sau để gửi data lên main page:

<script type="text/javascript">

  $("#js-scroll-tab-apply .row").click(function(){

    top.postMessage({url: "url", status: 1}, "http://mainpage_url");

  });

</script>
iframe là gì? Tương tác qua lại giữa website giúp iFrame hoạt động trơn tru, hiệu quả
Tương tác qua lại giữa website giúp iFrame hoạt động trơn tru, hiệu quả

Cách nhúng iFrame vào Website WordPress bằng Plugin

Ở nội dung này, tôi sẽ hướng dẫn bạn cách đơn giản để nhúng iFrame vào Website WordPress. Đó là cách dùng Plugin iFrame. Advanced iFrame là Plugin tôi đang sử dụng và sẽ áp dụng trong hướng dẫn này.

  • Đầu tiên, bạn đăng nhập vào bảng điều khiển WordPress, truy cập Plugins, Click vào Thêm mới và tìm kiếm Advanced iFrame.
  • Tiếp theo, bạn cài đặt và kích hoạt Plugin iFrame WordPress này. Bạn đến Tab Advanced Iframe và nhấp vào Tab Basic Settings. Bạn có thể đặt chiều cao, rộng, đường viền,… của iFrame.
  • Bạn hãy nhấp vào nút Generate A Shortcode For The Current Settings để lưu cài đặt và tạo một mã ngắn nhé.
  • Ở bước tiếp theo, bạn tiến hành sao chép, dán mã được tạo vào trang bạn muốn nhúng iFrame này.

Ngoài ra, bạn có thể sử dụng Plugin để xem thử nghiệm tốc độ của Website trước và sau khi sử dụng iFrame WordPress. Trải nghiệm cá nhân của tôi cho thấy rằng có sự khác biệt lớn trong hiệu suất sau khi tôi dùng Plugin để tích hợp iFrame. Cụ thể, trang Web của tôi đã ghi nhận số lượng yêu cầu tăng từ 8 lên 98. Đồng thời, điểm hiệu suất giảm từ 96 xuống 86.

Tóm lại, iFrame là gì? Nó là một công cụ phù hợp giúp doanh nghiệp nâng cao trải nghiệm khách hàng trên website một cách hiệu quả. Tuy vậy, trong quá trình sử dụng iFrame, doanh nghiệp nên cân nhắc các vấn đề về nguồn gốc, độ bảo mật của sữ liệu để đảm bảo truyền thông an toàn nhất.

Hy vọng rằng qua bài viết của chúng tôi, bạn đọc đã có được những thông tin hữu ích và cái nhìn toàn diện về loại công cụ này, từ đó khai thác nó một cách có hiệu quả để nâng cao uy tín, tầm vóc của website thương hiệu.






Bài viết liên quan