NTM Solutions

Bài đăng nổi bật

🚀 Laravel 12 (2026) — Từ PHP Core đến Full Stack📘

Nếu cập nhật theo Laravel 12 LTS (2026) thì mình sẽ chia thành các phần như sau để người học đi từ PHP Core → Laravel → Triển khai dự án th...

Thứ Hai, 12 tháng 10, 2026

🚀Bài 02 — ES6+: JavaScript hiện đại

1. ES6+ là gì?

ES6 (ECMAScript 2015) là phiên bản lớn của JavaScript ra mắt năm 2015, bổ sung nhiều cú pháp và tính năng giúp code ngắn gọn, dễ đọc và dễ bảo trì hơn.

ES6+ là cách gọi chung các tính năng ES6 và những phiên bản JavaScript hiện đại ra đời sau đó.

Trong khóa học Laravel 13, chúng ta sẽ sử dụng ES6+ để:

  • Viết JavaScript trong ứng dụng Laravel.

  • Xử lý dữ liệu từ REST API.

  • Xây dựng giao diện bằng Vue.

  • Làm việc với React.

  • Tổ chức code thành các module độc lập.

Thứ Sáu, 9 tháng 10, 2026

📘KHÓA 2 — FRONTEND SAU LARAVEL 13

JavaScript → Vue → Vue + Laravel API → React → Livewire

PHẦN 1 — JAVASCRIPT HIỆN ĐẠI

Bài 01 — JavaScript hiện đại trong ứng dụng Laravel

Bài 02 — ES6+

Bài 03 — Array & Object

Bài 04 — Module & Import / Export

Bài 05 — Promise & Async/Await

Bài 06 — Fetch API

Bài 07 — Xử lý JSON & HTTP

Bài 08 — JavaScript gọi Laravel REST API


🟢 PHẦN 2 — VUE

Bài 09 — Vue là gì?

Bài 10 — Cài đặt Vue + Vite

Bài 11 — Component

Bài 12 — Template & Data Binding

Bài 13 — Event

Bài 14 — Conditional & List Rendering

Bài 15 — Form

Bài 16 — Computed & Watch

Bài 17 — Props & Emits

Bài 18 — Composition API

Bài 19 — ref() & reactive()

Bài 20 — Composables


🔵 PHẦN 3 — VUE + LARAVEL API

Bài 21 — Kết nối Vue với Laravel API

Bài 22 — Hiển thị Posts

Bài 23 — Post Detail

Bài 24 — Category & Filter

Bài 25 — Search & Pagination

Bài 26 — CRUD với Vue

Bài 27 — Upload Image

Bài 28 — Login với Laravel Sanctum

Bài 29 — Register & Logout

Bài 30 — Protected Page

Bài 31 — User Dashboard

Bài 32 — Admin Dashboard


🟣 PHẦN 4 — VUE ROUTER & PINIA

Bài 33 — Vue Router

Bài 34 — Dynamic Route & Navigation Guard

Bài 35 — Pinia

Bài 36 — Authentication State

Bài 37 — Axios & Interceptor


🏗️ PHẦN 5 — PROJECT

Xây dựng Blog SPA

Bài 38 — Khởi tạo Blog SPA

Bài 39 — Blog Homepage

Bài 40 — Blog Listing & Detail

Bài 41 — Category & Search

Bài 42 — Authentication

Bài 43 — User Dashboard

Bài 44 — Admin Dashboard

Bài 45 — CRUD Posts

Bài 46 — Hoàn thiện Blog SPA


🔴 PHẦN 6 — MỞ RỘNG

Bài 47 — React cơ bản

  • JSX

  • Component

  • Props

  • State

  • useState

  • useEffect

Bài 48 — React + Laravel API

Bài 49 — Livewire cơ bản

  • Component

  • Data Binding

  • Event

  • Form

  • Validation

Bài 50 — Khi nào dùng Blade, Livewire, Vue hay React?


🎯 Tổng cộng: 50 bài

KHÓA LARAVEL 13
       │
       ├── REST API ✓
       │
       └── Sanctum ✓
              │
              ▼
      KHÓA FRONTEND 50 BÀI
              │
       ┌──────┴──────┐
       ↓             ↓
 JavaScript         Vue
       │             │
       └──────┬──────┘
              ↓
       Laravel REST API
              │
              ↓
          Blog SPA
              │
       ┌──────┼──────┐
       ↓      ↓      ↓
     Pinia  React  Livewire
Thứ Năm, 8 tháng 10, 2026

❓Tạo nút Hỏi AI🤖

Sử dụng Cloudflare Workers (gói Miễn phí vô cùng rộng rãi, cho phép 100.000 yêu cầu/ngày) làm "trạm trung chuyển" là giải pháp bảo mật tối ưu nhất.

Khi áp dụng phương pháp này, quy trình xử lý sẽ là: Blogger của bạn → Cloudflare Worker → Gemini API.

Người dùng xem bằng DevTools (F12) chỉ thấy URL của Cloudflare Worker chứ hoàn toàn không thấy Gemini API Key.

Thứ Tư, 30 tháng 9, 2026

🔑 Đặc điểm chính của Electron

Electron là một framework mã nguồn mở cho phép bạn xây dựng ứng dụng desktop đa nền tảng (Windows, macOS, Linux) chỉ với JavaScript, HTML và CSS, bằng cách kết hợp Chromium và Node.js trong cùng một môi trường.

Nó giúp lập trình viên web dễ dàng tạo ứng dụng desktop mà không cần học thêm ngôn ngữ native như C++ hay Swift.

🚀Bài 01 — JavaScript hiện đại trong ứng dụng Laravel

Trong các bài trước của khóa Laravel 13, chúng ta đã làm việc chủ yếu với:

  • PHP

  • Laravel

  • Blade

  • Database

  • Eloquent

  • REST API

  • Laravel Sanctum

Những thành phần này chủ yếu xử lý phía Server.

Nhưng một ứng dụng web hiện đại không chỉ có Server.

Khi người dùng:

  • bấm nút,

  • mở Modal,

  • gửi Form,

  • tìm kiếm,

  • lọc dữ liệu,

  • upload ảnh,

  • tải dữ liệu không cần reload trang,

  • cập nhật giao diện ngay lập tức,

thì chúng ta cần đến JavaScript.

Vì vậy, trước khi học Vue, React hoặc các Frontend Framework khác, chúng ta cần nắm được JavaScript hiện đại.

🚀 Laravel 12 (2026) — Từ PHP Core đến Full Stack📘

Nếu cập nhật theo Laravel 12 LTS (2026) thì mình sẽ chia thành các phần như sau để người học đi từ PHP Core → Laravel → Triển khai dự án thực tế.

Chủ Nhật, 27 tháng 9, 2026

🚀LARAVEL 13 — Bài 50 — Tổng kết dự án Blog CMS

Sau 49 bài, chúng ta đã đi từ những khái niệm đầu tiên của Laravel đến việc xây dựng một Blog CMS hoàn chỉnh.

Trong bài cuối cùng này, chúng ta sẽ không học thêm một tính năng mới.

Thay vào đó, chúng ta sẽ nhìn lại toàn bộ dự án:

  • Đã học những gì?

  • Các thành phần kết nối với nhau như thế nào?

  • Source code cần tối ưu ra sao?

  • Cần kiểm tra gì trước khi đưa website lên Internet?

  • Một dự án Laravel 13 hoàn chỉnh cần có những thành phần nào?

