• Trang chủ
  • WordPress
    • Thủ thuật WordPress
    • WordPress Plugins
    • WordPress Themes
  • Hosting và Domain
  • Kiếm tiền
  • Đánh giá
  • Khuyến mãi
  • Thông báo
  • Giới thiệu
  • Liên hệ

WP Căn bản

Kiến thức căn bản cho người dùng WordPress

paradise-child-theme-wordpress-theme-tot-nhat
  • Dịch vụ WordPress Hosting
  • Dịch vụ tối ưu WordPress
  • Dịch vụ quét mã độc WordPress
  • Mua Paradise child theme
Trang chủ » WordPress » Thủ thuật WordPress » Tích hợp Progressive Web Apps vào website WordPress
hosting-tot-nhat-danh-cho-wordpress

Tích hợp Progressive Web Apps vào website WordPress

Cập nhật: 31/07/2018 Trung Hiếu 19 Bình luận

Mục lục Hiện
  • 1. Progressive Web Apps là gì?
  • 2. Progressive Web Apps bao gồm những gì?
  • 3. Progressive Web Apps cần những gì để hoạt động?
  • 4. Tích hợp Progressive Web Apps cho WordPress

Progressive Web Apps là gì? Hướng dẫn tích hợp Progressive Web Apps vào website WordPress.

progressive-web-apps-cho-wordpress

Bạn đã kiểm tra hiệu suất website của mình với Google Lighthouse theo hướng dẫn của tôi trong bài viết hôm trước chưa? Nếu rồi thì chắc hẳn bạn đã nhìn thấy rất nhiều thông báo lỗi trong mục Progressive Web Apps (PWA) phải không nào? Vậy thì Progressive Web Apps là gì? Tại sao bạn nên tích hợp nó vào website của mình? Làm thế nào để tích hợp PWA vào website WordPress? Bài viết hôm nay sẽ cho bạn câu trả lời đầy đủ và chi tiết nhất.

Tham khảo thêm:

  • Đánh giá hiệu suất website với Google Lighthouse
  • Trang dành cho thiết bị di động được tăng tốc (AMP)

Progressive Web Apps là gì?

PWA hay ứng dụng web tiến bộ, là một ý tưởng được cổ vũ và khuyến khích bởi Google, cụ thể là nhóm phát triển trình duyệt Google Chrome. Năm 2015, nhà thiết kế Frances Berriman và kĩ sư Chrome Alex Russell đã lần đầu tiên đề cập tới cụm từ “Progressive Web Apps” để mô tả việc tận dụng các tính năng mới của trình duyệt để cho phép người dùng xài các web app mà xịn như native app. Nói một cách dễ hiểu, nó có thể xem là con lai giữa web app và native app.

Cho bạn nào chưa biết:

  • Web app về cơ bản là một website nhưng được thiết kế giao diện giống như app. Web app tiện ở chỗ bạn có thể dùng nó ngay mà không cần cài đặt, giao diện có thể tùy biến nhanh ở phía server lưu trữ. Nó có thể chạy trên cả máy tính, điện thoại di động, máy tính bảng với giao diện co dãn tùy theo kích thước màn hình (responsive).
  • Native app là các ứng dụng được viết ra bằng những công cụ do Apple, Google hay Microsoft cung cấp. Native app buộc bạn phải cài đặt mới sử dụng được. Nhưng bù lại nó có hiệu năng cao hơn, giao diện được tối ưu tốt hơn và có thể truy cập được nhiều chức năng hơn trong hệ điều hành.

Progressive Web Apps bao gồm những gì?

