SEO Kỹ Thuật · ⏱ 6 phút đọc · 1,070 từ

On-page SEO toàn tập: Hướng dẫn tối ưu nội dung, thẻ HTML và cấu trúc trang để tăng ranking 2025

VU
Vu Lam Bach
Vidco Group
📅 05/04/2026 • Cập nhật: 28/09/2026
On-page SEO toàn tập: Hướng dẫn tối ưu nội dung, thẻ HTML và cấu trúc trang để tăng ranking 2025

On-page SEO là tập hợp tất cả các tối ưu hóa trực tiếp trên trang web — từ content, HTML tags, đến URL structure — mà bạn có thể kiểm soát hoàn toàn. Đây là nền tảng của mọi chiến lược SEO và AEO.

On-page SEO là gì?

On-page SEO là quá trình tối ưu hóa các yếu tố nội dung và kỹ thuật trực tiếp trên từng trang web riêng lẻ — bao gồm nội dung viết, HTML tags (title, meta, headings), URL, images, và internal links — để tăng khả năng rank cao cho target keywords và được search engines cũng như AI systems hiểu và trust nội dung đó.

Checklist On-page SEO đầy đủ 2025

1. Title Tag (thẻ tiêu đề)

  • Độ dài: 50–60 ký tự (không bị truncate trong SERP)
  • Chứa primary keyword, ưu tiên đặt đầu title
  • Unique cho mỗi trang
  • Compelling để user muốn click (CTR optimization)
  • Không keyword stuffing — đọc tự nhiên

2. Meta Description

  • Độ dài: 150–160 ký tự
  • Chứa primary keyword (được bold trong SERP khi match query)
  • Unique, compelling — đây là “ad copy” cho organic results
  • Có clear benefit hoặc call-to-action
  • Không nhất thiết ảnh hưởng trực tiếp đến ranking, nhưng ảnh hưởng CTR

3. H1 Tag

  • Chỉ có một H1 per page
  • Chứa primary keyword
  • Mô tả chính xác nội dung trang
  • Có thể khác title tag (nhưng nên nhất quán)

4. Heading Structure (H2, H3, H4)

  • H2: Main sections — chứa secondary keywords
  • H3: Subsections — chứa LSI/related keywords
  • Hierarchy logic: H1 → H2 → H3 (không skip)
  • Dùng question-format headings cho AEO (trả lời “People Also Ask”)

5. Content Optimization

  • Primary keyword trong 100 từ đầu tiên
  • Semantic/LSI keywords tự nhiên throughout
  • Content length phù hợp với search intent (không cần “minimum word count” — cần đủ depth)
  • Paragraph ngắn (3–5 câu), dễ đọc
  • Bullet lists, tables, images để break up text
  • FAQ section cho AEO

6. URL Structure

  • Clean, descriptive: /on-page-seo-toan-tap/ tốt hơn /post?id=123
  • Chứa primary keyword
  • Ngắn gọn: 3–5 từ là ideal
  • Dùng hyphens (-) không phải underscores (_)
  • Lowercase, không special characters

7. Image Optimization

  • File name mô tả: on-page-seo-checklist.webp không phải IMG_12345.jpg
  • Alt text mô tả chứa keyword tự nhiên
  • WebP format, compressed nhưng không mất quality
  • Lazy loading (trừ LCP image)
  • Width và height attributes để tránh CLS

8. Schema Markup cho On-page

Mỗi page type cần schema phù hợp. Blog post: Article + FAQPage (nếu có FAQ). How-to guide: HowTo. Product page: Product + Review. Homepage: Organization + WebSite. Xem hướng dẫn Schema Markup đầy đủ.

On-page SEO cho AEO: Điểm khác biệt

Khi tối ưu on-page cho AEO, thêm các yếu tố:

  • Answer-first structure: Câu trả lời ngay sau H2, trước khi expand
  • Definition paragraphs: 40–60 từ, standalone, quotable
  • FAQ block: Minimum 3 Q&A với FAQPage schema
  • Statistics: Số liệu cụ thể với nguồn trích dẫn
  • Comparison tables: Dễ extract cho AI Overview

Checklist On-Page SEO 2026