Đây cũng là bước chuyển từ:

"Học Laravel"

sang:

"Có thể tự xây dựng và triển khai một ứng dụng Laravel thực tế."


🚀LARAVEL 13 — BONUS — Kiểm thử với PHPUnit

Trong 50 bài chính, chúng ta đã hoàn thành một Blog CMS với:

  • Authentication

  • CRUD

  • Database

  • Eloquent

  • Relationship

  • Validation

  • Upload

  • Search

  • Pagination

  • Soft Delete

  • Authorization

  • Queue

  • Mail

  • Notification

  • Cache

  • Storage

  • Logging

  • REST API

  • Sanctum

  • Deployment

Nhưng có một vấn đề:

Làm sao biết code của chúng ta vẫn hoạt động đúng sau khi sửa hoặc thêm tính năng mới?

Đó là lúc Automated Testing xuất hiện.

Trong bài Bonus này, chúng ta chỉ học những kiến thức PHPUnit cần thiết để bắt đầu kiểm thử một ứng dụng Laravel 13.

p/S: mục 8 trở đi mới chạy được.

Thứ Sáu, 25 tháng 9, 2026

🚀LARAVEL 13 — BÀI 49 — PRODUCTION TIPS

Ở các bài trước, chúng ta đã lần lượt xây dựng và triển khai Blog CMS:

Bài 45 → Shared Hosting
Bài 46 → VPS
Bài 47 → Nginx
Bài 48 → Queue Worker & Scheduler

Đến đây ứng dụng đã có thể chạy trên production.

Nhưng:

Chạy được chưa có nghĩa là đã được cấu hình tốt cho production.

Một Laravel application thực tế cần quan tâm thêm:

  • Performance

  • Cache

  • Environment

  • Debug

  • Security

  • Database

  • Queue

  • Storage

  • Logs

  • Deployment

  • Configuration

Laravel 13 cung cấp sẵn nhiều công cụ để tối ưu những vấn đề này. Trong tài liệu deployment chính thức, Laravel đặc biệt khuyến nghị cache configuration, events, routes và views khi triển khai production.

Thứ Năm, 24 tháng 9, 2026

🚀LARAVEL 13 — BÀI 48 — QUEUE WORKER & SCHEDULER

Ở Bài 47, chúng ta đã cấu hình:

Internet
    ↓
Nginx
    ↓
PHP-FPM
    ↓
Laravel 13

Nhưng một ứng dụng thực tế thường không chỉ xử lý request ngay lập tức.

Ví dụ Blog CMS của chúng ta có thể cần:

  • gửi email;

  • gửi notification;

  • xử lý ảnh;

  • tạo báo cáo;

  • xóa dữ liệu cũ;

  • đồng bộ dữ liệu;

  • gửi email hàng loạt;

  • chạy tác vụ mỗi ngày;

  • dọn database;

  • kiểm tra bài viết scheduled.

Nếu bắt người dùng chờ tất cả những việc này hoàn thành trong HTTP request thì website sẽ chậm.

Laravel cung cấp hai cơ chế rất quan trọng:

Queue
Scheduler

Trong bài này chúng ta sẽ đưa cả hai lên VPS production.

Thứ Tư, 23 tháng 9, 2026
Thứ Ba, 22 tháng 9, 2026

🖥️ LARAVEL 13 — BÀI 46 — DEPLOY LARAVEL 13 LÊN VPS

Ở Bài 45, chúng ta đã đưa Laravel 13 lên Shared Hosting.

Trong bài này, chúng ta tiến thêm một bước:

Shared Hosting
      ↓
      VPS

VPS cho phép chúng ta tự quản lý server ở mức thấp hơn:

VPS
│
├── Ubuntu
├── Nginx
├── PHP
├── PHP-FPM
├── MySQL
├── Composer
├── Git
├── SSL
└── Laravel 13

Đây là mô hình rất quan trọng nếu muốn làm Laravel ở môi trường production thực tế

Thứ Hai, 21 tháng 9, 2026
Chủ Nhật, 20 tháng 9, 2026

🔐LARAVEL 13 — BÀI 44 — API AUTHENTICATION

Ở Bài 41, chúng ta đã xây dựng REST API.

Ở Bài 42, chúng ta biết cách dùng API Resource để định dạng JSON.

Ở Bài 43, chúng ta đã học Laravel Sanctum và API Token.

Bây giờ chúng ta sẽ ghép tất cả lại để xây dựng một hệ thống:

Client
  │
  │ email + password
  ▼
POST /api/login
  │
  ▼
Laravel kiểm tra tài khoản
  │
  ├── Sai → 422 / 401
  │
  └── Đúng
       │
       ▼
   Sanctum Token
       │
       ▼
Authorization: Bearer TOKEN
       │
       ▼
Protected API

Đây chính là nền tảng authentication thường gặp khi Laravel đóng vai trò API Backend cho:

  • Website JavaScript

  • React

  • Vue

  • Next.js

  • Mobile App

  • Desktop App

  • ứng dụng bên thứ ba

Laravel 13 có thể sử dụng Sanctum để xác thực API bằng token. Token được gửi trong HTTP header dưới dạng Bearer Token.

Ghi chú: mục 12 trở đi mới dùng Postman test được.

Thứ Bảy, 19 tháng 9, 2026

🔐LARAVEL 13 — BÀI 43: SANCTUM

Laravel Sanctum cung cấp cơ chế xác thực nhẹ cho API token, SPA và các ứng dụng mobile.

Ở Bài 41, chúng ta đã xây dựng REST API.

Ở Bài 42, chúng ta dùng API Resource để kiểm soát dữ liệu JSON.

Nhưng API hiện tại có một vấn đề:

GET     /api/posts
POST    /api/posts
PUT     /api/posts/1
DELETE  /api/posts/1

Ai cũng có thể gửi request.

Ví dụ:

Anonymous User
       ↓
POST /api/posts
       ↓
Tạo bài viết?

Đây rõ ràng không phải điều chúng ta muốn.

Chúng ta cần biết:

Ai đang gọi API?

Và:

Người đó có được phép gọi API này không?

Đó là lúc Laravel Sanctum xuất hiện.

Thứ Sáu, 18 tháng 9, 2026

🚀LARAVEL 13 — BÀI 42: API RESOURCE

API Resource là lớp trung gian giúp chúng ta kiểm soát dữ liệu từ Eloquent Model trước khi Laravel trả dữ liệu về cho API client dưới dạng JSON.

Ở Bài 41 — REST API, chúng ta đã tạo được:

GET     /api/posts
GET     /api/posts/{post}
POST    /api/posts
PUT     /api/posts/{post}
DELETE  /api/posts/{post}

Nhưng chúng ta gặp một vấn đề:

return $post;

hoặc:

return Post::all();

Laravel có thể tự chuyển Model thành JSON.

Điều này rất tiện.

Nhưng đối với một API thực tế, chúng ta thường không muốn trả toàn bộ dữ liệu của Model.

Đó chính là lúc:

API Resource

xuất hiện.

Thứ Năm, 17 tháng 9, 2026

✨📚 Cách dùng các thư viện cũ trong Laravel 13 🛠️

Bạn hoàn toàn có thể dùng AdminLTE trong Laravel 13 với cơ chế @vite , vì hiện nay AdminLTE đã có gói chính thức cho Laravel hỗ trợ Vite-first pipeline.