Theo Google, PWA bao gồm các đặc tính như sau:

  • Progessive: phải sử dụng được với tất cả mọi người, không quan trọng họ đang dùng trình duyệt web gì.
  • Responsive: dùng được với mọi thiết bị (desktop, mobile, tablet) và mọi kích thước màn hình.
  • Không phụ thuộc vào kết nối internet: Service Worker cho phép chạy offline hoặc trên các kết nối internet rất chậm.
  • App-like: cảm thấy giống như đang xài native app, từ cách điều hướng cho đến giao diện. Độ mượt, độ phản hồi cũng phải nhanh tương ứng.
  • Fresh: luôn cập nhật nhanh nhờ Service Worker.
  • Safe: sử dụng HTTPS để tăng tính an toàn, tránh bị đánh cắp thông tin dọc đường.
  • Discoverable: khi người dùng truy cập vào PWA, nó sẽ được xác định như là một ứng dụng (app). Lúc đó, trình duyệt web sẽ tự ẩn thanh địa chỉ và các thành phần khác của trình duyệt web truyền thống, chỉ để lại một mình app với giao diện của nó. Đây là thứ mà web app bình thường không thể làm được.
  • Re-engageable: sử dụng notification và các phương tiện khác để thu hút người dùng quay lại app.
  • Installable: có thể “cài” app lên máy và hiện lên home screen để mở app dễ dàng hơn.
  • Linkable: có thể chia sẻ nhanh nội dung bằng URL mà không đòi hỏi các cài đặt phức tạp.

Một ví dụ về PWA:

demo-progressive-web-apps

Thông tin chi tiết về Progressive Web Apps, các bạn có thể tham khảo thêm tại đây.

Progressive Web Apps cần những gì để hoạt động?

Về cơ bản, PWA sẽ cần 3 thành phần sau:

  • Service Workers
  • Web App Manifest
  • HTTPS

Trong đó Service Workers giống như một tiến trình chạy nền của trình duyệt và tách biệt với website. Nó cho phép website chạy các chức năng ngay cả khi bạn đang không truy cập. Mở rộng ra, Service Worker cho phép PWA thực hiện các tính năng chạy nền như native app, ví dụ như: tải thông báo, đồng bộ dữ liệu mới, download file, chơi nhạc và video, sử dụng dữ liệu địa điểm thời gian thực… Nó cũng là cái đứng ra để giúp PWA có thể chạy offline. Khi có kết nối internet, PWA sẽ tải dữ liệu mới nhất từ server. Khi không có kết nối internet thì nó sẽ lấy dữ liệu, giao diện, tính năng đã từng lưu trong cache để hoạt động.

quy-trinh-hoat-dong-cua-service-workers

Web App Manifest cho phép trang web có thể được cài đặt trên màn hình chính của thiết bị mà không cần cửa hàng ứng dụng cùng với các tính năng khác như làm việc ngoại tuyến và nhận thông báo đẩy (push notification). Web App Manifest được triển khai trong các website bằng cách sử dụng phần tử liên kết trong phần đầu của tài liệu:

<link rel="manifest" href="/manifest.webmanifest">

Nội dung của nó sẽ tương tự như thế này:

{
  "name": "HackerWeb",
  "short_name": "HackerWeb",
  "start_url": ".",
  "display": "standalone",
  "background_color": "#fff",
  "description": "A simply readable Hacker News app.",
  "icons": [{
    "src": "images/touch/homescreen48.png",
    "sizes": "48x48",
    "type": "image/png"
  }, {
    "src": "images/touch/homescreen72.png",
    "sizes": "72x72",
    "type": "image/png"
  }, {
    "src": "images/touch/homescreen96.png",
    "sizes": "96x96",
    "type": "image/png"
  }, {
    "src": "images/touch/homescreen144.png",
    "sizes": "144x144",
    "type": "image/png"
  }, {
    "src": "images/touch/homescreen168.png",
    "sizes": "168x168",
    "type": "image/png"
  }, {
    "src": "images/touch/homescreen192.png",
    "sizes": "192x192",
    "type": "image/png"
  }],
  "related_applications": [{
    "platform": "play",
    "url": "https://play.google.com/store/apps/details?id=cheeaun.hackerweb"
  }]
}