Yếu tốVị tríYêu cầuMức độ ưu tiên
Keyword trong Title tag</td><td>60 ký tự, keyword đầu</td><td>Rất cao</td></tr><tr><td>Meta Description</td><td><meta name=description></td><td>150–160 ký tự, CTA</td><td>Cao</td></tr><tr><td>H1 Heading</td><td>Duy nhất 1 H1</td><td>Chứa primary keyword</td><td>Rất cao</td></tr><tr><td>Keyword Density</td><td>Toàn bài</td><td>1–2% tự nhiên</td><td>Trung bình</td></tr><tr><td>Image Alt Text</td><td>Tất cả ảnh</td><td>Mô tả + keyword phụ</td><td>Cao</td></tr> </tbody></table> <h2><span class="ez-toc-section" id="FAQ_ve_On-page_SEO"></span>FAQ về On-page SEO<span class="ez-toc-section-end"></span></h2> <h3 class="wp-block-heading"><span class="ez-toc-section" id="Nen_uu_tien_on-page_hay_off-page_SEO"></span>Nên ưu tiên on-page hay off-page SEO?<span class="ez-toc-section-end"></span></h3> <p class="wp-block-paragraph">On-page trước. Nếu on-page optimization sai hoặc thiếu, backlinks cũng không giúp nhiều. Đảm bảo <a href="/technical-seo-audit">technical SEO</a> clean và on-page optimized trước khi đầu tư link building. Đây là <strong>foundation trước superstructure</strong>.</p> <h3 class="wp-block-heading"><span class="ez-toc-section" id="Keyword_density_co_quan_trong_khong"></span>Keyword density có quan trọng không?<span class="ez-toc-section-end"></span></h3> <p class="wp-block-paragraph">Không cần target “keyword density” cụ thể. Google đủ sophisticated để hiểu topic của bài mà không cần nhét keyword mỗi 100 từ. Viết tự nhiên, cover topic đầy đủ, keyword sẽ xuất hiện tự nhiên đủ số lần. Over-optimization (keyword stuffing) bị penalize.</p> <h2 class="wp-block-heading"><span class="ez-toc-section" id="Ket_luan"></span>Kết luận<span class="ez-toc-section-end"></span></h2> <p class="wp-block-paragraph">On-page SEO là điều hoàn toàn trong tầm kiểm soát của bạn — không cần chờ backlinks hay <a href="/domain-authority-la-gi">domain authority</a>. Invest thời gian vào mỗi yếu tố trên cho mỗi bài viết quan trọng và kết quả sẽ thấy trong vài tuần.</p> <p class="wp-block-paragraph">👉 Đọc thêm: <a href="/schema-markup-la-gi/">Schema Markup</a> | <a href="/aeo-la-gi/">AEO là gì?</a> | <a href="/featured-snippet-la-gi/">Featured Snippet</a> | <a href="/keyword-research-toan-tap/">Keyword Research</a> | <a href="/internal-linking-la-gi/">Internal Linking</a></p> <h2><span class="ez-toc-section" id="Xu_Huong_SEO_Nam_2026"></span>Xu Hướng SEO Năm 2026<span class="ez-toc-section-end"></span></h2> <p>Năm 2026, SEO đang trải qua sự chuyển đổi mạnh mẽ nhờ AI và tự động hóa. Các doanh nghiệp đầu tư đúng hướng vào SEO có thể đạt tăng trưởng 30-50% so với đối thủ không theo kịp xu hướng. Việc nắm vững các công cụ và kỹ thuật mới nhất không còn là lợi thế — mà là điều kiện bắt buộc để tồn tại trong thị trường cạnh tranh ngày nay.</p> <p>Theo nghiên cứu mới nhất từ HubSpot và Gartner, 78% doanh nghiệp B2B và 65% doanh nghiệp B2C cho biết SEO là kênh mang lại ROI cao nhất trong năm 2025-2026. Điều này cho thấy tầm quan trọng ngày càng tăng của việc xây dựng chiến lược SEO bài bản và có hệ thống.</p> <!-- vidco-il --> <h2><span class="ez-toc-section" id="Can_trien_khai_thuc_te"></span>Cần triển khai thực tế?<span class="ez-toc-section-end"></span></h2> <ul> <li><a href="https://vidcogroup.com/content-marketing/">Dịch vụ Content Marketing</a> — thuê ngoài sản xuất nội dung</li> <li><a href="https://vidcogroup.com/dao-tao-seo-doanh-nghiep/">Đào tạo SEO cho doanh nghiệp</a> — huấn luyện đội content nội bộ</li> <li><a href="https://vidcogroup.com/dich-vu-seo/">Dịch vụ SEO tổng thể</a> — nội dung + kỹ thuật + backlink</li> </ul> <!-- vidco-related-260929 --> <p><strong>Đọc thêm:</strong> <a href="https://vidcogroup.com/seo-onpage-va-offpage/">SEO onpage và offpage khác nhau thế nào</a></p> </div> <!-- TAGS --> <!-- AUTHOR BOX --> <div class="author-box"> <div class="ab-av">VU</div> <div> <div class="ab-name">Vu Lam Bach</div> <div class="ab-role">Content Strategist · Vidco Group</div> <div class="ab-bio">Đội nội dung Vidco Group. Bài viết được cập nhật khi thông tin thay đổi — góp ý hoặc đề nghị đính chính tại trang Biên tập và đính chính.</div> </div> </div> <!-- POST NAV --> <nav class="pnav" aria-label="Điều hướng bài viết"> <a href="https://vidcogroup.com/google-search-console-huong-dan/"> <div class="pn-lbl">← Bài trước</div> <div class="pn-title">Google Search Console: Hướng dẫn toàn diện sử dụng GSC để tối ưu SEO và theo dõi hiệu suất tìm kiếm 2025</div> </a> <a href="https://vidcogroup.com/local-seo-toan-tap/" class="pn-r"> <div class="pn-lbl">Bài tiếp →</div> <div class="pn-title">Local SEO toàn tập: Hướng dẫn tối ưu hóa tìm kiếm địa phương, Google Business Profile và Local Citations 2025</div> </a> </nav> </article> </main> <!-- RIGHT: Sidebar --> <aside class="post-side"> <!-- Table of Contents --> <div class="side-toc" id="toc-box"> <h4>Mục lục bài viết</h4> <ul id="toc-list"></ul> </div> <!-- CTA Card --> <div class="side-cta"> <div class="sc-title">🚀 Bắt đầu tăng trưởng</div> <p>Tư vấn AI Visibility Audit miễn phí — thấy rõ thương hiệu đang đứng đâu trong thế giới AI.</p> <a href="https://vidcogroup.com/#contact">Đặt lịch miễn phí →</a> </div> <!-- Quick Stats --> <div class="side-stats"> <h4>Vidco Group</h4> <div class="ss-row"><span class="ss-ico">⚡</span><div><div class="ss-val">2020</div><div class="ss-lbl">Năm bắt đầu hoạt động · MST 0109352881</div></div></div> <div class="ss-row"><span class="ss-ico">🤝</span><div><div class="ss-val">32</div><div class="ss-lbl">Khách hàng trong hồ sơ 2024–2025</div></div></div> <div class="ss-row"><span class="ss-ico">🌐</span><div><div class="ss-val">15</div><div class="ss-lbl">Quốc gia đã triển khai dự án</div></div></div> </div> </aside> </div> </div> <!-- RELATED POSTS --> <div style="background:#fff;padding:64px 0 0"> <div class="related-wrap"> <div class="related-hd">Bài viết liên quan</div> <div class="related-grid"> <a class="rc" href="https://vidcogroup.com/rich-results/"> <img class="rc-img" src="https://vidcogroup.com/wp-content/uploads/2026/04/rich-results-768x432.jpg" alt="Rich Results là gì? Hướng Dẫn Đầy Đủ về Structured Data và Schema" loading="lazy"> <div class="rc-body"> <div class="rc-cat">SEO Kỹ Thuật</div> <div class="rc-title">Rich Results là gì? Hướng Dẫn Đầy Đủ về Structured Data và Schema</div> <div class="rc-date">05/04/2026</div> </div> </a> <a class="rc" href="https://vidcogroup.com/slug-la-gi/"> <img class="rc-img" src="https://vidcogroup.com/wp-content/uploads/2026/09/slug-la-gi-so-do-noi-dung-768x512.webp" alt="Slug Là Gì? Cách Đặt Slug Chuẩn SEO Và Lỗi Cần Tránh" loading="lazy"> <div class="rc-body"> <div class="rc-cat">Blog</div> <div class="rc-title">Slug Là Gì? Cách Đặt Slug Chuẩn SEO Và Lỗi Cần Tránh</div> <div class="rc-date">15/09/2026</div> </div> </a> <a class="rc" href="https://vidcogroup.com/the-heading-h1-h6-dung-dung/"> <img class="rc-img" src="https://vidcogroup.com/wp-content/uploads/2026/09/the-heading-h1-h6-dung-dung-so-do-noi-dung-768x512.webp" alt="Thẻ Heading H1-H6: Dùng Đúng Cấu Trúc Cho SEO Và Trợ Năng" loading="lazy"> <div class="rc-body"> <div class="rc-cat">SEO Kỹ Thuật</div> <div class="rc-title">Thẻ Heading H1-H6: Dùng Đúng Cấu Trúc Cho SEO Và Trợ Năng</div> <div class="rc-date">18/09/2026</div> </div> </a> </div> </div> </div> <!-- CTA BAR --> <div class="post-cta"> <div class="post-cta-in"> <h3>Thương hiệu bạn xứng đáng<br>được <span style="color:var(--g)">AI nhắc đến.</span></h3> <p>Đặt lịch AI Visibility Audit miễn phí — Vidco Group sẽ cho bạn thấy bức tranh toàn cảnh.</p> <div class="cta-btns"> <a href="https://vidcogroup.com/#contact" class="btn-p">Đặt lịch Audit miễn phí →</a> <a href="tel:0343018345" class="btn-o">📞 034.301.8345</a> </div> </div> </div> <script> /* Reading Progress */ (function(){ var bar=document.getElementById('rdp'); window.addEventListener('scroll',function(){ var d=document.documentElement,b=document.body; var st=d.scrollTop||b.scrollTop; var sh=(d.scrollHeight||b.scrollHeight)-d.clientHeight; bar.style.width=(sh>0?(st/sh*100):0)+'%'; },{passive:true}); })(); /* Wrap tables for mobile scroll */ (function(){ var c=document.getElementById('post-content'); if(!c)return; c.querySelectorAll('table').forEach(function(t){ if(t.parentElement.classList.contains('table-wrap'))return; var w=document.createElement('div'); w.className='table-wrap'; t.parentNode.insertBefore(w,t); w.appendChild(t); }); })(); /* Auto Table of Contents */ (function(){ var content=document.getElementById('post-content'); var list=document.getElementById('toc-list'); if(!content||!list)return; var headings=content.querySelectorAll('h2,h3'); if(headings.length<2){document.getElementById('toc-box').style.display='none';return;} headings.forEach(function(h,i){ var id='toc-'+i; h.id=id; var li=document.createElement('li'); li.className=h.tagName==='H3'?'toc-h3':'toc-h2'; var a=document.createElement('a'); a.href='#'+id; a.textContent=h.textContent; a.addEventListener('click',function(e){ e.preventDefault(); h.scrollIntoView({behavior:'smooth',block:'start'}); window.scrollBy(0,-90); }); li.appendChild(a); list.appendChild(li); }); /* Active heading highlight */ var obs=new IntersectionObserver(function(entries){ entries.forEach(function(entry){ var id=entry.target.id; var link=list.querySelector('a[href="#'+id+'"]'); if(!link)return; if(entry.isIntersecting){ list.querySelectorAll('a').forEach(function(a){a.classList.remove('active')}); link.classList.add('active'); } }); },{rootMargin:'-80px 0px -70% 0px'}); headings.forEach(function(h){obs.observe(h)}); })(); </script> <!-- FLOATING ZALO + PHONE BUTTONS --> <div class="float-cta"> <a class="float-btn float-phone" href="tel:+84343018345" aria-label="Gọi ngay: 034.301.8345"> <svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" aria-hidden="true" focusable="false"><path d="M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07A19.5 19.5 0 0 1 4.07 13.11 19.79 19.79 0 0 1 1 4.49a2 2 0 0 1 1.99-2.18h3a2 2 0 0 1 2 1.72c.127.96.361 1.903.7 2.81a2 2 0 0 1-.45 2.11L7.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45c.907.339 1.85.573 2.81.7A2 2 0 0 1 21 16.92z"/></svg> <span class="float-label">034.301.8345</span> </a> <a class="float-btn float-zalo" href="https://zalo.me/0343018345" target="_blank" rel="noopener" aria-label="Chat Zalo"> <svg width="22" height="22" viewBox="0 0 48 48" fill="currentColor" aria-hidden="true" focusable="false"><path d="M24 4C12.95 4 4 12.95 4 24c0 3.6.96 6.97 2.64 9.88L4 44l10.36-2.6A19.87 19.87 0 0 0 24 44c11.05 0 20-8.95 20-20S35.05 4 24 4zm9.6 27.2c-.4 1.12-2.36 2.12-3.24 2.24-.82.11-1.86.16-3-.95-5.94-2.96-9.82-9.08-10.12-9.5-.28-.4-2.36-3.14-2.36-5.98s1.52-4.24 2.08-4.84c.52-.56 1.12-.7 1.5-.7h1.08c.38 0 .88-.14 1.38 1.04.52 1.22 1.76 4.32 1.92 4.64.16.32.26.7.04 1.12-.2.4-.3.64-.6.98-.28.34-.6.76-.86 1.02-.28.28-.58.6-.26 1.16.32.58 1.44 2.36 3.08 3.82 2.12 1.88 3.88 2.48 4.46 2.76.56.26.9.22 1.22-.14.34-.38 1.42-1.66 1.8-2.22.38-.58.76-.48 1.28-.28.52.2 3.28 1.54 3.84 1.82.56.28.94.42 1.08.64.14.26.14 1.42-.26 2.56z"/></svg> <span class="float-label">Chat Zalo</span> </a> <a class="float-btn float-wa" href="https://wa.me/84343018345" target="_blank" rel="noopener" aria-label="Chat WhatsApp"> <svg width="22" height="22" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true" focusable="false"><path d="M17.472 14.382c-.297-.149-1.758-.867-2.03-.967-.273-.099-.471-.148-.67.15-.197.297-.767.966-.94 1.164-.173.199-.347.223-.644.075-.297-.15-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.298-.347.446-.52.149-.174.198-.298.298-.497.099-.198.05-.371-.025-.52-.075-.149-.669-1.612-.916-2.207-.242-.579-.487-.5-.669-.51-.173-.008-.371-.01-.57-.01-.198 0-.52.074-.792.372-.272.297-1.04 1.016-1.04 2.479 0 1.462 1.065 2.875 1.213 3.074.149.198 2.096 3.2 5.077 4.487.709.306 1.262.489 1.694.625.712.227 1.36.195 1.871.118.571-.085 1.758-.719 2.006-1.413.248-.694.248-1.289.173-1.413-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 0 1-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 0 1-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884a9.82 9.82 0 0 1 6.988 2.896 9.825 9.825 0 0 1 2.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.815 11.815 0 0 0 12.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.882 11.882 0 0 0 5.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 0 0-3.48-8.413z"/></svg> <span class="float-label">WhatsApp</span> </a> <button class="float-btn float-toggle" type="button" aria-expanded="false" aria-label="Liên hệ"><svg class="ic-o" width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" aria-hidden="true"><path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/></svg><svg class="ic-x" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.4" aria-hidden="true"><path d="M18 6 6 18M6 6l12 12"/></svg><span class="float-label">Liên hệ</span></button> </div> <style> .float-cta{position:fixed;bottom:28px;right:24px;display:flex;flex-direction:column;gap:12px;z-index:9999} .float-btn{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:50px;font-size:13px;font-weight:700;text-decoration:none;box-shadow:0 4px 20px rgba(0,0,0,.18);transition:transform .2s,box-shadow .2s;white-space:nowrap} .float-btn:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 8px 28px rgba(0,0,0,.22)} .float-phone{background:#1DB528;color:#fff} .float-zalo{background:#0068FF;color:#fff} .float-wa{background:#25D366;color:#fff} .float-label{display:none} @media(min-width:768px){.float-label{display:inline}} @media(max-width:480px){.float-btn{padding:13px;border-radius:50%}.float-label{display:none}} .float-toggle{display:none;background:#0f3d2e;color:#fff;border:0;cursor:pointer;font:inherit} .float-toggle .ic-x,.float-cta.open .float-toggle .ic-o{display:none} .float-cta.open .float-toggle .ic-x{display:inline} @media(max-width:768px){.float-cta .float-btn:not(.float-toggle){display:none}.float-cta.open .float-btn:not(.float-toggle){display:flex}.float-toggle{display:flex}} </style> <script>(function(){var b=document.querySelector(".float-toggle");if(!b)return;b.addEventListener("click",function(){var o=b.parentNode.classList.toggle("open");b.setAttribute("aria-expanded",o?"true":"false");});})();</script> <!-- FOOTER --> <style id="vidco-trust-footer-style"> #vidco-trust-footer{background:#0b1712;color:#e4ece7;padding:56px 0 0;font-family:inherit} #vidco-trust-footer *{box-sizing:border-box} #vidco-trust-footer .vgf-grid{max-width:1240px;margin:auto;padding:0 28px;display:grid;grid-template-columns:1.45fr 1fr 1fr 1.25fr;gap:36px} #vidco-trust-footer h2{color:#fff;font-size:17px;line-height:1.5;font-weight:700;margin:0 0 16px;letter-spacing:0;text-transform:none} #vidco-trust-footer .vgf-brand{font-size:24px;letter-spacing:1px;color:#a8d78b} #vidco-trust-footer p,#vidco-trust-footer address{font-size:14px;line-height:1.75;margin:0 0 13px;font-style:normal;overflow-wrap:anywhere} #vidco-trust-footer ul{list-style:none;margin:0;padding:0} #vidco-trust-footer li{margin:0;padding:0} #vidco-trust-footer a{color:#e4ece7;text-decoration:underline;text-underline-offset:4px;display:inline-flex;align-items:center;min-height:44px;max-width:100%;line-height:1.6;font-size:14px;overflow-wrap:anywhere} #vidco-trust-footer a:hover{color:#bce7a4} #vidco-trust-footer a:focus-visible{outline:3px solid #bce7a4;outline-offset:4px;border-radius:2px} #vidco-trust-footer .vgf-label{display:block;color:#a8d78b;font-weight:700;margin-bottom:4px} #vidco-trust-footer .vgf-bottom{max-width:1184px;margin:32px auto 0;border-top:1px solid #375143;padding:20px 0 110px;font-size:13px;color:#c4d2c8;line-height:1.8} @media(max-width:1000px){#vidco-trust-footer .vgf-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}#vidco-trust-footer .vgf-bottom{margin:28px 28px 0}} @media(max-width:600px){#vidco-trust-footer{padding-top:36px}#vidco-trust-footer .vgf-grid{grid-template-columns:minmax(0,1fr);gap:26px;padding:0 22px}#vidco-trust-footer .vgf-bottom{margin:26px 22px 0;padding-bottom:140px}} </style> <footer id="vidco-trust-footer" aria-label="Thông tin doanh nghiệp và liên kết hỗ trợ"> <div class="vgf-grid"> <section aria-labelledby="vgf-company"><h2 id="vgf-company" class="vgf-brand">VIDCO GROUP</h2><p><strong>Công ty Trách nhiệm hữu hạn VIDCO GROUP</strong></p><p>Sản xuất nội dung, website và truyền thông số.</p><p>Mã số thuế: <strong>0109352881</strong><br>Hoạt động từ năm 2020.</p><p>Thông tin đơn vị chịu trách nhiệm website.</p></section> <nav aria-labelledby="vgf-about"><h2 id="vgf-about">Về VIDCO</h2><ul><li><a href="https://vidcogroup.com/gioi-thieu/">Giới thiệu công ty</a></li><li><a href="https://vidcogroup.com/doi-ngu/">Đội ngũ</a></li><li><a href="https://vidcogroup.com/du-an-tieu-bieu/">Dự án tiêu biểu</a></li><li><a href="https://vidcogroup.com/dich-vu/">Dịch vụ</a></li><li><a href="https://vidcogroup.com/lien-he/">Liên hệ và hợp tác</a></li></ul></nav> <nav aria-labelledby="vgf-policies"><h2 id="vgf-policies">Thông tin và chính sách</h2><ul><li><a href="https://vidcogroup.com/bien-tap-va-dinh-chinh/">Biên tập và đính chính</a></li><li><a href="https://vidcogroup.com/chinh-sach-bao-mat/">Chính sách bảo mật</a></li><li><a href="https://vidcogroup.com/dieu-khoan-dich-vu/">Điều khoản dịch vụ</a></li><li><a href="mailto:vidco.media.2020@gmail.com?subject=Gop%20y%20noi%20dung%20website">Góp ý nội dung website</a></li></ul></nav> <section aria-labelledby="vgf-contact"><h2 id="vgf-contact">Liên hệ</h2><address><span class="vgf-label">Trụ sở đăng ký</span>Tầng 4, HUD3 Tower, 121–123 Tô Hiệu, Phường Hà Đông, Thành phố Hà Nội, Việt Nam.<br><span class="vgf-label">Văn phòng giao dịch</span>Tòa Eurowindow, 27 Trần Duy Hưng, Cầu Giấy, Hà Nội.</address><ul><li><a href="tel:+84343018345" aria-label="Hotline tư vấn 034 301 8345">034 301 8345</a></li><li><a href="mailto:vidco.media.2020@gmail.com">vidco.media.2020@gmail.com</a></li><li><a href="https://www.google.com/maps/search/?api=1&query=HUD3%20Tower%20121%20123%20To%20Hieu%20Ha%20Dong%20Ha%20Noi" target="_blank" rel="noopener noreferrer">Tìm địa chỉ trụ sở trên bản đồ</a></li></ul></section> </div><div class="vgf-bottom">© 2026 VIDCO GROUP COMPANY LIMITED. Nội dung dịch vụ và điều kiện hợp tác theo thỏa thuận từng dự án.</div> </footer> <script> /* Cursor */ (function(){ var d=document.getElementById('cDot'),r=document.getElementById('cRing'); if(!d||!r)return; var mx=0,my=0,rx=0,ry=0; document.addEventListener('mousemove',function(e){mx=e.clientX;my=e.clientY;d.style.left=mx+'px';d.style.top=my+'px'}); (function lerp(){rx+=(mx-rx)*.13;ry+=(my-ry)*.13;r.style.left=rx+'px';r.style.top=ry+'px';requestAnimationFrame(lerp)})(); document.addEventListener('mouseenter',function(e){if(e.target&&(e.target.tagName==='A'||e.target.tagName==='BUTTON'))document.body.classList.add('ch')},true); document.addEventListener('mouseleave',function(e){if(e.target&&(e.target.tagName==='A'||e.target.tagName==='BUTTON'))document.body.classList.remove('ch')},true); })(); /* Nav scroll */ (function(){ var n=document.getElementById('nav'); function u(){(window.scrollY||window.pageYOffset)>60?n.classList.add('scrolled'):n.classList.remove('scrolled')} u();window.addEventListener('scroll',u,{passive:true}); })(); /* Scroll animations */ (function(){ var o=new IntersectionObserver(function(en){en.forEach(function(e){if(e.isIntersecting){e.target.classList.add('vis');o.unobserve(e.target)}})},{threshold:.1,rootMargin:'0px 0px -40px 0px'}); document.querySelectorAll('.fu,.fl,.fr2').forEach(function(el){o.observe(el)}); /* mf divider line */ var lo=new IntersectionObserver(function(en){en.forEach(function(e){if(e.isIntersecting){e.target.classList.add('drawn');lo.unobserve(e.target)}})},{threshold:.6}); var mfd=document.getElementById('mfDiv');if(mfd)lo.observe(mfd); })(); /* Counter animation */ (function(){ var co=new IntersectionObserver(function(en){en.forEach(function(e){if(!e.isIntersecting)return;var el=e.target,t=parseInt(el.getAttribute('data-t'),10),s=null;co.unobserve(el);if(document.hidden){el.textContent=t;return}function step(ts){if(!s)s=ts;var p=Math.min((ts-s)/1500,1),ease=1-Math.pow(1-p,3);el.textContent=Math.floor(ease*t);if(p<1)requestAnimationFrame(step);else el.textContent=t}requestAnimationFrame(step);setTimeout(function(){el.textContent=t},2500)})},{threshold:.5}); document.querySelectorAll('.cu').forEach(function(c){co.observe(c)}); })(); /* Smooth scroll */ document.querySelectorAll('a[href^="#"]').forEach(function(a){ a.addEventListener('click',function(e){ var t=document.querySelector(a.getAttribute('href')); if(!t)return;e.preventDefault(); window.scrollTo({top:t.getBoundingClientRect().top+window.scrollY-76,behavior:'smooth'}); }); }); </script> <!-- Sticky CTA Bar --> <div id="vgStickyBar" class="sticky-bar" aria-live="polite"> <p class="sticky-bar-text">Cần tư vấn? <strong>Phản hồi trong 2 giờ.</strong></p> <button class="btn btn-p btn-inquiry" data-service="">Tư vấn miễn phí →</button> </div> <!-- Calendly Modal --> <div id="vgCalendlyModal" role="dialog" aria-modal="true" aria-label="Đặt lịch tư vấn" hidden> <div class="cal-overlay"></div> <div class="cal-panel"> <button class="cal-close" aria-label="Đóng">✕</button> <div class="cal-embed" style="min-height:620px"></div> </div> </div> <div id="vgInquiryModal" role="dialog" aria-modal="true" aria-labelledby="inqTitle" hidden> <div class="inq-overlay" id="inqOverlay"></div> <div class="inq-panel"> <button class="inq-close" id="inqClose" aria-label="Đóng form">✕</button> <!-- Progress bar --> <div class="inq-progress" aria-hidden="true"> <div class="inq-bar" id="inqBar" style="width:25%"></div> </div> <p class="inq-step-label" id="inqStepLabel">Bước 1 / 4</p> <!-- Step 1: Service --> <div class="inq-step" data-step="1"> <h3 id="inqTitle">Bạn cần dịch vụ gì?</h3> <div class="inq-opts"> <button class="inq-opt" data-val="Thiết kế Website">🖥 Thiết kế Website</button> <button class="inq-opt" data-val="SEO / Content Marketing">🔍 SEO / Content</button> <button class="inq-opt" data-val="Quảng cáo Google / Meta Ads">📢 Google / Meta Ads</button> <button class="inq-opt" data-val="Tất cả dịch vụ">🚀 Tất cả dịch vụ</button> </div> </div> <!-- Step 2: Budget --> <div class="inq-step" data-step="2" hidden> <h3>Ngân sách hàng tháng?</h3> <div class="inq-opts"> <button class="inq-opt" data-val="Dưới 15 triệu">💼 < 15 triệu</button> <button class="inq-opt" data-val="15–35 triệu">📊 15–35 triệu</button> <button class="inq-opt" data-val="35–80 triệu">🚀 35–80 triệu</button> <button class="inq-opt" data-val="Trên 80 triệu">⭐ > 80 triệu</button> </div> </div> <!-- Step 3: Brief --> <div class="inq-step" data-step="3" hidden> <h3>Mô tả ngắn dự án <span class="inq-optional">(không bắt buộc)</span></h3> <textarea id="inqBrief" rows="4" placeholder="VD: Website bán hàng thời trang, cần SEO từ khóa..."></textarea> <div class="inq-step-acts"> <button class="btn btn-p inq-next" id="inqBriefNext">Tiếp theo →</button> <button class="btn btn-o inq-skip" id="inqBriefSkip">Bỏ qua</button> </div> </div> <!-- Step 4: Contact --> <div class="inq-step" data-step="4" hidden> <h3>Thông tin liên hệ</h3> <form id="vgInquiryForm" novalidate> <input type="hidden" id="nonce" name="nonce" value="d22c2d4118" /><input type="hidden" name="_wp_http_referer" value="/on-page-seo-toan-tap/" /> <input type="hidden" name="cf_service" id="inqHiddenService"> <input type="hidden" name="cf_budget" id="inqHiddenBudget"> <input type="hidden" name="cf_brief" id="inqHiddenBrief"> <div class="inq-field"> <input type="text" name="cf_name" placeholder="Họ và tên *" required autocomplete="name"> </div> <div class="inq-field"> <input type="tel" name="cf_phone" placeholder="Số điện thoại *" required autocomplete="tel"> </div> <div class="inq-field"> <input type="email" name="cf_email" placeholder="Email (không bắt buộc)" autocomplete="email"> </div> <div id="inqFormMsg" role="status" aria-live="polite" hidden></div> <button type="submit" class="btn btn-p" id="inqSubmit" style="width:100%"> Gửi yêu cầu tư vấn → </button> <p class="inq-privacy">🔒 Thông tin của bạn được bảo mật tuyệt đối</p> </form> </div> <!-- Success state --> <div class="inq-success" hidden> <div class="inq-check">✓</div> <h3>Cảm ơn bạn!</h3> <p>Chúng tôi sẽ liên hệ trong <strong>vòng 2 giờ làm việc</strong>.</p> <button class="btn btn-o" id="inqSuccessClose">Đóng</button> </div> </div> </div> <script type="speculationrules"> {"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/vidcogroup-theme/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} </script> <script id="eztoc-scroll-scriptjs-js-extra"> var eztoc_smooth_local = {"scroll_offset":"30","add_request_uri":"","add_self_reference_link":""}; //# sourceURL=eztoc-scroll-scriptjs-js-extra </script> <script id="eztoc-scroll-scriptjs-js" src="https://vidcogroup.com/wp-content/plugins/easy-table-of-contents/assets/js/smooth_scroll.min.js?ver=2.0.86"></script> <script id="eztoc-js-cookie-js" src="https://vidcogroup.com/wp-content/plugins/easy-table-of-contents/vendor/js-cookie/js.cookie.min.js?ver=2.2.1"></script> <script id="eztoc-jquery-sticky-kit-js" src="https://vidcogroup.com/wp-content/plugins/easy-table-of-contents/vendor/sticky-kit/jquery.sticky-kit.min.js?ver=1.9.2"></script> <script id="eztoc-js-js-extra"> var ezTOC = {"smooth_scroll":"1","visibility_hide_by_default":"","scroll_offset":"30","fallbackIcon":"\u003Cspan class=\"\"\u003E\u003Cspan class=\"eztoc-hide\" style=\"display:none;\"\u003EToggle\u003C/span\u003E\u003Cspan class=\"ez-toc-icon-toggle-span\"\u003E\u003Csvg style=\"fill: #999;color:#999\" xmlns=\"http://www.w3.org/2000/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"\u003E\u003Cpath d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"\u003E\u003C/path\u003E\u003C/svg\u003E\u003Csvg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http://www.w3.org/2000/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"\u003E\u003Cpath d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"/\u003E\u003C/svg\u003E\u003C/span\u003E\u003C/span\u003E","chamomile_theme_is_on":""}; //# sourceURL=eztoc-js-js-extra </script> <script id="eztoc-js-js" src="https://vidcogroup.com/wp-content/plugins/easy-table-of-contents/assets/js/front.min.js?ver=2.0.86-1787474978"></script> <script id="vidco-main-js-extra"> var vgAjax = {"url":"https://vidcogroup.com/wp-admin/admin-ajax.php","nonce":"d22c2d4118"}; //# sourceURL=vidco-main-js-extra </script> <script id="vidco-main-js" src="https://vidcogroup.com/wp-content/themes/vidcogroup-theme/assets/main.js?ver=1.1.1"></script> </body> </html><!-- Performance optimized by Redis Object Cache. Learn more: https://wprediscache.com Retrieved 2264 objects (572 KB) from Redis using PhpRedis (v5.3.7). --> <!-- Dynamic page generated in 0.229 seconds. --> <!-- Cached page generated by WP-Super-Cache on 2026-09-29 03:32:49 --> <!-- super cache -->