Điều này giúp bạn vừa tận dụng thư viện cũ, vừa đảm bảo bảo mật, minify và tree-shaking.

🔑 Cách tích hợp AdminLTE với Laravel 13 qua Vite

1. Cài đặt gói chính thức

  • Chạy lệnh Composer:

    composer require colorlibhq/adminlte-laravel
  • Sau đó chạy artisan installer:

    php artisan adminlte:install

👉 Lệnh này sẽ:

  • Xuất file cấu hình config/adminlte.php.

  • Tạo stub cho Vite tại resources/js/adminlte.js và resources/css/adminlte.css.

  • Cài đặt các dependency frontend (AdminLTE, Bootstrap 5.3, Popper, Icons, ApexCharts, v.v.).

🚀LARAVEL 13 — BÀI 41: REST API

REST API là cầu nối để Laravel giao tiếp với Website, JavaScript, Mobile App hoặc các hệ thống khác thông qua HTTP và dữ liệu JSON.

Ở phần trước, chúng ta đã hoàn thành Logging & Debug.

Từ bài này, chúng ta bước sang:

🌐 PHẦN 9 — REST API

Gồm:

  • Bài 41 — REST API

  • Bài 42 — API Resource

  • Bài 43 — Sanctum

  • Bài 44 — API Authentication

Mục tiêu của phần này là biến Laravel từ một Website thông thường thành một Backend API có thể cung cấp dữ liệu cho nhiều loại ứng dụng khác nhau.


1. REST API là gì?

Khi xây dựng một Website Laravel truyền thống:

Browser
   ↓
Laravel
   ↓
Blade
   ↓
HTML

Laravel xử lý request rồi trả về HTML để trình duyệt hiển thị.

Ví dụ:

GET /blog

Laravel trả về:

<html>
    ...
</html>

Nhưng với API, cách hoạt động sẽ khác:

Website
Mobile App
JavaScript
React
Vue
Next.js
   ↓
REST API
   ↓
Laravel
   ↓
Database

Laravel không nhất thiết trả về HTML.

Thay vào đó, Laravel trả về:

{
    "id": 1,
    "title": "Laravel 13 là gì?"
}

Đây chính là nền tảng của API.

Thứ Tư, 16 tháng 9, 2026

📘LARAVEL 13 — BÀI 40 — LOGGING & DEBUG

Khi ứng dụng còn nhỏ, chúng ta có thể nhìn vào màn hình và đoán lỗi.

Nhưng khi Blog CMS bắt đầu có nhiều Controller, Model, Middleware, Event, Queue, Mail, Cache và Storage thì việc theo dõi hoạt động của ứng dụng trở nên rất quan trọng.

Laravel cung cấp hệ thống Logging và nhiều công cụ Debug giúp chúng ta biết:

  • Request nào đang xảy ra.

  • Query nào được thực thi.

  • Exception nào xuất hiện.

  • User nào đang thực hiện hành động.

  • Queue nào đang chạy.

  • Ứng dụng đang gặp vấn đề ở đâu.

Trong bài này chúng ta tìm hiểu ba công cụ chính:

Log
Debugbar
Telescope

Thứ Ba, 15 tháng 9, 2026

📘 LARAVEL 13 — BÀI 39 — STORAGE

Storage là hệ thống quản lý file của Laravel.

Thay vì tự xử lý đường dẫn file bằng PHP thuần, Laravel cung cấp Storage để làm việc với upload, lưu trữ, đọc, xóa, di chuyển và tạo URL cho file một cách thống nhất.

Trong Blog CMS của chúng ta, Storage đặc biệt quan trọng vì hệ thống có:

  • Upload ảnh bài viết.

  • Hiển thị ảnh bài viết.

  • Thay thế ảnh cũ.

  • Xóa ảnh khi xóa Post.

  • Lưu đường dẫn ảnh vào Database.

  • Quản lý file public/private.

  • Sau này có thể chuyển từ Local Storage sang S3 hoặc dịch vụ tương thích S3.

Laravel 13 sử dụng filesystem abstraction dựa trên Flysystem, cho phép ứng dụng sử dụng cùng một API khi làm việc với Local, SFTP, Amazon S3 và các filesystem tương thích S3.

📌 Ghi chú:

🚀 Nếu đã upload mã nguồn lên host thật, nên chọn Amazon S3 ngay từ đầu (vì số lượng 📷 ảnh và 🎬 videos chèn trong posts sẽ rất lớn trong tương lai) 👉 xem mục 35.

🛠️ Mã nguồn hoàn chỉnh CRUD post có kèm upload ảnh đã có sẵn trong Bài 20 — Upload File 📤 và Bài 27 — CRUD Posts 📝.

🎨 Laravel 13: Hướng Dẫn Sắp Xếp & Quản Lý Assets 📂

Trong quy trình phát triển Laravel tiêu chuẩn (từ Laravel 9 trở đi và hiện tại là Laravel 13), vị trí đặt các file .js và .css do developer tự viết được phân chia rõ ràng theo mục đích sử dụng:

1. Nơi chứa mã nguồn (Source Code) — Phổ biến nhất

Tất cả các file JS/CSS do developer tự định nghĩa, chưa qua đóng gói/biên dịch sẽ đặt tại thư mục resources/

my-laravel-project/
├── resources/
│   ├── css/
│   │   ├── app.css           # File CSS chính
│   │   └── custom.css        # CSS tự định nghĩa thêm
│   └── js/
│       ├── app.js            # File JS chính (entry point)
│       ├── components/       # Chứa các module JS/Vue/React
│       └── custom.js         # JS tự viết

Vì sao đặt ở resources/?

Tài liệu Official (Trang chủ Laravel) quy định resources/css và resources/js là nơi lưu trữ tất cả frontend assets.

Các file này sẽ được Vite (công cụ đóng gói mặc định) đọc, nén, tối ưu hóa (bundle/minify) và tạo mã hash để chống cache trình duyệt trước khi phát hành (production).

Cách liên kết vào Blade Layout:

Trình biên dịch Vite sẽ biên dịch các file từ resources/ và nhúng vào HTML thông qua directive @vite():

<!-- resources/views/layouts/app.blade.php -->

@vite(['resources/css/app.css', 'resources/js/app.js'])
Thứ Hai, 14 tháng 9, 2026

📘 LARAVEL 13 — BÀI 38 — CACHE

Cache là một trong những kỹ thuật quan trọng để tăng tốc ứng dụng web.

Thay vì mỗi request đều phải truy vấn Database hoặc thực hiện lại một công việc tốn thời gian, Laravel có thể lưu kết quả vào Cache và sử dụng lại trong những request tiếp theo.

Trong các dự án thực tế, Cache đặc biệt hữu ích với:

  • Danh mục sản phẩm.

  • Danh sách bài viết.

  • Thông tin cấu hình.

  • Thống kê.

  • Dữ liệu được truy vấn thường xuyên.

  • API response.

  • Những phép tính hoặc truy vấn Database tốn thời gian.

Chủ Nhật, 13 tháng 9, 2026

🏆 PHẦN 6 — LÀM RA TIỀN THẬT

Đây là phần quan trọng nhất của toàn bộ khóa học.

Ở 5 phần trước, chúng ta đã học:

🛒 Tìm sản phẩm
      ↓
👥 Tìm khách
      ↓
📱 Làm nội dung
      ↓
💰 Chạy quảng cáo
      ↓
🔥 Bán lại cho khách cũ
      ↓
🌐 Google + Website
      ↓