Còn HTTPS, không cần nói chắc nhiều bạn ở đây cũng đã biết, sẽ giúp mã hóa dữ liệu, đảm bảo an toàn cho kết nối giữa server với thiết bị của người dùng. Cho nên, nếu bạn muốn xây dựng Progressive Web Apps, trước tiên hãy cài SSL cho website của mình đi nhé.

Tham khảo thêm:

  • Cài SSL cho WordPress trong nháy mắt với plugin Really Simple SSL
  • Hướng dẫn chuyển từ HTTP sang HTTPS không bị mất thứ hạng

Tích hợp Progressive Web Apps cho WordPress

Trong WordPress, các bạn có thể tích hợp PWA cho website một cách dễ dàng thông qua các plugin có sẵn như Minimum Configuration WordPress PWA hay Smart PWA. Cách cài đặt và cấu hình chúng cũng khá đơn giản nên tôi sẽ không hướng dẫn thêm.

Tuy nhiên, plugin mà tôi muốn khuyên dùng trong bài viết này không nằm trong số kể trên mà là PWA được phát triển bởi chính Google và Automattic (đơn vị chủ quản của WordPress). Mặc dù nó chỉ mới ở giai đoạn sơ khai và chưa thể hoạt động offline được nhưng xài hàng chính chủ thì vẫn yên tâm hơn phải không nào.

Tất cả những gì mà bạn phải làm hiện giờ là cài đặt và kích hoạt plugin PWA.

cai-dat-va-kich-hoat-plugin-pwa

Sau đó, truy cập vào Appearance => Customize => Site Identity => Site Icon và thiết lập site icon cho website nếu bạn chưa làm trước đó. Kích thước được khuyến cáo là tối 512 x 512 pixel.

thiet-lap-site-icon-trong-customizer

Kiểm tra lại website với Google Lighthouse, bạn sẽ thấy phần lớn các vấn đề với Progressive Web Apps đã được giải quyết. Việc của chúng ta là chờ các nhà phát triển tích hợp nốt Service Workers vào mà thôi.

progressive-web-app-trong-google-lighthouse

Thật đơn giản phải không nào? Chúc các bạn thành công!

Bạn có đang tích hợp Progressive Web Apps trên website của mình? Bạn đã sử dụng cách gì để làm điều đó? Hãy chia sẻ với chúng tôi những kinh nghiệm quý giá của bạn trong khung bình luận bên dưới.

Nếu bạn thích bài viết này, hãy subscribe blog của tôi để thường xuyên cập nhật những bài viết hay nhất, mới nhất qua email nhé. Cảm ơn rất nhiều. :)

  • Chia sẻ lên Facebook
  • Chia sẻ lên Twitter
  • Chia sẻ lên LinkedIn

Bài viết liên quan

Ra mắt plugin APCu Object Cache độc quyền tại WP Căn bản
Ra mắt plugin APCu Object Cache độc quyền tại WP Căn bản
Tính năng Crawl Optimization của plugin Yoast SEO
Tính năng Crawl Optimization của plugin Yoast SEO
Vô hiệu hóa WooCommerce Brands để tăng tốc độ
Vô hiệu hóa WooCommerce Brands để tăng tốc độ

Chuyên mục: Thủ thuật WordPress Thẻ: Google PageSpeed/ Tăng tốc WordPress

dich-vu-wordpress-hosting-chong-ddos-mien-phi

Nói về Trung Hiếu

Một người con của xứ Nghệ, hiện đang sinh sống tại Hà Nội. Tôi là người sáng lập và đứng sau mọi hoạt động của WP Căn bản. Tìm hiểu thêm về tôi tại đây.

Bài viết trước « Lựa chọn màu sắc chuẩn trong thiết kế website
Bài viết sau Giới thiệu sơ lược về plugin Rank Math của MyThemeShop »

Reader Interactions

