Trong thế giới blog ngày nay, việc sở hữu một giao diện đẹp mắt, thân thiện với người dùng và tối ưu cho cả máy tính lẫn thiết bị di động là yếu tố then chốt để giữ chân độc giả. Đây là một trong những bộ giao diện Blogger (Blogspot) được đầu tư kỹ lưỡng về mặt thiết kế, tính năng và khả năng tùy biến, hướng đến cộng đồng blogger Việt Nam cũng như quốc tế.
Opsoso_Begin_Blogger.xml là một template dành
riêng cho nền tảng Blogger.com, được
xây dựng dựa trên ngôn ngữ HTML5, CSS3 và JavaScript thuần túy, tích hợp sẵn
các thẻ XML của Blogger (GML) để tương thích hoàn hảo với hệ thống quản lý nội
dung của Google. Template này không chỉ đơn thuần là một lớp vỏ bên ngoài mà
còn là một hệ sinh thái nhỏ với nhiều tiện ích được thiết kế sẵn, giúp người
dùng tiết kiệm thời gian và công sức trong việc xây dựng blog.
Template được phát triển bởi đội ngũ Opsoso.net – một trang
web chuyên cung cấp các giải pháp mã nguồn mở, công cụ trực tuyến và giao diện
website miễn phí. Mục tiêu của Opsoso khi tạo ra template này là:
- Cung
cấp một giao diện hiện đại, sạch sẽ, thân thiện với mắt, giảm mỏi mắt
khi đọc nội dung dài.
- Tối
ưu trải nghiệm trên mọi thiết bị nhờ thiết kế responsive hoàn
toàn.
- Hỗ
trợ SEO cơ bản ngay từ đầu, giúp bài viết dễ dàng tiếp cận công cụ
tìm kiếm.
- Dễ
dàng tùy biến mà không cần am hiểu sâu về mã nguồn.
- Hoàn
toàn miễn phí, phù hợp với cộng đồng blogger, đặc biệt là các blog cá
nhân, blog công nghệ, blog chia sẻ kiến thức.
Template Opsoso Begin Blogger phù hợp với:
- Blogger
cá nhân muốn có một giao diện chuyên nghiệp nhưng không có ngân
sách mua template trả phí.
- Blog
công nghệ, mã nguồn mở – bởi chính tên gọi và phong cách thiết kế
của Opsoso.
- Blog
chia sẻ kiến thức, giáo dục với nhu cầu hiển thị nội dung rõ
ràng, có cấu trúc.
- Các
blog ảnh, portfolio nhờ slider ảnh và grid bài viết bắt mắt.
- Người
mới bắt đầu với Blogger muốn có một template sẵn nhiều tính năng
mà không cần code nhiều.
Template được tổ chức theo cấu trúc grid linh hoạt, sử dụng
CSS Grid Layout hiện đại, cho phép sắp xếp các khu vực một cách khoa học.
Bố cục chính (Layout)
Bố cục của template bao gồm 5 khu vực chính:
1.
Header (Đầu trang) – Chứa logo và
menu điều hướng.
2.
Main Top Section (Khu vực trên cùng của nội
dung chính) – Dành cho các widget giới thiệu, slogan hoặc 3 ô chức
năng nổi bật.
3.
Main (Nội dung chính) – Hiển thị các
bài viết dạng grid hoặc nội dung bài viết chi tiết.
4.
Sidebar (Thanh bên) – Chứa các tiện
ích như giới thiệu, bài viết phổ biến, danh mục chủ đề, chính sách bảo mật.
5.
Footer (Chân trang) – Hiển thị thông
tin giới thiệu, liên kết và bản quyền.
Khi xem trên màn hình nhỏ hơn 768px (tablet, điện thoại), bố
cục sẽ tự động chuyển sang 1 cột, đảm bảo nội dung vẫn dễ đọc và thao tác.
Header được thiết kế dạng sticky (dính trên cùng khi cuộn)
và có tính năng auto-hide: khi người dùng cuộn xuống, header sẽ ẩn
đi để tiết kiệm không gian; khi cuộn lên, header hiện trở lại. Điều này mang lại
trải nghiệm đọc mượt mà, đặc biệt trên thiết bị di động.
Menu điều hướng đa cấp (Multilevel Dropdown)
Đây là một điểm nhấn quan trọng. Menu không chỉ hỗ trợ cấp 1
mà còn hỗ trợ cấp 2 (dropdown) và cấp 3 (sub-dropdown) thông
qua cú pháp đặc biệt trong tiêu đề liên kết:
- Sử dụng
dấu _ (gạch dưới) ở đầu tên mục để tạo menu cấp 2.
- Sử dụng
dấu __ (hai gạch dưới) để tạo menu cấp 3.
Menu sẽ tự động phân tích cấu trúc nhờ đoạn JavaScript được
nhúng sẵn, giúp tạo menu thả xuống mượt mà mà không cần plugin.
Nút chuyển đổi giao diện tối (Dark Mode)
Ngay trong thanh menu (cạnh các mục điều hướng), template
tích hợp một nút bật/tắt dark mode. Trạng thái được lưu vào localStorage của
trình duyệt, do đó khi người dùng quay lại, giao diện sẽ được duy trì theo lựa
chọn trước đó.
Main Top Section – Khu vực tạo ấn tượng đầu tiên
Khu vực này nằm ngay sau header, trước nội dung bài viết,
bao gồm tối đa 3 widget HTML do người dùng thêm vào. Trong bản mẫu, Opsoso đã
cung cấp sẵn:
- Widget
HTML4: Hiển thị slogan với biểu tượng bông tuyết (fa-snowflake) và câu
khẩu hiệu về mã nguồn mở.
- Widget
HTML5 (chỉ hiển thị trên trang chủ): Hiển thị 3 ô chức năng với hiệu ứng
hover đẹp mắt, giới thiệu các lợi ích như "Tốc độ siêu tốc",
"Bảo mật tối đa", "Dễ dàng tùy biến".
Các widget này được thiết kế dưới dạng card, có hiệu ứng nổi
khi rê chuột, tạo sự sinh động cho trang chủ.
Slider ảnh tự động (LinkList1)
Một tính năng rất được yêu thích là slider ảnh toàn
màn hình được xây dựng từ widget LinkList1. Cách hoạt động:
- Người
dùng thêm các liên kết vào widget LinkList, trong đó URL của liên kết
chính là đường dẫn ảnh (hỗ trợ ảnh từ Blogger, Imgur, hoặc bất kỳ nguồn
nào).
- Template
sẽ tự động chuyển đổi danh sách liên kết đó thành slider với nút điều hướng
và tự động chuyển ảnh sau mỗi 4 giây.
- Ảnh được
hiển thị với tỷ lệ cover, chiều cao 350px (trên desktop) và 200px (trên
mobile), phù hợp để làm banner hoặc ảnh nổi bật.
Điều đặc biệt: Nếu chỉ có 1 ảnh, slider sẽ ẩn các nút điều
hướng để tránh gây nhầm lẫn.
Khu vực nội dung chính (Main)
Hiển thị bài viết dạng grid
Trên trang chủ, các bài viết được hiển thị dưới dạng lưới
(grid), mỗi thẻ bài viết bao gồm:
- Ảnh đại
diện (featured image) – được resize tự động về kích thước 480px theo tỷ lệ
4:3.
- Tiêu đề
bài viết.
- Đoạn
trích dài 150 ký tự.
- Ngày
đăng.
Grid có số cột linh hoạt, tối thiểu 280px cho mỗi thẻ, giúp
giao diện luôn cân đối trên mọi kích thước màn hình.
Hiển thị bài viết chi tiết (Single Post)
Khi vào một bài viết cụ thể, template sẽ hiển thị nội dung ở
dạng full-width nhưng giới hạn chiều rộng tối đa 890px và căn
giữa, giúp người đọc tập trung vào nội dung. Các ảnh trong bài được bo góc và đổ
bóng nhẹ, tạo cảm giác chuyên nghiệp.
Phân trang (Pager)
Template có phân trang rõ ràng với các nút "Bài cũ
hơn", "Bài mới hơn" và "Trang chủ". Các nút này cũng
được thiết kế đồng nhất với phong cách chung.
Sidebar thông minh
Sidebar được trang bị sẵn một số widget quan trọng:
- HTML100
– Giới thiệu: Hiển thị ảnh đại diện và mô tả ngắn.
- LinkList2
– Chính sách bảo mật: Danh sách liên kết dạng cột.
- PopularPosts1
– Bài viết phổ biến: Hiển thị 5 bài viết được xem nhiều nhất trong năm
qua, kèm ảnh thu nhỏ.
- Label1
– Chủ đề tiêu biểu: Hiển thị các nhãn (label) dưới dạng danh sách,
giúp độc giả dễ dàng lọc bài viết theo chủ đề.
Các widget LinkList trong sidebar có hiệu ứng hover đặc biệt:
khi rê chuột, liên kết sẽ trượt nhẹ sang phải và đổi màu nền.
Footer – Chân trang ấn tượng
Footer được chia làm 2 cột (trên desktop):
- Cột
trái: Widget Text1 hiển thị thông tin giới thiệu về Opsoso.net.
- Cột
phải: Widget LinkList3 hiển thị các liên kết trang.
- Phía
dưới cùng: Widget Text100 hiển thị bản quyền với năm hiện tại (tự động
cập nhật) và liên kết về Opsoso.net.
Footer có thiết kế tối giản nhưng vẫn đầy đủ thông tin cần
thiết, không gây rối mắt.
Tối ưu SEO cơ bản
Template đã tích hợp sẵn:
- Thẻ
meta description cho từng loại trang (trang chủ, bài viết, trang
tĩnh).
- Open
Graph tags (og:title, og:description, og:image, og:url) để chia sẻ
lên Facebook đẹp mắt.
- Twitter
Card dạng summary_large_image.
- Schema.org BlogPosting cho
bài viết.
- BreadcrumbList dạng
JSON-LD cho bài viết có nhãn, giúp Google hiểu cấu trúc trang.
Nhờ đó, blog của bạn có lợi thế ngay từ khi cài đặt mà không
cần cài thêm plugin SEO.
Tải bài viết động theo nhãn (Dynamic Label Posts)
Một tính năng rất thông minh và ít thấy ở template miễn
phí: tự động lấy và hiển thị bài viết theo nhãn thông qua các
widget HTML1, HTML2, HTML3.
Cách hoạt động:
- Người
dùng chỉ cần nhập tên nhãn (label) vào nội dung của
widget HTML.
- JavaScript
sẽ gọi API JSON của Blogger, lấy tối đa 3 bài viết mới nhất thuộc nhãn đó.
- Hiển
thị chúng dưới dạng danh sách ảnh + tiêu đề + đoạn trích.
Điều này cực kỳ hữu ích để tạo các chuyên mục con hoặc hiển
thị bài viết liên quan mà không cần tạo nhiều trang con phức tạp.
Hiệu ứng xuất hiện khi cuộn (Scroll Reveal)
Template có sẵn class .reveal-on-scroll và
JavaScript đi kèm (chưa kích hoạt mặc định nhưng sẵn sàng để sử dụng). Bạn có
thể thêm class này vào bất kỳ phần tử nào để chúng có hiệu ứng mờ dần và trượt
lên khi xuất hiện trong khung nhìn.
Responsive và Mobile First
Toàn bộ CSS được viết theo hướng mobile first,
nghĩa là mặc định các kiểu dành cho màn hình nhỏ, sau đó dùng media query để mở
rộng cho màn hình lớn. Điều này đảm bảo tốc độ tải trang trên di động luôn ở mức
tốt nhất.
Menu trên mobile được thu gọn thành nút hamburger, khi nhấn
sẽ hiển thị menu dọc với các cấp dropdown có thể mở rộng.
Opsoso_Begin_Blogger.xml là một template Blogger
chất lượng cao, được phát triển bởi đội ngũ Opsoso.net với tâm huyết dành cho cộng đồng mã nguồn mở.
Nó không chỉ đẹp về mặt thẩm mỹ mà còn mạnh mẽ về tính năng, thân thiện với người
dùng và tối ưu cho công cụ tìm kiếm.
Dù bạn là blogger mới bắt đầu hay đã có kinh nghiệm,
template này đều đáp ứng tốt nhu cầu: từ một blog cá nhân đơn giản đến một
trang web nội dung chuyên nghiệp. Với việc được cung cấp hoàn toàn miễn phí,
đây thực sự là một món quà ý nghĩa từ Opsoso dành cho cộng đồng.
Hãy tải ngay template Opsoso Begin Blogger, cài đặt và trải
nghiệm sự khác biệt mà nó mang lại. Và đừng quên ghé thăm Opsoso.net thường xuyên
để cập nhật những phiên bản mới nhất cũng như các giải pháp mã nguồn mở hữu ích
khác.
Thông tin liên hệ & hỗ trợ:
- Website: https://opsoso.net
- Tải về Mã
nguồn template: Opsoso_Begin_Blogger.xml
- Giấy
phép: Miễn phí, mã nguồn mở
Hướng dẫn sử dụng template Opsoso Begin Blogger chi tiết dành cho người dùng
Lời nói đầu
Cảm ơn bạn đã lựa chọn Opsoso_Begin_Blogger.xml –
một giao diện hiện đại, miễn phí và giàu tính năng dành cho nền tảng Blogger.
Tài liệu này sẽ hướng dẫn bạn từng bước từ cài đặt, cấu hình cơ bản đến tùy chỉnh
nâng cao, giúp bạn khai thác tối đa sức mạnh của template. Bài hướng dẫn được
viết với giả định bạn đã có một blog trên Blogger (Blogspot) và có quyền truy cập
vào giao diện quản trị.
Phần 1: Cài đặt template
1.1. Tải template về máy
Trước tiên, bạn cần tải file Opsoso_Begin_Blogger.xml từ
trang chủ Opsoso.net hoặc
từ nguồn cung cấp. Lưu file này vào một thư mục dễ tìm trên máy tính.
1.2. Đăng nhập vào Blogger
- Truy cập blogger.com và
đăng nhập bằng tài khoản Google của bạn.
- Chọn
blog mà bạn muốn cài đặt template.
1.3. Tiến hành upload template
1.
Trên thanh menu bên trái, chọn Giao diện (Theme).
2.
Bên phải, nhấn vào nút Sao lưu / Khôi phục (mũi
tên xuống cạnh nút Tùy chỉnh).
3.
Một cửa sổ nhỏ hiện ra, chọn Tải tệp lên (Upload).
4.
Nhấp Chọn tệp và tìm đến
file Opsoso_Begin_Blogger.xml bạn đã tải.
5.
Nhấn Tải lên (Upload). Hệ thống
sẽ cảnh báo ghi đè template hiện tại, bạn xác nhận đồng ý.
Sau khi upload thành công, template mới sẽ được áp dụng ngay
cho blog. Bạn có thể vào trang chủ để xem giao diện mới.
Lưu ý: Nên sao lưu template cũ trước khi thay đổi,
bằng cách nhấn Tải xuống đầy đủ trong cửa sổ Sao lưu/Khôi phục.
Phần 2: Cấu hình cơ bản – Các widget quan trọng
Sau khi cài đặt, bạn sẽ thấy giao diện có sẵn một số widget
mẫu. Hãy vào Bố cục (Layout) để bắt đầu tùy chỉnh.
2.1. Header – Logo và menu
a) Thay đổi logo
- Trong
bố cục, tìm khu vực Header Logo.
- Nhấp
vào Chỉnh sửa (biểu tượng bút chì) trên widget Header1.
- Tại
đây bạn có thể:
- Tải
ảnh logo lên: Nhấn Chọn tệp và upload ảnh (nên dùng ảnh
nền trong suốt, kích thước khoảng 200x64px).
- Hoặc dùng
chữ (tiêu đề blog) thay cho ảnh: bỏ chọn Hình ảnh thay
cho văn bản.
- Nhấn Lưu.
Nếu bạn không muốn hiển thị ảnh mà vẫn giữ icon mèo mặc định,
không cần chỉnh sửa gì.
b) Cấu hình menu đa cấp
Menu chính nằm trong khu vực Main Menu, sử dụng
widget PageList1. Đây là menu động hỗ trợ 3 cấp độ với cú pháp đặc biệt.
Cách tạo menu cấp 1 (mục cha):
- Vào Bố
cục, nhấn Chỉnh sửa trên widget PageList1.
- Nhấn Thêm
liên kết bên ngoài.
- Nhập Tiêu
đề (ví dụ: "Trang chủ", "Sản phẩm", "Tin
tức") và URL (ví dụ: / cho trang chủ, hoặc
đường dẫn tuyệt đối).
- Sắp xếp
thứ tự bằng cách kéo thả.
Cách tạo menu cấp 2 (dropdown con):
- Khi
thêm liên kết mới, tại ô Tiêu đề, hãy thêm dấu gạch dưới _ vào
đầu tiêu đề. Ví dụ: _Sản phẩm A, _Sản phẩm B.
- URL có
thể để # tạm thời hoặc link thật.
- Đảm bảo
các mục cấp 2 nằm ngay sau mục cấp 1 tương ứng trong danh
sách.
Cách tạo menu cấp 3 (sub-dropdown):
- Tương
tự, thêm hai dấu gạch dưới __ vào đầu tiêu đề. Ví dụ: __Phần
mềm, __Ứng dụng.
- Các mục
này sẽ tự động trở thành menu con cấp 3 của mục cấp 2 gần nhất phía trước.
Ví dụ cấu trúc mong muốn:
text
Trang chủ (/)
Sản phẩm (#)
_Sản phẩm A (link A)
__Phần mềm (link
A1)
__Ứng dụng (link
A2)
_Sản phẩm B (link B)
Tin tức (#)
Liên hệ (/p/lien-he.html)
Sau khi thêm xong, nhấn Lưu. Menu sẽ hiển thị dạng
dropdown khi rê chuột.
Mẹo: Bạn có thể tạo các trang tĩnh (Pages) từ
trình đơn Trang và gán chúng vào menu bằng cách chọn từ danh
sách thay vì nhập link tay.
2.2. Slider ảnh tự động (LinkList1)
Slider nằm trong khu vực Main (cột chính) với
tiêu đề "Ảnh đẹp". Nó sử dụng widget LinkList1 và hoạt động
dựa trên danh sách liên kết.
Cách thay đổi ảnh slider:
1.
Vào Bố cục, tìm widget LinkList1 trong
khu vực main-section (thường nằm trên cùng).
2.
Nhấn Chỉnh sửa.
3.
Bạn sẽ thấy danh sách các liên kết mẫu. Mỗi liên
kết gồm:
o Tiêu
đề (Tên): không hiển thị ra ngoài, bạn có thể ghi chú nội dung ảnh.
o URL:
đường dẫn ảnh. Quan trọng: URL phải kết thúc bằng đuôi ảnh
(jpg, png, gif, webp) và ảnh phải có kích thước đủ lớn (tối thiểu 1200x600).
4.
Để thêm ảnh mới, nhấn Thêm liên kết bên
ngoài, nhập tiêu đề và URL ảnh.
5.
Để xóa ảnh, nhấn biểu tượng thùng rác.
6.
Sắp xếp thứ tự bằng kéo thả.
7.
Nhấn Lưu.
Cách lấy đường dẫn ảnh từ Blogger:
- Vào Bài
viết, tạo một bài viết mới hoặc mở bài viết cũ.
- Tải ảnh
lên (chèn ảnh vào bài).
- Sau
khi ảnh được tải, nhấp chuột phải vào ảnh trong chế độ xem trước, chọn Sao
chép địa chỉ liên kết ảnh.
- Dán
URL đó vào slider. Địa chỉ thường có dạng: https://blogger.googleusercontent.com/img/b/R29vZ2xl/.../s1600/tenanh.jpg.
Bạn có thể thay s1600 thành s1920 để lấy ảnh độ phân
giải cao hơn.
Tùy chỉnh tốc độ chạy slider:
- Tốc độ
tự động chuyển ảnh mặc định là 4 giây. Bạn có thể thay đổi bằng cách sửa
trong file HTML: tìm dòng setInterval(function() {
window.moveSlide(1); }, 4000); và đổi số 4000 thành mili
giây mong muốn (ví dụ 3000 = 3 giây).
2.3. Ba ô chức năng (HTML5)
Khu vực main-top-section có widget HTML5 (chỉ
hiển thị trên trang chủ) chứa 3 thẻ tính năng. Để sửa nội dung:
1.
Vào Bố cục, tìm HTML5 trong
phần Main Top Section.
2.
Nhấn Chỉnh sửa.
3.
Bạn sẽ thấy mã HTML như sau:
html
<div class="features-inner-grid">
<div class="feature-sub-card">
<div class="sub-icon"><i
class="fa-solid fa-bolt"></i></div>
<h4>Tốc độ
siêu tốc</h4>
<p>Tối ưu
hóa mã nguồn giúp tải trang nhanh chóng...</p>
</div>
<!-- hai card
tương tự -->
</div>
Bạn có thể:
- Thay
đổi icon bằng cách sửa class fa-solid fa-bolt thành icon Font
Awesome khác (danh sách icon tại fontawesome.com).
- Sửa
tiêu đề h4 và nội dung p theo ý muốn.
- Thêm
hoặc bớt card (chú ý giữ cấu trúc feature-sub-card).
Sau khi sửa xong, nhấn Lưu.
2.4. Widget hiển thị bài viết theo nhãn (HTML1, HTML2,
HTML3)
Template tích hợp sẵn 3 widget HTML (HTML1, HTML2, HTML3)
trong khu vực main-section. Chúng có chức năng tự động lấy bài viết
theo nhãn nhờ JavaScript.
Cách sử dụng:
- Vào Bố
cục, tìm widget HTML1 (hoặc 2, 3).
- Nhấn Chỉnh
sửa.
- Trong
ô Nội dung, bạn chỉ cần nhập chính xác tên nhãn (label)
mà bạn muốn hiển thị. Ví dụ: nhập Công nghệ.
- Lưu
lại.
Ngay lập tức, widget sẽ hiển thị tối đa 3 bài viết mới nhất
thuộc nhãn đó, kèm ảnh đại diện, tiêu đề và đoạn trích. Nếu không có bài viết
nào, nó sẽ thông báo.
Lưu ý: Tên nhãn phải nhập chính xác (phân
biệt chữ hoa chữ thường). Nên tạo nhãn trước trong bài viết.
Bạn có thể thay đổi số lượng bài viết hiển thị bằng cách tìm
trong code: dòng generatePostList('HTML1', 3); – sửa số 3 thành
số lượng mong muốn (ví dụ 5). Tuy nhiên cần có kiến thức chỉnh sửa HTML.
2.5. Sidebar – Các widget mặc định
a) Giới thiệu (HTML100)
Widget này hiển thị ảnh đại diện và mô tả ngắn. Để tùy chỉnh:
- Vào Bố
cục, tìm HTML100 trong Sidebar.
- Nhấn Chỉnh
sửa. Bạn sẽ thấy:
html
<img src="https://...png" alt="Profile
Picture" />
<p>Tôi thích những gì dễ thương</p>
- Thay
đổi src của ảnh bằng link ảnh của bạn.
- Sửa
nội dung đoạn văn.
b) Chính sách bảo mật (LinkList2)
Đây là danh sách liên kết đơn giản. Bạn có thể thêm, sửa,
xóa các liên kết như bình thường. Mỗi liên kết sẽ hiển thị dưới dạng một mục
trong sidebar với hiệu ứng hover.
c) Bài viết phổ biến (PopularPosts1)
Widget này không cần chỉnh sửa nhiều. Bạn có thể cấu hình:
- Vào Chỉnh
sửa widget.
- Chọn Số
lượng bài viết (mặc định 5).
- Bật/tắt Hiển
thị hình thu nhỏ.
- Chọn
khoảng thời gian: 7 ngày qua, 30 ngày qua, năm qua, tất cả.
d) Chủ đề tiêu biểu (Label1)
Hiển thị các nhãn dưới dạng danh sách. Bạn có thể chọn hiển
thị dạng danh sách hoặc đám mây trong phần chỉnh
sửa widget. Nên để dạng danh sách để tiết kiệm diện tích.
2.6. Footer
Footer có 3 widget:
- Text1:
Giới thiệu ngắn.
- LinkList3:
Các liên kết trang (dạng cột).
- Text100:
Bản quyền tự động cập nhật năm.
Bạn có thể tùy chỉnh nội dung các widget này giống như bất kỳ
widget HTML/LinkList nào khác. Đặc biệt, bạn có thể thay đổi liên kết
"Design by Opsoso" trong Text100 nếu muốn.
Phần 3: Tùy chỉnh nâng cao (Dành cho người biết HTML/CSS)
3.1. Thay đổi màu sắc, font chữ
Template sử dụng hệ thống biến CSS (CSS variables) tập trung
ở đầu file. Bạn có thể vào Giao diện → Chỉnh sửa HTML, tìm
dòng :root { (khoảng dòng 90-110). Tại đây bạn thấy các biến:
css
:root {
--primary-color:
#3b4252;
--accent-color:
#dd6b20;
--bg-color:
#f4f1ea;
--text-color:
#4a5568;
--heading-color:
#2d3748;
--border-color: rgba(45,
55, 72, 0.08);
--card-bg: #fdfdfc;
--shadow: 0 10px
30px rgba(0, 0, 0, 0.04);
--radius-l: 20px;
--radius-m: 12px;
--radius-s: 8px;
}
Bạn có thể thay đổi các giá trị này, ví dụ:
- Đổi
màu chính thành xanh: --primary-color: #2c7da0;
- Đổi
màu nền thành trắng tinh: --bg-color: #ffffff;
- Bo
góc lớn hơn: --radius-l: 30px;
Lưu ý: Phần dark mode có bộ biến riêng bên dưới html[data-theme='dark'].
Nếu muốn thay đổi màu dark mode, hãy sửa ở đó.
3.2. Điều chỉnh kích thước ảnh slider
Ảnh slider có chiều cao mặc định 350px (desktop) và 200px
(mobile). Bạn có thể sửa trong CSS: tìm .slider-slide img và thay đổi height:
350px; thành giá trị mong muốn (ví dụ 450px). Tương tự cho mobile.
3.3. Kích hoạt hiệu ứng xuất hiện khi cuộn (scroll
reveal)
Template đã có class .reveal-on-scroll nhưng chưa
có JavaScript kích hoạt. Để dùng, bạn thực hiện:
1.
Thêm class reveal-on-scroll vào bất kỳ
phần tử nào bạn muốn (ví dụ: một card, một đoạn văn).
2.
Chèn đoạn script sau vào cuối file HTML (trước </body>):
javascript
<script>
document.addEventListener('DOMContentLoaded',
function() {
const observer = new
IntersectionObserver((entries) => {
entries.forEach(entry
=> {
if (entry.isIntersecting)
{
entry.target.classList.add('is-visible');
}
});
});
document.querySelectorAll('.reveal-on-scroll').forEach(el
=> observer.observe(el));
});
</script>
Các phần tử có class này sẽ mờ dần và trượt lên khi xuất hiện
trong khung nhìn.
3.4. Thêm mã theo dõi Google Analytics
- Vào Cài
đặt → Cài đặt tìm kiếm → Google Analytics.
- Nhập
ID theo dõi (dạng G-xxxxxx hoặc UA-xxxxx).
- Lưu lại.
Hoặc bạn có thể chèn trực tiếp mã Google Tag vào thẻ <head> bằng
cách chỉnh sửa HTML.
3.5. Tùy chỉnh số lượng bài viết trên trang chủ
Mặc định, Blog1 hiển thị số bài viết theo cài đặt của
Blogger (Cài đặt → Bài đăng trên trang chủ). Bạn có thể thay đổi tại Cài
đặt → Định dạng bài đăng → Hiển thị tối đa. Mặc định thường là 7. Bạn có thể
tăng lên 10 hoặc 12.
Nếu muốn thay đổi số cột trong grid, bạn chỉnh CSS: .posts-container
{ grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }. Số 300px là
chiều rộng tối thiểu của mỗi thẻ, bạn có thể tăng lên để hiển thị ít cột hơn.
3.6. Sử dụng biểu tượng Font Awesome khác
Template đã nhúng Font Awesome 6.4.2. Bạn có thể sử dụng bất
kỳ icon nào từ thư viện miễn phí của họ. Cú pháp:
html
<i class="fa-regular fa-heart"></i> <!--
icon trái tim rỗng -->
<i class="fa-solid fa-camera"></i> <!--
icon máy ảnh -->
Để tìm icon, truy cập Font Awesome Icons.
Chọn icon, sao chép class và dán vào thuộc tính class của thẻ <i>.
Phần 4: Xử lý sự cố thường gặp
4.1. Menu không hiển thị dropdown hoặc bị lỗi
- Kiểm
tra lại cú pháp dấu _ và __ ở đầu tiêu đề. Không được
có khoảng trắng trước dấu gạch dưới.
- Đảm
bảo các mục con nằm ngay dưới mục cha trong danh sách.
- Nếu
bạn đã chỉnh sửa HTML và xóa mất đoạn JavaScript xây dựng menu, hãy tải lại
template gốc.
4.2. Slider không chạy hoặc ảnh không hiển thị
- Kiểm
tra URL ảnh: phải kết thúc bằng đuôi ảnh, không chứa dấu cách, nên dùng ảnh
từ nguồn hỗ trợ CORS (Blogger, Imgur, Flickr...).
- Đảm
bảo có ít nhất 1 ảnh.
- Kiểm
tra xem JavaScript có bị lỗi không: mở công cụ phát triển (F12) → Console,
xem lỗi đỏ.
4.3. Dark mode không nhớ trạng thái
- Kiểm
tra xem trình duyệt có cho phép localStorage không (hầu hết đều cho phép).
- Nếu
bạn đã xóa đoạn script dark mode, hãy thêm lại:
javascript
<script>
if (localStorage.getItem('theme')
=== 'dark') {
document.documentElement.setAttribute('data-theme',
'dark');
}
</script>
4.4. Widget HTML1,2,3 không hiển thị bài viết
- Kiểm
tra lại tên nhãn: nhập chính xác, không dấu cách thừa.
- Đảm
bảo có ít nhất 1 bài viết mang nhãn đó và bài viết đã được xuất bản (không
ở chế độ nháp).
- Do
cơ chế JSONP, nếu blog của bạn ở chế độ riêng tư hoặc bị chặn truy cập
feed, tính năng này sẽ không hoạt động. Hãy đảm bảo blog ở chế độ công
khai.
4.5. Giao diện bị vỡ trên điện thoại
- Kiểm
tra lại thẻ meta viewport: phải có <meta name="viewport"
content="width=device-width, initial-scale=1,
shrink-to-fit=no">. Nếu thiếu, hãy thêm vào thẻ <head>.
- Đảm
bảo bạn không xóa các media query trong CSS.
Phần 5: Mẹo và thủ thuật nâng cao
5.1. Thêm biểu tượng cảm xúc (emoji) vào tiêu đề widget
Bạn có thể thêm emoji trực tiếp vào tiêu đề widget (ví dụ:
"📱 Công nghệ", "❤️
Yêu thích"). Blogger hỗ trợ Unicode, emoji sẽ hiển thị đẹp.
5.2. Chèn quảng cáo Google AdSense
- Vào Bố
cục, thêm widget HTML/Javascript vào bất kỳ khu vực
nào (sidebar, giữa bài viết, dưới header).
- Dán
mã quảng cáo từ AdSense vào.
- Hoặc
sử dụng tính năng "Quảng cáo" có sẵn của Blogger (Cài đặt →
Doanh thu).
5.3. Thay đổi font chữ mặc định
Template dùng Google Fonts Inter và Nunito. Bạn
có thể thay bằng font khác:
- Tìm
dòng <link
href='https://fonts.googleapis.com/css2?family=Inter...'
rel='stylesheet'/> và thay bằng font bạn muốn.
- Sửa
các khai báo font-family trong CSS (tìm font-family:
'Inter', ... và font-family: 'Nunito', ...).
5.4. Tạo trang liên hệ có form
Blogger có sẵn widget Biểu mẫu liên hệ (Contact
Form). Bạn có thể thêm nó vào sidebar hoặc tạo một trang riêng:
- Tạo
trang mới (Trang → Trang mới).
- Chèn
widget bằng cách nhấp vào biểu tượng thêm widget trong trình soạn thảo? Thực
tế, bạn có thể chèn form liên hệ bằng cách dùng shortcode: <iframe
src="https://docs.google.com/forms/..."></iframe> hoặc
thêm widget Contact Form vào khu vực sidebar và đặt nó ở vị trí mong muốn.
Template đã có sẵn CSS cho contact form (đã được tùy chỉnh
giao diện đồng bộ).
5.5. Sao lưu và khôi phục cài đặt
- Để
sao lưu toàn bộ template kèm nội dung widget, vào Giao diện → Sao
lưu/Khôi phục → Tải xuống đầy đủ. File .xml sẽ lưu cả cấu hình widget.
- Để
khôi phục, upload file đó.
Bạn đã hoàn thành việc cài đặt và tùy chỉnh template Opsoso Begin Blogger. Với hướng dẫn chi tiết này, hy vọng bạn có thể tự tin làm chủ giao diện, tạo nên một blog chuyên nghiệp, đẹp mắt và thân thiện với người dùng.
Nếu cần hỗ trợ thêm, hãy truy cập Opsoso.net hoặc để lại
bình luận bên dưới bài viết. Chúng tôi luôn sẵn lòng giúp đỡ cộng đồng mã nguồn
mở.
Chúc bạn thành công!