🤖 AI + Automation

Nhưng tất cả những thứ đó vẫn chỉ là kiến thức nếu chưa có một sản phẩm thật, khách hàng thật và giao dịch thật.

Vì vậy, ở Phần 6 chúng ta sẽ:

Đưa toàn bộ hệ thống vào thực tế.

Không còn hỏi:

"Nếu bán thì sao?"

Mà bắt đầu hỏi:

"Hôm nay tôi bán được bao nhiêu?"

📘 LARAVEL 13 — BÀI 37 — NOTIFICATION

Trong Bài 36 — Mail, chúng ta đã học cách Laravel gửi email bằng:

Mail
  ↓
Mailable
  ↓
Blade
  ↓
SMTP
  ↓
Người nhận

Nhưng trong một ứng dụng thực tế, thông báo không chỉ có Email.

Người dùng có thể cần nhận thông báo qua:

  • 📧 Email

  • 🗃️ Database

  • 📱 SMS

  • 💬 Slack

  • 🔔 Các kênh thông báo khác

Đây chính là lúc Notification của Laravel trở nên hữu ích.

Notification giúp chúng ta xây dựng một thông báo theo cách thống nhất, sau đó quyết định thông báo đó sẽ được gửi qua kênh nào.


Thứ Bảy, 12 tháng 9, 2026

🤖 PHẦN 5 — AI GIÚP BÁN HÀNG

Sau 4 phần, chúng ta đã xây được một quy trình:

TÌM SẢN PHẨM
    ↓
TÌM KHÁCH
    ↓
LÀM NỘI DUNG
    ↓
QUẢNG CÁO
    ↓
BÁN HÀNG
    ↓
KHÁCH MUA LẠI
    ↓
GOOGLE + WEBSITE

Nhưng khi bắt đầu làm thật, bạn sẽ gặp một vấn đề:

Có quá nhiều việc phải làm.

Mỗi ngày có thể phải:

  • Nghĩ ý tưởng.

  • Viết bài.

  • Viết tiêu đề.

  • Làm hình.

  • Làm video.

  • Trả lời khách.

  • Phân tích quảng cáo.

  • Theo dõi đơn.

  • Chăm sóc khách cũ.

Nếu một người tự làm tất cả, rất dễ rơi vào tình trạng:

Sáng:     Nghĩ nội dung
Trưa:     Làm video
Chiều:    Trả lời khách
Tối:      Phân tích quảng cáo
Đêm:      Chuẩn bị bài ngày mai

Và đây là lúc AI trở thành một trợ lý cực kỳ hữu ích.

Nhưng cần hiểu đúng:

AI không phải cỗ máy tự động kiếm tiền.

AI là công cụ giúp bạn:

làm nhanh hơn, thử nhiều hơn và phân tích tốt hơn.

Thứ Sáu, 11 tháng 9, 2026

🌐 PHẦN 4 — GOOGLE & WEBSITE

Ở Phần 1, chúng ta tìm khách bằng nội dung.

Ở Phần 2, chúng ta dùng tiền để mua khách bằng quảng cáo.

Ở Phần 3, chúng ta học cách kiếm nhiều tiền hơn từ khách hàng cũ.

Nhưng còn một nguồn khách cực kỳ đặc biệt:

Những người đang chủ động đi tìm thứ họ muốn mua.

Ví dụ một người mở Google và gõ:

"mua máy in gần đây"

hoặc:

"bàn phím cơ giá rẻ"

hoặc:

"cửa hàng sửa laptop quận 1"

Đây là những khách hàng có ý định mua rất rõ ràng.

Thay vì cố làm cho họ nhìn thấy quảng cáo, chúng ta có thể xây dựng hệ thống để:

Khi khách tìm → sản phẩm của chúng ta xuất hiện.

Thứ Năm, 10 tháng 9, 2026

🔥 PHẦN 3 — KIẾM NHIỀU HƠN TỪ MỘT KHÁCH

Ở Phần 1, chúng ta học cách kiếm khách mà không cần quảng cáo.

Ở Phần 2, chúng ta học cách dùng tiền để mua thêm khách.

Nhưng có một vấn đề lớn:

Tìm được một khách hàng mới thường tốn tiền và công sức.

Nếu khách mua một lần rồi biến mất, bạn phải quay lại từ đầu:

Tìm khách
   ↓
Quảng cáo
   ↓
Tư vấn
   ↓
Chốt đơn
   ↓
Tìm khách mới
   ↓
Quảng cáo
   ↓
Tư vấn
   ↓
Chốt đơn
   ↓
...

Đây là một mô hình rất mệt.

Một người bán hàng giỏi sẽ đặt câu hỏi khác:

"Khách đã mua rồi, làm sao để họ quay lại?"

Và cao hơn nữa:

"Làm sao để một khách hàng tạo ra nhiều doanh thu hơn trong suốt thời gian họ mua hàng của mình?"

Đó chính là tư duy của Customer Lifetime Value — giá trị vòng đời khách hàng.

Thứ Tư, 9 tháng 9, 2026

💰 PHẦN 2 — DÙNG TIỀN ĐỂ MUA KHÁCH

Ở Phần 1, chúng ta học cách kiếm đơn mà không cần bỏ tiền mua quảng cáo.

Đó là giai đoạn rất quan trọng.

Bạn đăng video → có người xem → có người nhắn tin → tư vấn → chốt đơn.

Nhưng có một vấn đề:

Khách hàng tự nhiên không phải lúc nào cũng đến đủ nhanh.

Một video có thể đạt 100.000 lượt xem, nhưng video tiếp theo chỉ có 500 lượt. Một ngày có 20 người hỏi, hôm sau chẳng có ai.

Khi đã có một sản phẩm bán được, chúng ta có thể chuyển sang bước tiếp theo:

Dùng tiền để đưa sản phẩm đến trước mắt nhiều khách hàng hơn.

Đó chính là quảng cáo.

Thứ Ba, 8 tháng 9, 2026

📘LARAVEL 13 — BÀI 36 — MAIL

Trong các bài trước, chúng ta đã đi qua:

  • Observer

  • Event & Listener

  • Queue

Đến Bài 36, chúng ta bắt đầu một chức năng rất quan trọng trong các ứng dụng web thực tế:

📧 Gửi Email bằng Laravel

Email có thể được sử dụng cho:

  • ✉️ Xác nhận đăng ký tài khoản

  • 🔐 Đặt lại mật khẩu

  • 📩 Thông báo khi có bài viết mới

  • 🛒 Xác nhận đơn hàng

  • 💳 Thông báo thanh toán

  • 👤 Thông báo tài khoản

  • 📢 Gửi thông báo hệ thống

  • 📎 Gửi email kèm file

  • ⚙️ Kết hợp Email + Queue để gửi email ở background

Laravel cung cấp một API gửi mail thống nhất dựa trên Symfony Mailer, hỗ trợ nhiều mail transport như SMTP, Mailgun, Postmark, Amazon SES và sendmail. (Laravel)

💰 PHẦN 1 — KIẾM ĐƠN KHÔNG CẦN QUẢNG CÁO

1. 🔎 Tìm sản phẩm có người mua

Đừng bắt đầu bằng câu:

“Tôi thích bán gì?”

Hãy bắt đầu bằng:

“Người ta đang bỏ tiền mua gì?”

Có thể tìm ngay từ:

  • TikTok Shop

  • Shopee

  • Facebook

  • Google

  • Các group mua bán

  • Cửa hàng đối thủ