Bình luận

    Để lại một bình luận Hủy

    Tất cả các bình luận đều sẽ được kiểm duyệt nghiêm ngặt. Mọi bình luận trái quy định sử dụng sẽ bị gỡ bỏ link hoặc xóa bỏ hoàn toàn. Vui lòng đọc kỹ quy định trước khi bình luận. Xin cảm ơn!

  1. Đức 17 bình luậnviết

    18/03/2019 lúc 11:28

    a ơi e có thử cài cái https://wordpress.org/plugins/super-progressive-web-apps/

    nhưng thấy chả có gì thay đổi cả? web của e cơ bản đã responsive rồi, giờ e cần 2 tính năng là:
    – thông báo đẩy khi có bài mới
    – xem web khi ko có mạng

    web e ạ: https://ducmu.info/blog/

    Bình luận
  2. Hưng 8 bình luậnviết

    13/08/2018 lúc 23:19

    Tích hợp này dường như xung đột với các plugin Push Notifications. Mình đang dùng Onesignal, sau khi tích hợp thì không còn thông báo trên Firefox và Chorme nữa. Không biết có cách nào khắc phục ko H ?

    Bình luận
    • Trung Hiếu Quản lýviết

      14/08/2018 lúc 08:14

      PWA cũng có tính năng push notification mà. Nên chỉ được chọn 1 trong 2 thôi. :P

      Bình luận
      • Hưng 8 bình luậnviết

        14/08/2018 lúc 15:04

        Làm sao để kích hoạt nó vậy Hiếu

        Bình luận
        • Trung Hiếu Quản lýviết

          14/08/2018 lúc 15:07

          Chờ Google và Automattic cập nhật thêm đã bạn ạ. Hiện giờ plugin vẫn đang trong quá trình phát triển nên các tính năng hầu như chưa hoạt động được.

          Bình luận
  3. Sơn Zim 113 bình luậnviết

    10/08/2018 lúc 12:16

    cái plugin PWA cài xong k phải thiết lập thêm cái gì à? cái icon thì vốn dĩ có liên quan plugin này đâu nhỉ?

    Bình luận
    • Trung Hiếu Quản lýviết

      10/08/2018 lúc 12:18

      Sao lại không? Không có icon thì là sao sau này tạo shortcut cho app trên điện thoại được. :P

      Bình luận
      • Sơn Zim 113 bình luậnviết

        10/08/2018 lúc 13:54

        Ý là k dùng plugin này vẫn tạo icon bình thường ý

        Bình luận
        • Trung Hiếu Quản lýviết

          10/08/2018 lúc 14:58

          Thế không có plugin thì đào đâu ra 2 cái quan trọng nhất là Service Workers và Web App Manifest? :P

          Bình luận
          • Sơn Zim 113 bình luậnviết

            10/08/2018 lúc 15:52

            mình gà mờ lắm, nên vấn đề là do k thấy bạn nói đến việc thiết lập plugin PWA, mà sau khi cài plugin lại đi thêm icon, nên k hiểu. Vì trước giờ đã thêm icon từ lâu rồi, giờ mới cài xong PWA, cứ cài xong để đó k cần làm gì thêm à?

          • Trung Hiếu Quản lýviết

            10/08/2018 lúc 15:53

            Nếu cần thiết lập gì thêm thì mình đã hướng dẫn rồi. Hiện tại plugin vẫn đang ở dạng sơ khai nên chưa có gì để thiết lập cả. Chờ các nhà phát triển update thêm đã.

  4. Josi 1 bình luậnviết

    05/08/2018 lúc 22:12

    Mình làm xong thì tăng từ 58 lên 62 điểm vẫn bị thiếu 2 thằng kích thường là 192 với 512 không hiểu lắm, mặc dù link có sẵn k bị die, ảnh nét mà nó vẫn báo thiếu
    https://i.imgur.com/MVq5oY2.png

    Bình luận
    • Trung Hiếu Quản lýviết

      06/08/2018 lúc 08:59

      Bạn dùng plugin gì để tích hợp PWA?

      Bình luận
  5. Nguyen Khanh 111 bình luậnviết

    01/08/2018 lúc 10:18

    Bài viết rất hay, mong bạn tui sẽ có nhiều bài viết dạng thế này !

    Bình luận
  6. Xuân Thu 5 bình luậnviết

    31/07/2018 lúc 21:04

    26 Performance
    69 Progressive Web App
    82 Accessibility
    79 Best Practices
    100 SEO
    cái Performance chắc là do dùng hosting Việt quá, chứ web nhanh thế mà nó cho có 26 điểm, hix

    Bình luận
    • Trung Hiếu Quản lýviết

      31/07/2018 lúc 22:54

      Cái kỹ thuật inline CSS và JS mà bạn đang áp dụng thực ra nó không tốt như bạn tưởng đâu, dùng đánh lừa Google PageSpeed Insights thì được. Traffic cao cái là site chết nhăn răng ngay. Thời gian cache file tĩnh cũng hơi ngắn (7 ngày). Hình ảnh chưa được nén và tối ưu bằng lazyload => tiêu tốn nhiều tài nguyên của máy tính để load web nên điểm thấp là đúng rồi. Chẳng qua host đặt ở VN (gần người dùng) nên bạn thấy nó load nhanh thôi. :P

      Bình luận
      • Xuân Thu 5 bình luậnviết

        01/08/2018 lúc 17:04

        Cám ơn bác đã góp ý, em sẽ cố sữa

        Bình luận
  7. Trọng 8 bình luậnviết

    31/07/2018 lúc 12:53

    Performance: 89
    Progressive Web App: 69
    Accessibility: 94
    Best Practices: 100
    SEO: 100
    Ahihi :))

    Bình luận
    • Trung Hiếu Quản lýviết

      31/07/2018 lúc 12:54

      Not bad. :))

      Bình luận