Quan sát 3 thứ:

① Có người mua thật không?
② Giá bán khoảng bao nhiêu?
③ Người bán đang dùng cách gì để bán?

Bài tập

Chọn 3 sản phẩm.

Ghi:

Sản phẩm:
Giá bán:
Có nhiều người bán không?
Có nhiều người hỏi/mua không?
Tôi có thể bán khác họ ở điểm nào?

Không tìm được sản phẩm → chưa chạy quảng cáo.

Chủ Nhật, 6 tháng 9, 2026

📘 VITE TRONG LARAVEL & ỨNG DỤNG CHO PHP / CODEIGNITER 3.x

📚 Mục lục

  1. ⚡ Vite là gì?

  2. 🧩 Tại sao Laravel sử dụng Vite?

  3. 📦 Vite đứng ở đâu trong một dự án Laravel?

  4. 🗂️ Cấu trúc thư mục khi sử dụng Vite

  5. 📄 File vite.config.js

  6. 📦 File package.json

  7. 🎨 Quản lý CSS với Vite

  8. ⚙️ Quản lý JavaScript với Vite

  9. 🔗 @vite() trong Blade

  10. 🏗️ Development và Production Build

  11. 🔥 Vite Dev Server và Hot Module Replacement

  12. 📦 Vite xử lý Module JavaScript như thế nào?

  13. 🖼️ Vite xử lý hình ảnh, Font và Asset

  14. 🔐 Biến môi trường .env trong Vite

  15. 🛠️ Cấu hình Vite cho Laravel

  16. 🧱 Sử dụng Vite với PHP thuần

  17. 🚀 Sử dụng Vite với CodeIgniter 3.x

  18. 🔌 Kết nối Vite với View của CodeIgniter

  19. 📁 Xây dựng cấu trúc Frontend riêng cho CI3

  20. 🏭 Build Vite để Deploy lên Hosting

  21. ⚠️ Những lỗi thường gặp khi dùng Vite

  22. 🧠 Laravel Mix khác Vite như thế nào?

  23. 🎯 Khi nào nên dùng Vite?

  24. 🏆 Kiến trúc Frontend hiện đại cho dự án PHP

Thứ Bảy, 5 tháng 9, 2026

📘 LARAVEL 12 LTS (2026) — BÀI 35: QUEUE

🎯 Mục tiêu bài học

Trong các bài trước, chúng ta đã làm việc trực tiếp với:

  • Controller

  • Model

  • Event

  • Listener

  • Observer

  • Notification

  • Mail

Tuy nhiên, có một vấn đề:

Nếu một công việc mất nhiều thời gian, chúng ta có muốn người dùng phải chờ cho đến khi công việc hoàn thành hay không?

Ví dụ:

Người dùng tạo bài viết
        ↓
Laravel lưu bài viết
        ↓
Gửi email
        ↓
Tạo thumbnail
        ↓
Tạo thông báo
        ↓
Ghi log
        ↓
Trả Response

Nếu tất cả đều chạy ngay trong HTTP Request, người dùng có thể phải chờ rất lâu.

Laravel Queue giải quyết vấn đề này bằng cách đưa những công việc cần xử lý sau vào hàng đợi.

Mô hình:

HTTP Request
     │
     ▼
Lưu dữ liệu
     │
     ▼
Dispatch Job
     │
     ├──────────────► Response
     │
     ▼
   Queue
     │
     ▼
   Worker
     │
     ▼
Xử lý công việc

Chủ Nhật, 30 tháng 8, 2026

📘 Laravel 12 (2026) — BÀI 34 — EVENT & LISTENER TRONG LARAVEL

Ở bài trước, chúng ta đã học Observer.

Observer cho phép chúng ta phản ứng khi một Eloquent Model xảy ra sự kiện:

Post
 │
 ├── created
 ├── updated
 ├── deleted
 └── restored
        │
        ▼
   PostObserver

Ví dụ:

public function created(Post $post): void
{
    logger("Post {$post->id} đã được tạo");
}

Observer rất hữu ích.

Tuy nhiên, trong ứng dụng thực tế sẽ có những sự kiện không nhất thiết phải gắn trực tiếp với Model.

Ví dụ:

  • User đăng ký tài khoản → gửi email chào mừng.

  • Đơn hàng được đặt → gửi thông báo.

  • Bài viết được publish → ghi log.

  • Thanh toán thành công → cập nhật dữ liệu.

  • User đăng ký → tạo một số dữ liệu liên quan.

  • Post được publish → thông báo cho người quản trị.

Lúc này chúng ta có thể sử dụng:

Event & Listener

Mô hình:

Một hành động xảy ra
        │
        ▼
      Event
        │
        ▼
    Listener
        │
        ├── Gửi email
        ├── Ghi log
        ├── Gửi notification
        └── Xử lý dữ liệu

Thứ Bảy, 29 tháng 8, 2026

🧠Tư duy kiểm soát vòng lặp như dân PRO🔄

Trong thực tế, lập trình viên web chuyên nghiệp không “ngồi đếm vòng lặp bằng mắt”. 

Họ kiểm soát việc chạy dư / thiếu / lặp vô hạn bằng một số nguyên tắc rất rõ ràng.

Ví dụ PHP/Laravel:

foreach ($posts as $post) {
    // xử lý
}

MỤC LỤC

Thứ Năm, 27 tháng 8, 2026

📘 Laravel 12 (2026) — BÀI 33 — OBSERVER TRONG LARAVEL

Trong các bài trước, chúng ta đã làm việc trực tiếp với Eloquent:

$user = User::create([
    'name' => 'Nguyễn Văn A',
    'email' => 'a@gmail.com',
    'password' => bcrypt('123456'),
]);

Hoặc:

$user->update([
    'name' => 'Trần Văn B',
]);

Nhưng sẽ có trường hợp:

Mỗi khi User được tạo, cập nhật hoặc xóa thì ứng dụng phải tự động thực hiện thêm một công việc nào đó.

Ví dụ:

  • User mới được tạo → ghi Log.

  • Post mới được tạo → tự tạo slug.

  • Post bị xóa → xóa luôn ảnh liên quan.

  • User được cập nhật → ghi lại lịch sử thay đổi.

  • Post được publish → thực hiện một xử lý bổ sung.

Nếu viết tất cả những logic này trong Controller, code sẽ rất nhanh trở nên khó quản lý.

Đây là lúc Observer phát huy tác dụng.

Thứ Tư, 26 tháng 8, 2026

📘 Laravel 12 (2026) — BÀI 32 — LOCAL SCOPE & GLOBAL SCOPE TRONG ELOQUENT

Trong các bài trước, chúng ta thường viết Query trực tiếp trong Controller:

$users = User::where('is_active', true)
    ->where('role', 'user')
    ->latest()
    ->paginate(10);

Cách này hoàn toàn đúng.

Nhưng khi dự án lớn lên, những điều kiện truy vấn giống nhau sẽ xuất hiện ở rất nhiều Controller.

Ví dụ:

User::where('is_active', true)->get();
User::where('is_active', true)->latest()->get();
User::where('is_active', true)->paginate(10);

Lúc này chúng ta có thể đưa các điều kiện truy vấn thường dùng vào Scope.

Laravel 13 hỗ trợ hai loại chính:

  • Local Scope

  • Global Scope

Local Scope chỉ được sử dụng khi chúng ta chủ động gọi nó.

Global Scope tự động được áp dụng vào các query của Model. Laravel cũng sử dụng cơ chế Global Scope cho Soft Delete.

Chủ Nhật, 23 tháng 8, 2026

📘 Laravel 12 (2026) — BÀI 31 — ACCESSOR & MUTATOR TRONG ELOQUENT

Trong các bài CRUD trước, chúng ta đã làm việc trực tiếp với dữ liệu:

$user->name
$user->email
$user->role

Nhưng trong dự án thực tế, đôi khi chúng ta muốn biến đổi dữ liệu trước khi hiển thị hoặc xử lý dữ liệu trước khi lưu vào database.

Ví dụ:

  • Database lưu nguyen van a

  • Website muốn hiển thị Nguyen Van A

Hoặc:

  • Người dùng nhập NGUYEN VAN A

  • Database chỉ lưu nguyen van a

Đây chính là lúc Accessor và Mutator phát huy tác dụng.

Laravel 13 sử dụng cách khai báo hiện đại thông qua Illuminate\Database\Eloquent\Casts\Attribute.

📊 KHÓA HỌC CHỨNG CHỈ MOS — MICROSOFT EXCEL



PHẦN 1 — LÀM QUEN VỚI MICROSOFT EXCEL

  1. Tổng quan về Microsoft Excel và chứng chỉ MOS

  2. Làm quen với giao diện Excel

  3. Workbook, Worksheet, Row, Column và Cell

  4. Nhập và chỉnh sửa dữ liệu

  5. Lưu, mở và quản lý Workbook

  6. Các kiểu dữ liệu trong Excel

  7. Định dạng ô và dữ liệu cơ bản

  8. Sao chép, di chuyển và xóa dữ liệu

  9. AutoFill và Flash Fill

  10. Quản lý Worksheet

📘 KHÓA HỌC CHỨNG CHỈ MOS — MICROSOFT WORD




PHẦN 1 — LÀM QUEN VỚI MICROSOFT WORD

  1. Giới thiệu chứng chỉ MOS Word

  2. Microsoft Word là gì?

  3. Giao diện Microsoft Word

  4. Tạo, mở và lưu tài liệu

  5. Các thao tác cơ bản với văn bản

  6. Nhập và chỉnh sửa văn bản

  7. Chọn, sao chép, cắt và dán nội dung

  8. Undo, Redo và các thao tác nhanh

  9. Phím tắt quan trọng trong Word

  10. Tùy chỉnh giao diện và thanh công cụ

📘 PHẦN 17 — TỔNG ÔN MOS WORD

Phần 17 là phần tổng ôn cuối khóa, gồm đúng 10 nội dung từ bài 161 đến bài 170.


161. Tổng ôn nhóm kỹ năng Formatting

Nhóm Formatting tập trung vào các kỹ năng định dạng văn bản trong Microsoft Word.

Font chữ

Có thể thay đổi:

  • Font chữ.

  • Font Size.

  • Font Color.

  • Text Highlight Color.

Kiểu chữ

Các kiểu định dạng cơ bản:

  • Bold

  • Italic

  • Underline

Chỉ số

Sử dụng:

  • Superscript.

  • Subscript.

Ví dụ:

X²
H₂O

Change Case

Có thể thay đổi kiểu chữ bằng:

Home → Change Case

Các lựa chọn thường gặp:

  • Sentence case.

  • lowercase.

  • UPPERCASE.

  • Capitalize Each Word.

  • tOGGLE cASE.

Text Effects

Có thể áp dụng hiệu ứng cho văn bản thông qua:

Home → Text Effects and Typography

Format Painter

Dùng để sao chép định dạng từ một nội dung sang nội dung khác.

Nội dung A
   ↓
Format Painter
   ↓
Nội dung B

Clear Formatting

Dùng:

Home → Clear All Formatting

để loại bỏ các định dạng trực tiếp khỏi nội dung được chọn.

Find và Replace

Sử dụng:

Home → Find

hoặc:

Ctrl + F

Để tìm và thay thế:

Ctrl + H

Nội dung cần nhớ

Khi làm bài MOS, cần phân biệt:

Font Formatting
        ↓
Font / Size / Bold / Italic / Underline
        ↓
Color / Highlight / Effects

📘 PHẦN 16 — ĐỀ THI MOS WORD MÔ PHỎNG

151. Đề thi MOS Word Mock Test 01

Yêu cầu

Mở một tài liệu Word mới và thực hiện các yêu cầu sau.

Task 1 — Định dạng văn bản

Nhập nội dung:

MICROSOFT WORD

Microsoft Word là phần mềm xử lý văn bản được sử dụng
rộng rãi trong học tập và công việc văn phòng.

Word cung cấp nhiều công cụ giúp người dùng tạo,
chỉnh sửa và trình bày tài liệu chuyên nghiệp.

Thực hiện:

  1. Định dạng tiêu đề MICROSOFT WORD bằng Bold.

  2. Đặt cỡ chữ tiêu đề là 18 pt.

  3. Căn giữa tiêu đề.

  4. Định dạng phần nội dung với cỡ chữ 12 pt.

  5. Căn đều hai bên phần nội dung.

Task 2 — Paragraph

Thiết lập:

  • Line Spacing: 1.5.

  • Paragraph Spacing After: 6 pt.

  • Thụt đầu dòng dòng đầu tiên của các đoạn văn.

Task 3 — Page Layout

Thiết lập:

  • Paper Size: A4.

  • Orientation: Portrait.

  • Margins: Normal.

Task 4 — Header và Footer

Tạo Header:

KHÓA HỌC MICROSOFT WORD

Chèn Page Number ở Footer.

Task 5 — Table

Tạo bảng:

STTHọ và tênLớpĐiểm
1Nguyễn Văn AWord 0185
2Trần Văn BWord 0190
3Lê Văn CWord 0278
4Phạm Văn DWord 0292

Thực hiện:

  • Định dạng dòng tiêu đề bằng Bold.

  • Căn giữa dữ liệu số.

  • Áp dụng Table Style.

  • Thêm Borders.

Task 6 — Kiểm tra

Sử dụng Print Preview để kiểm tra tài liệu.

📘 PHẦN 15 — LUYỆN THI MOS WORD

Phần này tập trung vào kỹ năng làm bài thi Microsoft Office Specialist — Word, cách xử lý Task, quản lý thời gian và các kỹ thuật giúp hoàn thành bài thi hiệu quả.

Phần 15 gồm đúng 10 nội dung từ bài 142 đến bài 150 theo mục lục ban đầu.


142. Cấu trúc bài thi MOS Word

Bài thi MOS Word đánh giá khả năng sử dụng Microsoft Word thông qua các nhiệm vụ thực hành trực tiếp trên phần mềm.

Thay vì chỉ trả lời câu hỏi lý thuyết, thí sinh phải thực hiện các yêu cầu được đưa ra trong bài thi.

Các nhóm kỹ năng có thể liên quan đến:

  • Quản lý tài liệu.

  • Định dạng văn bản.

  • Định dạng đoạn văn.

  • Page Layout.

  • Tables.

  • Pictures và Objects.

  • References.

  • Mail Merge.

  • Review.

  • Các tính năng khác của Word.

Dạng bài thực hành

Một yêu cầu có thể có dạng:

Mở tài liệu được cung cấp.

Thực hiện các yêu cầu:
1. Định dạng tiêu đề.
2. Thay đổi lề trang.
3. Chèn bảng.
4. Áp dụng Style.
5. Lưu tài liệu.