Sidebar chính

NHẬN BÀI VIẾT QUA EMAIL

Hãy đăng ký ngay để là người đầu tiên nhận được thông báo qua email mỗi khi chúng tôi có bài viết mới!

Tham gia cùng 10.000+ người khác.

Theo dõi qua mạng xã hội

Facebook Group

wpcanban-facebook-group

Bạn đang tìm gì?

WordPress căn bản

Bảo mật WordPress

Tăng tốc WordPress

Sửa lỗi WordPress

Thủ thuật Genesis

Thủ thuật SEO

Thủ thuật CloudFlare

Thủ thuật LiteSpeed

Thủ thuật WooCommerce

Sử dụng theme Paradise

Dịch vụ tối ưu WordPress miễn phí

dich-vu-toi-uu-wordpress-mien-phi

Dịch vụ quét mã độc miễn phí

dich-vu-quet-ma-doc-wordpress-mien-phi

Footer

Bài viết mới nhất

  • Năm 2025 rồi, có nên viết blog nữa không? 07/05/2025
  • Ra mắt plugin APCu Object Cache độc quyền tại WP Căn bản 16/04/2025
  • Tính năng Crawl Optimization của plugin Yoast SEO 31/03/2025
  • Vô hiệu hóa WooCommerce Brands để tăng tốc độ 09/03/2025

Bình luận mới nhất

  • Trung Hiếu trong Năm 2025 rồi, có nên viết blog nữa không?
  • Tuấn Kỷ Nguyên Blog trong Năm 2025 rồi, có nên viết blog nữa không?
  • Trung Hiếu trong Năm 2025 rồi, có nên viết blog nữa không?
  • Tịnh Nguyễn Blog trong Năm 2025 rồi, có nên viết blog nữa không?

Thông tin hữu ích

  • Giới thiệu bản thân
  • Quy định sử dụng
  • Chính sách bảo mật
  • Bản quyền nội dung

Thống kê WP Căn bản

9 Chuyên mục - 999 Bài viết - 35.502 Bình luận

Bản quyền © 2014 - 2025 · WP Căn bản (tiền thân là eBooksvn.com) · Sử dụng Paradise child theme và dịch vụ WordPress Hosting