Thí sinh cần đọc yêu cầu và thực hiện trực tiếp trong Word.

Quy trình tổng quát

Đọc yêu cầu
     ↓
Xác định đối tượng cần thao tác
     ↓
Thực hiện Task
     ↓
Kiểm tra kết quả
     ↓
Chuyển sang Task tiếp theo

Mục tiêu của bài thi không chỉ là biết tính năng mà còn phải thực hiện chính xác yêu cầu.

📘 PHẦN 14 — KỸ NĂNG THỰC HÀNH MOS WORD

131. Bài thực hành định dạng văn bản

Trong bài thực hành này, học viên luyện tập các kỹ năng định dạng văn bản đã học.

Yêu cầu thực hành

Cho đoạn văn bản:

MICROSOFT WORD

Microsoft Word là phần mềm xử lý văn bản được sử dụng
rộng rãi trong học tập, công việc và văn phòng.

Người dùng có thể tạo tài liệu, chỉnh sửa nội dung,
định dạng văn bản và trình bày tài liệu chuyên nghiệp.

Thực hiện các yêu cầu:

  1. Chọn tiêu đề MICROSOFT WORD.

  2. Định dạng tiêu đề bằng Bold.

  3. Thay đổi Font chữ.

  4. Thay đổi cỡ chữ.

  5. Căn giữa tiêu đề.

  6. Định dạng nội dung văn bản phù hợp.

  7. Thay đổi màu chữ cho tiêu đề.

  8. Highlight một phần nội dung.

  9. Sử dụng Format Painter để sao chép định dạng.

  10. Xóa định dạng bằng Clear Formatting khi cần.

Mục tiêu

Học viên thực hành thành thạo các thao tác định dạng văn bản cơ bản và có thể áp dụng chúng nhanh chóng trong tài liệu.

📘 PHẦN 13 — IN ẤN VÀ XUẤT TÀI LIỆU

121. Print Preview

Print Preview cho phép xem trước tài liệu trước khi in.

Để mở Print Preview, vào:

File → Print

Word sẽ hiển thị khu vực xem trước tài liệu.

Có thể kiểm tra:

  • Nội dung từng trang.

  • Số trang.

  • Bố cục trang.

  • Lề trang.

  • Header và Footer.

  • Page Number.

  • Vị trí hình ảnh.

  • Bảng.

  • Các đối tượng trên trang.

Ví dụ:

┌─────────────────────────────┐
│                             │
│       TÀI LIỆU WORD         │
│                             │
│   Nội dung tài liệu...      │
│                             │
│                             │
│              Trang 1        │
└─────────────────────────────┘

Chuyển trang trong Print Preview

Có thể sử dụng các nút điều hướng để xem:

  • Trang trước.

  • Trang tiếp theo.

Hoặc nhập số trang cần xem.

Kiểm tra trước khi in

Print Preview giúp phát hiện những lỗi như:

  • Nội dung bị tràn sang trang khác.

  • Bảng bị chia không mong muốn.

  • Hình ảnh nằm sai vị trí.

  • Header hoặc Footer không đúng.

  • Page Number không đúng.

  • Trang trắng xuất hiện.

Sau khi kiểm tra xong, có thể tiến hành thiết lập máy in và in tài liệu.

📘 PHẦN 12 — TỰ ĐỘNG HÓA VÀ CÔNG CỤ NÂNG CAO

Trong Microsoft Word, các công cụ tự động hóa và công cụ nâng cao giúp người dùng tiết kiệm thời gian, chuẩn hóa tài liệu và quản lý các thông tin liên quan đến Document.


111. AutoCorrect

AutoCorrect là tính năng tự động sửa một số lỗi khi nhập văn bản trong Word.

Ví dụ, khi người dùng nhập một lỗi chính tả phổ biến, Word có thể tự động thay thế bằng từ đúng.

Để thiết lập AutoCorrect, vào:

File → Options → Proofing → AutoCorrect Options

Hộp thoại AutoCorrect xuất hiện.

Các tùy chọn AutoCorrect

Có thể thiết lập các tùy chọn như:

  • Correct TWo INitial CApitals.

  • Capitalize first letter of sentences.

  • Capitalize first letter of table cells.

  • Capitalize names of days.

  • Correct accidental usage of cAPS LOCK key.

Thêm mục AutoCorrect

Trong hộp thoại AutoCorrect, có thể thêm cặp:

Replace:    vl
With:       Microsoft Word

Sau đó khi nhập:

vl

Word có thể tự động thay thế thành:

Microsoft Word

Xóa mục AutoCorrect

Chọn mục cần xóa rồi chọn:

Delete

AutoCorrect đặc biệt hữu ích khi thường xuyên nhập các cụm từ dài hoặc những từ dễ gõ sai.

📘 PHẦN 11 — REVIEW VÀ CỘNG TÁC

Microsoft Word cung cấp nhóm công cụ Review để kiểm tra nội dung, phát hiện lỗi, đếm từ, tra cứu từ đồng nghĩa, dịch văn bản, thêm Comments, theo dõi thay đổi và so sánh tài liệu.


101. Spelling & Grammar

Spelling & Grammar dùng để kiểm tra lỗi chính tả và ngữ pháp trong tài liệu.

Trong Word, có thể kiểm tra lỗi bằng:

Review → Spelling & Grammar

Tùy phiên bản Word, công cụ này có thể hiển thị dưới tên:

Editor

Word sẽ kiểm tra nội dung và đưa ra các đề xuất sửa lỗi.

Kiểm tra chính tả

Khi phát hiện từ có khả năng sai chính tả, Word có thể đánh dấu từ đó bằng đường gạch chân.

Ví dụ:

Microsoft Wrod
          ~~~~

Word có thể đề xuất:

Word

Kiểm tra ngữ pháp

Word cũng có thể phát hiện một số vấn đề về ngữ pháp và cách diễn đạt.

Có thể xem đề xuất bằng cách:

  • Click phải vào nội dung được đánh dấu.

  • Chọn đề xuất phù hợp.

Các lựa chọn thường gặp

Tùy trường hợp, Word có thể cung cấp:

  • Change.

  • Ignore Once.

  • Ignore All.

  • Add to Dictionary.

Lưu ý

Công cụ kiểm tra phụ thuộc vào ngôn ngữ kiểm tra được thiết lập cho tài liệu.

📘 PHẦN 10 — MAIL MERGE

Microsoft Word cung cấp tính năng Mail Merge để tạo nhiều tài liệu có cùng nội dung nhưng khác nhau về thông tin người nhận. 

Mail Merge thường được sử dụng để tạo thư hàng loạt, phong bì, nhãn và các tài liệu cá nhân hóa từ một danh sách dữ liệu.


91. Mail Merge là gì?

Mail Merge là tính năng cho phép kết hợp:

  • Một tài liệu chính.

  • Một danh sách dữ liệu.

  • Các trường thông tin.

để tạo ra nhiều tài liệu có nội dung tương tự nhưng thông tin khác nhau.

Ví dụ có danh sách:

Họ tên          Địa chỉ
Nguyễn Văn A    10 Nguyễn Trãi
Trần Văn B      20 Lê Lợi
Lê Văn C        30 Hai Bà Trưng

Có một mẫu thư:

Kính gửi: [Họ tên]

Địa chỉ: [Địa chỉ]

Nhà trường trân trọng thông báo...

Sau khi thực hiện Mail Merge, Word có thể tạo:

Kính gửi: Nguyễn Văn A

Địa chỉ: 10 Nguyễn Trãi

Nhà trường trân trọng thông báo...

và:

Kính gửi: Trần Văn B

Địa chỉ: 20 Lê Lợi

Nhà trường trân trọng thông báo...

Như vậy, chỉ cần tạo một mẫu nhưng có thể tạo ra nhiều tài liệu khác nhau.

📘 PHẦN 9 — REFERENCES

Trong Microsoft Word, nhóm công cụ References được sử dụng để tạo và quản lý các nội dung tham khảo trong tài liệu như chú thích, trích dẫn nguồn, thư mục tài liệu tham khảo, chú thích hình ảnh, liên kết đến các phần khác của tài liệu và các bảng tham chiếu.


83. Footnote và Endnote

Footnote và Endnote được sử dụng để thêm chú thích hoặc thông tin tham khảo cho nội dung trong tài liệu.

Footnote

Footnote là chú thích được đặt ở cuối trang.

Ví dụ:

Microsoft Word là phần mềm xử lý văn bản.¹

──────────────────────────────

¹ Microsoft Word thuộc bộ Microsoft Office.

Chèn Footnote

Đặt con trỏ tại vị trí cần thêm chú thích.

Vào:

References → Insert Footnote

Word sẽ:

  1. Chèn số chú thích vào nội dung.

  2. Đưa con trỏ xuống cuối trang.

  3. Tạo vị trí để nhập nội dung Footnote.

Ví dụ:

Microsoft Word là phần mềm xử lý văn bản.¹

Ở cuối trang:

¹ Microsoft Word là một ứng dụng xử lý văn bản.

📘 PHẦN 8 — CHARTS VÀ DỮ LIỆU

Trong Microsoft Word, Chart giúp trình bày dữ liệu dưới dạng biểu đồ trực quan. 

Người dùng có thể tạo biểu đồ, lựa chọn loại biểu đồ, chỉnh sửa dữ liệu, thêm các thành phần cần thiết và định dạng biểu đồ phù hợp với nội dung tài liệu.


76. Chèn biểu đồ

Microsoft Word cho phép chèn biểu đồ trực tiếp vào tài liệu.

Để chèn Chart, vào:

Insert → Chart

Word sẽ hiển thị hộp thoại Insert Chart.

Tại đây có thể lựa chọn loại biểu đồ phù hợp.

Ví dụ:

        DOANH THU

  100 ┤                    █
   80 ┤          █         █
   60 ┤    █     █         █
   40 ┤    █     █    █    █
   20 ┤    █     █    █    █
    0 └────────────────────────
         Q1    Q2   Q3   Q4

Sau khi chọn loại Chart và nhấn OK, Word sẽ chèn biểu đồ vào tài liệu.

Đồng thời, Word mở một bảng dữ liệu để nhập hoặc chỉnh sửa dữ liệu cho biểu đồ.

Các bước cơ bản

Bước 1: Chọn:

Insert → Chart

Bước 2: Chọn loại Chart.

Bước 3: Chọn kiểu biểu đồ.

Bước 4: Nhấn OK.

Bước 5: Nhập dữ liệu trong bảng dữ liệu xuất hiện.

Sau khi chèn Chart, Word cung cấp các tab liên quan đến biểu đồ như:

  • Chart Design.

  • Format.

Tùy phiên bản Word, giao diện và tên một số công cụ có thể khác nhau.

📘 PHẦN 7 — HÌNH ẢNH VÀ ĐỐI TƯỢNG

Trong Microsoft Word, hình ảnh và các đối tượng đồ họa giúp tài liệu trở nên trực quan, chuyên nghiệp và dễ trình bày hơn. 

Word cung cấp nhiều công cụ để chèn, chỉnh sửa, căn chỉnh và sắp xếp hình ảnh, Shapes, Icons, SmartArt, Text Box và WordArt.


63. Chèn hình ảnh

Microsoft Word cho phép chèn hình ảnh từ máy tính hoặc các nguồn hình ảnh khác.

Để chèn hình ảnh, vào:

Insert → Pictures

Word cung cấp các lựa chọn tùy phiên bản, chẳng hạn:

  • This Device.

  • Stock Images.

  • Online Pictures.

Chèn hình ảnh từ máy tính

Chọn:

Insert → Pictures → This Device

Sau đó chọn hình ảnh cần chèn và nhấn Insert.

Ví dụ:

┌──────────────────────────────────────┐
│                                      │
│          HÌNH ẢNH ĐƯỢC CHÈN         │
│                                      │
└──────────────────────────────────────┘

Sau khi chèn, chọn hình ảnh để xuất hiện tab:

Picture Format

Tại đây có các công cụ để chỉnh sửa và định dạng hình ảnh.

Chèn nhiều hình ảnh

Có thể chọn nhiều file hình ảnh cùng lúc để chèn vào tài liệu.

Lưu ý khi chèn hình ảnh

Hình ảnh có thể ảnh hưởng đến bố cục văn bản. Vì vậy, sau khi chèn ảnh cần kiểm tra:

  • Kích thước.

  • Vị trí.

  • Wrap Text.

  • Căn chỉnh.

  • Khoảng cách với văn bản.

📘 PHẦN 6 — BẢNG VÀ DỮ LIỆU

Trong Microsoft Word, Table (bảng) là công cụ quan trọng để trình bày dữ liệu theo hàng và cột. 

Tables thường được sử dụng để tạo danh sách, bảng thống kê, bảng biểu, thời khóa biểu, báo cáo, biểu mẫu và nhiều loại tài liệu chuyên nghiệp khác.

Trong phần này, chúng ta sẽ học cách tạo, nhập dữ liệu, định dạng, chỉnh sửa và quản lý Table trong Word theo đúng các kỹ năng cần thiết cho Microsoft Office Specialist — Word.


51. Tạo Table

Table được tạo từ các Rows (dòng) và Columns (cột). Giao điểm giữa một dòng và một cột được gọi là Cell (ô).

Cách tạo Table

Vào:

Insert → Table

Word sẽ hiển thị một lưới để lựa chọn số dòng và số cột.

Ví dụ tạo bảng gồm 4 cột × 5 dòng:

┌──────────┬──────────┬──────────┬──────────┐
│ Họ tên   │ Lớp      │ Điểm     │ Xếp loại │
├──────────┼──────────┼──────────┼──────────┤
│ Nguyễn A │ Word     │ 90       │ Giỏi     │
├──────────┼──────────┼──────────┼──────────┤
│ Trần B   │ Word     │ 85       │ Khá      │
├──────────┼──────────┼──────────┼──────────┤
│ Lê C     │ Word     │ 78       │ Khá      │
├──────────┼──────────┼──────────┼──────────┤
│ Phạm D   │ Word     │ 95       │ Giỏi     │
└──────────┴──────────┴──────────┴──────────┘

Các thành phần của Table

  • Row: dòng.

  • Column: cột.

  • Cell: ô.

  • Table: toàn bộ bảng.

Ngoài cách chọn trực tiếp trên lưới, có thể sử dụng:

Insert → Table → Insert Table

Sau đó nhập:

  • Number of columns.

  • Number of rows.

Tạo Table bằng Draw Table

Word cũng cho phép vẽ bảng thủ công:

Insert → Table → Draw Table

Cách này phù hợp khi cần tạo bảng có cấu trúc đặc biệt.

Facebook Youtube RSS