LỜI CẢM ƠN
Em xin bày tỏ lời cảm ơn chân thành nhất đến các thầy cô giáo đã giảng dạy
em trong suốt năm năm qua, những kiến thức mà em nhận được trên giảng đường
đại học sẽ là hành trang giúp em vững bước trong tương lai.
Em muốn gửi lời cảm ơn sâu sắc nhất đến giáo viên Th.S Hồ Thị Tuyến
người đã tận tình hướng dẫn em trong suốt quá trình thực hiện đồ án tốt nghiệp.
Cuối cùng, em muốn gửi lời cảm ơn đến tất cả gia đình, bạn bè những
người luôn động viên và giúp đỡ em vượt qua khó khăn để hoàn thành đồ án tốt
nghiệp này.
Em xin chân thành cảm ơn !
Thái Nguyên, ngày 01 tháng 06 năm 2016
Sinh viên
Trần Thị Quy
1
LỜI CAM ĐOAN
Em xin cam đoan: Toàn bộ nội dung đồ án tốt nghiệp “Xây dựng website
cho doanh nghiệp đồ gỗ mỹ nghệ Dũng Thành –Bắc Giang” . Do em tự học tập,
tìm hiểu từ quá trình học tập tại trường, nghiên cứu trên Internet, sách báo, và các
tài liệu có liên quan.
Em xin chịu hoàn toàn trách nhiệm về lời cam đoan của mình trước Quý
thầy cô và nhà trường.
Thái Nguyên, ngày 01 tháng 06 năm 2016
NGƯỜI CAM ĐOAN
Trần Thị Quy
MỤC LỤC
LỜI CẢM ƠN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
LỜI CAM ĐOAN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
MỤC LỤC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2
DANH MỤC HÌNH ẢNH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
DANH MỤC CÁC BẢNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
LỜI NÓI ĐẦU. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
CHƯƠNG 1.TỔNG QUAN VỀ CƠ SỞ LÝ THUYẾT . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1. Tổng quan về wordpress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1.1. Nét nổi bật của Wordpress . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1.2. Các lý do khiến chúng ta phải chọn WordPress. . . . . . . . . . . . . . . . . . . . . 12
1.2. Công nghệ Responsive Web Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2.1. Khái niệm về Responsive Web Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2.2. Giải pháp nào giúp điều chỉnh độ phân giải màn hình . . . . . . . . . . . . . . 14
1.2.3. Người ta bố cục trang web như thế nào? . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.2.4. Lợi ích của Responsive Web Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.3. Ngôn ngữ mô hình hóa thống nhất UML(Unified Modeling Language) . 18
1.3.1. Phân tích và thiết kế hướng đối tượng (Object Oriented Analysis and
Design: OOAD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.3.2. UML là gì? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.3.3. Tại sao lại là OOAD và UML?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
1.3.4.View (góc nhìn) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.3.5.Diagram (Bản vẽ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.3.6. Notations (các ký hiệu) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.4. Hệ quản trị cơ sở dữ liệu MySQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
CHƯƠNG 2: KHẢO SÁT, PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG . . . . . . . . 25
2.1. Khảo sát hệ thống . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.1.1. Khảo sát hiện trạng và xác lập dự án . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.1.2. Tính cấp thiết cần xây dựng website cho doanh nghiệp . . . . . . . . . . . . . 26
2.1.3. Đề xuất hệ thống mới . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2. Phân tích và Thiết kế hệ thống . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.2.1. Phân tích yêu cầu của hệ thống. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3
2.2.2. Phân tích hệ thống . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
CHƯƠNG 3. ỨNG DỤNG CÔNG NGHỆ RESPONSIVE WEB DESIGN . . . . 51
VÀ THIẾT KẾ WEBSITE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.1. Giao diện website xây dựng trên PC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.1.1. Giao diện trang chủ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
3.1.2. Giao diện danh mục sản phẩm.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.1.3. Giao diện trang giới thiệu. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.1.4. Giao diện trang liên hệ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
3.1.5. Giao diện trang tin tức. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.1.6. Giao diện giỏ hàng. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.1.7. Giao diện trang đặt hàng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.1.8. Giao diện trang cá nhân. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.2. Giao diện website ứng dụng công nghệ Responsive Web Design. . . . . . . . 58
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
1. Kết quả đạt được . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
2. Hạn chế. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
3. Hướng phát triển, và ứng dụng website vào thực tế . . . . . . . . . . . . . . . . . . . . . . . 61
TÀI LIỆU THAM KHẢO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
PHỤ LỤC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
4
DANH MỤC HÌNH ẢNH
Hình 1.1. Responsive Web Design là gì? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Hình 1.2.Giải pháp là linh hoạt tất cả mọi thứ trên web . . . . . . . . . . . . . . . . . . . . . . . . 14
Hình 1.3. Responsive navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Hình 1.4. Ngôn ngữ mô hình hóa thống nhất . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Hình 1.5. Các bản vẽ trong OOAD sử dụng UML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Hình 1.6. Ký hiệu về Use Case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Hình 1.7. Ký hiệu về Class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Hình 1.8. Ký hiệu về Actor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Hình 2.1. Biểu đồ Use Case tổng quát . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Hình 2.2. Phân rã UC Quản lý sản phẩm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Hình 2.3. Phân rã UC Quản lý đơn hàng. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Hình 2.4. Phân rã UC Đặt hàng. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Hình 2.5. Phân rã UC Thống kê . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Hình 2.6. Biểu đồ trình tự chức năng xem thông tin sản phẩm . . . . . . . . . . . . . . . . . 40
Hình 2.7. Biểu đồ trình tự cho tác vụ tìm kiếm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Hình 2.8. Biểu đồ trình tự chức năng cập nhật giỏ hàng. . . . . . . . . . . . . . . . . . . . . . . . 41
Hình 2.9. Biểu đồ trình tự chức năng thanh toán . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
Hình 2.10. Biểu đồ trình tự cho tác vụ Quản trị thêm sản phẩm . . . . . . . . . . . . . . . . 42
Hình 2.11. Biểu đồ trình tự cho tác vụ Quản trị sửa sản phẩm. . . . . . . . . . . . . . . . . . 42
Hình 2.12. Biểu đồ trình tự cho tác vụ Quản trị xóa sản phẩm. . . . . . . . . . . . . . . . . . 43
Hình 2.13. Biểu đồ trình tự cho tác vụ Quản trị xóa đơn hàng. . . . . . . . . . . . . . . . . . 43
Hình 2.14. Biểu đồ trình tự chức năng tìm kiếm của quản trị. . . . . . . . . . . . . . . . . . . 44
Hình 2.15. Biểu đồ trình tự chức năng thống kê khách hàng . . . . . . . . . . . . . . . . . . . 44
Hình 2.16. Biểu đồ trình tự chức năng thống kê sản phẩm trong kho . . . . . . . . . . . 45
5
Hình 2.17. Biểu đồ trình tự chức năng thống kê đơn hàng . . . . . . . . . . . . . . . . . . . . . 45
Hình 2.18. Biểu đồ lớp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Hình 2.19. Biểu đồ hoạt động cho chức năng Thêm sản phẩm . . . . . . . . . . . . . . . . . 47
Hình 2.20. Biểu đồ hoạt động cho chức năng Đặt hàng . . . . . . . . . . . . . . . . . . . . . . . . 48
Hình 2.21. Biểu đồ thành phần. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Hình 2.22. Biểu đồ triển khai. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Hình 3.1. Giao diện chính của website. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Hình 3.2. Giao diện trang danh mục sản phẩm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Hình 3.3. Giao diện trang giới thiệu.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Hình 3.4. Giao diện trang liên hệ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Hình 3.5. Giao diện trang tin tức.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Hình 3.6. Giao diện giỏ hàng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Hình 3.7.Giao diện trang đặt hàng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Hình 3.8.Giao diện trang cá nhân. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Hình 3.9. Giao diện Mobile Iphone 5 (Size :320*568) . . . . . . . . . . . . . . . . . . . . . . . . . 58
Hình 3.10. Giao diện Small Tablet (Size 600*800) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
Hình 3.11.Giao diện Tablet (Size :768*1024). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Hình 3.12. Giao diện Widescreen(Size: 1280*800) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Hình 3.13. Giao diện báo lỗi thông tin liên hệ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
Hình 3.14. Giao diện đặt hàng thành công . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
6
7
DANH MỤC CÁC BẢNG
Bảng 2.1. Các tác nhân và Use case của hệ thống . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
Bảng 2.2. Mô tả Use Case Thêm sản phẩm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Bảng 2.3. Mô tả Use Case Sửa Sản Phẩm. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
Bảng 2.4. Mô tả Use Case Xóa Sản Phẩm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Bảng 2.5.Mô tả Use Case Tìm kiếm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Bảng 2.6. Mô tả Use Case Xem thông tin sản phẩm . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Bảng 2.7. Mô tả Use Case Đăng nhập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
Bảng 2.8. Mô tả Use Case Đăng ký. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Bảng 2.9. Mô tả Use Case Cập nhật giỏ hàng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Bảng 2.10. Mô tả Use Case Thanh toán. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Bảng 2.11. Mô tả Use Case Xóa đơn hàng. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
Bảng 2.12. Mô tả Use Case Cập nhật trạng thái đơn hàng. . . . . . . . . . . . . . . . . . . . . . 37
Bảng 2.13. Mô tả Use Case Thống kê khách hàng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Bảng 2.14. Mô tả Use Case Thống kê sản phẩm trong kho . . . . . . . . . . . . . . . . . . . . 38
Bảng 2.15. Mô tả Use Case Thống kê đơn hàng. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
8
9
LỜI NÓI ĐẦU
Trong những năm gần đây với sự phát triển vượt trội của khoa học kỹ thuật
đặt biệt là công nghệ thông tin, với những ứng dụng của công nghệ thông tin vào
các lĩnh vực đã đóng góp phần to lớn cho sự nghiệp phát triển của con người.
Trong các lĩnh vực đó thì lĩnh vực quảng bá sản phẩm là thật sự giúp ích được rất
nhiều cho doanh nghiệp, việc áp dụng quảng bá sản phẩm qua môi trường mạng ở
các doanh nghiệp, công ty, cá nhân… là rất cần thiết và thật sự cần thiết.
Sự phát triển của công nghệ thông tin đặc biệt là sự phát triển mạnh mẽ trong
việc truy cập Internet hay các Website và các dịch vụ trên mạng như: thương mại
điện tử, đào tạo từ xa, các dịch vụ giải trí, du lịch, các thông tin văn hóa xã hội…
Các sản phẩm của ngành công nghệ thông tin là: phần cứng, phần mềm, trí tuệ nhân
tạo được ứng dụng hầu hết trong các lĩnh vực khác nhau của xã hội, chính vì sự phát
triển ưu thế của lĩnh vực này mà nhiều cơ quan, xí nghiệp, công ty, trường học có
nhu cầu tin học hóa trong công việc của mình.
Công nghệ thông tin đang đưa mọi người vào một kỷ nguyên mới – kỹ
nguyễn công nghệ thông tin mở rộng và tin cậy. Công nghệ thông tin đã thâm nhập
vào tất cả các lĩnh vực của cuộc sống. Công nghệ thông tin cho phép truy cập và khai
thác các cơ sở dữ liệu thuộc nhiều lĩnh vực kinh tế xã hội, các ngành nghề khác nhau
như các thông tin về khoa học kỹ thuật, giáo dục và đào tạo, y tế, thương mại điện tử,
thị trường giá cả, dự báo thời tiết… và rất nhiều các dịch vụ thương mại điện tử như
một công cụ đắc lực không thể thiếu.
Vì vậy có thể khẳng định lại rằng việc ứng dụng công nghệ thông tin vào thực
tiễn công việc của tất cả mọi người và các hoạt động xã hội nói chung là hoàn toàn
phù hợp và cần thiết hơn bao giờ hết. Do đó, qua học tập và nghiên cứu một số tài
liệu có liên quan, em đã chọn đề tài “Xây dựng website cho doanh nghiệp đồ gỗ
mỹ nghệ Dũng Thành –Bắc Giang” nhằm mục đích nâng cao kỹ năng lập trình,
trao đổi kinh nghiệm.
10
11
*Mục đích tìm hiểu và nghiên cứu đề tài
Tìm hiểu thực tế công việc quảng bá sản phẩm của doanh nghiệp, thiết kế
website bằng Wordpress,ứng dụng công nghệ Responsive Design bước đầu xây
dựng và chạy thử chương trình,kết hợp giải pháp quản trị nội dung để nâng cao hiệu
quả của website. Từ đó rút ra được kết quả và những điều chưa đạt được.
*Đối tượng nghiên cứu đề tài
Chương trình : Áp dụng mã nguồn mở Wordpress để xây dựng website giới
thiệu sản phẩm cho cửa hàng đồ gỗ mỹ nghệ Dũng Thành.
*Nhiệm vụ
- Tìm hiểu và nắm được các kiến thức về ngôn ngữ PHP, Mysql, Wordpress.
- Khảo sát và phân tích thiết kế hệ thống, đưa ra sơ đồ chức năng của website.
- Hoàn thiện hệ thống báo cáo, đánh giá kết quả đạt được và các mặt hạn chế
của chương trình, đồng thời đưa ra giải pháp cũng như hướng mở rộng của chương
trình.
*Phương pháp nghiên cứu
- Khảo sát thực trạng tại doanh nghiệp đồ gỗ mỹ nghệ Dũng Thành.
- Thu thập các yêu cầu từ phía người dùng.
- Phân tích thiết kế hệ thống theo yêu cầu của người dùng.
- Nghiên cứu các công cụ xây dựng hệ thống.
- Xây dựng, cài đặt và kiểm thử chương trình
* Giới hạn và phạm vi nghiên cứu
Áp dụng thực hiện xây dựng website giới thiệu sản phẩm và bán hàng cho
doanh nghiệp đồ gỗ mỹ nghệ Dũng Thành.
Nội dung của đề tài gồm các chương:
Chương 1. Tổng quan cơ sở lý thuyết
Tổng quan về wordpress
12
Công nghệ Responsive Web Design
Ngôn ngữ mô hình hóa thống nhất UML
Hệ quản trị cơ sở dữ liệu
Chương 2. Khảo sát, phân tích và thiết kế hệ thống
Khảo sát hệ thống
Phân tích và thiết kế hệ thống
Chương 3. Ứng dụng công nghệ Responsive Web Design và thiết kế website
Giao diện website xây dựng trên PC
Giao diện website ứng dụng công nghê Responsive Web Design
13
CHƯƠNG 1.TỔNG QUAN VỀ CƠ SỞ LÝ THUYẾT
1.1. Tổng quan về wordpress
WordPress là một hệ thống xuất bản blog viết bằng ngôn ngữ lập trình PHP
và sử dụng MySQL database (cơ sở dữ liệu MySQL). Wordpress là hậu duệ chính
thức của b2/cafelog, được phát triển bởi Michel Valdrighi. Cái tên WordPress
được đề xuất bởi Christine Selleck, một người bạn của nhà phát triển chính Matt
Mullenweg.
WordPress là phần mềm mã nguồn mở được cung cấp miễn phí, sử dụng
ngôn ngữ lập trình PHP và hệ cơ sở dữ liệu MySQL. Thành viên có thể sử dụng nó
với tên miền riêng của mình mà không phụ thuộc vào một nhà cung cấp nào ví dụ:
blog yahoo, blog google, blog opera …
Tuy nhiên wordpress vẫn cho phép thành viên tạo blog với nhà cung cấp
là http://wordpress.com/ đây là nơi đáng tin cho bạn tạo blog miễn phí tuy nhiên dù
hỗ trợ nhiều dịch vụ tốt nhưng vẫn có những hạn chế nhất định của nó ví dụ: tên
miền hiển nhiên là không được như ý rồi, và đôi khi chịu một số quảng cáo ngoài ý
muốn từ nhà cung cấp dịch vụ hay một số bất cập khác.
Một hướng đi mới cho việc viết blog, blog là một quyển sổ nhật ký online
của mỗi chúng ta, ngôi nhà trên mạng chúng ta có thể chia sẻ kiến thức,… Do vậy
chúng ta không muốn phụ thuộc vào bất kỳ ai hay một dịch vụ nào, tên miền của
riêng chúng ta, thỏa sức viết bài mà không ai quản lý, đặt quảng cáo… một cách tự
do nhất. Mã nguồn WordPress sẽ giúp bạn thực hiện điều đó.
Có nhiều mã nguồn giúp thành viên tạo blog cá nhân: Joomla, Drupal, Boblog… nhưng theo tôi thì WordPress là tốt nhất, sự đơn giản, quản lý dễ dàng và
14
tùy biến của thành viên với mã nguồn cao nhất.
Phiên bản mới nhất của WordPress là phiên bản 3.8. Nó được phát hành
dưới Giấy phép Tài liệu Tự do GNU.
1.1.1. Nét nổi bật của Wordpress
- Việc quản lý blog, quản lý các bài viết rất thuận tiện giống như các phần
mềm thiết kế website chuyên nghiệp.
- Thể hiện các tệp PDF, DOC, Powerpoint ngay trên nội dung bài viết. Đặc
biệt tích hợp sẵn Latex – công cụ soạn thảo công thức toán học, giúp người sử
dụng có thể viết công thức toán học ngay trên blog.
- WordPress có 23 Widget (ứng dụng tạo thêm) như Thống kê số truy nhập
blog, Các bài mới nhất, Các bài viết nổi bật nhất, Các comment mới nhất, Liệt kê
các chuyên mục, Liệt kê các Trang, Danh sách các liên kết, Liệt kê số bài viết
trong từng tháng … Có 79 theme để thành viên lựa chọn.
- Ngoài thống kê số truy nhập của từng ngày cho blog, WordPress còn
thống kê số truy nhập của từng ngày đối với mỗi bài viết của blog. Trên cơ sở đó
chủ blog sẽ có định hướng nên viết vấn đề gì tiếp theo.
- Các comment có thể duyệt rồi mới cho đăng, comment nào có nội dung
không phù hợp có thể xóa, nếu cho là spam thì sau này IP đó không có thể gửi
comment vào blog được nữa.
- Admin (chủ blog) có thể cho 35 cộng tác viên gửi bài vào blog, có thể
phân quyền cho các cộng tác viên theo các cấp độ khác nhau. Lưu giữ danh sách
thành viên đã ghé thăm trang blog. Admin cũng có thể cho bất kỳ ai đăng bài qua
email vào blog miễn là admin cho họ một địa chỉ email bí mật của blog (địa chỉ
này có thể thay đổi bất kỳ lúc nào).
- Sao lưu dữ liệu nhằm khôi phục nội dung blog một cách dễ dàn nếu chẳng
may blog bị hack, và cung cấp công cụ chuyển nhà từ các blog khác sang blog
WordPress..
- WordPress hỗ trợ 3 GB để lưu trữ các tệp hình ảnh và văn bản.
15
- Hàng ngày WordPress có thống kê 100 bài trên các blog tiếng Việt của
WordPress được nhiều người đọc nhất trong vòng 48 tiếng. Nhờ đó bạn biết được
các thông tin quan trọng nhất đang diễn ra.
1.1.2. Các lý do khiến chúng ta phải chọn WordPress
- Sự tương tác giữa người đọc với người viết cao thông qua tính năng comment.
- Dễ dàng quản lý nội dung bài viết, chuyên mục, comment, quảng cáo…
- Có thể lưu trữ bài viết để sửa chữa trước khi public hay định ngày public
bài viết.
- Có rất nhiều themes cho bạn lựa chọn.
- Một kho tàng plugin đang phát triển ngày càng cao.
- Thân thiện với các công cụ tìm kiếm: Google, Yahoo, Bing…
- WordPress là một CMS (Content Management System) chuyên nghiệp.
1.2. Công nghệ Responsive Web Design
1.2.1. Khái niệm về Responsive Web Design
Responsive Web Design đang là một xu thế mới cho thiết kế website và
SEO. Một trang web có thể chạy tốt trên tất cả các nền tảng trình duyệt: Máy tính
để bàn (PC), điện thoại (mobile) và máy tính bảng (tablet) vừa tiện lợi cho người
dùng, vừa đơn giản hơn cho việc quản trị, phát triển là mơ ước của mọi đối tượng
web. Ngoài ra, google còn khuyến khích sử dụng Responsive Web Design cho việc
seo trên máy tính và seo trên điện thoại.
Responsive Web Design (RWD) là xu hướng mới theo đó quy trình thiết
kế và phát triển web sẽ đáp ứng mọi thiết bị và môi trường của người dùng theo
các tiêu chí kích thước và chiều của màn hình thiết bị. Để làm được điều đó chúng
ta sẽ sử dụng linh hoạt kết hợp các kỹ thuật bao gồm flexible grid, responsive
image và CSS media query. Khi người dùng chuyển từ máy tính xách tay của họ
sang iPad hay iPhone, trang web sẽ tự động chuyển đổi để phù hợp với kích thước
màn hình và kịch bản xử lý. Nói cách khác, các trang web cần phải có công nghệ
tự động đáp ứng theo thiết bị của người dùng. Điều này sẽ loại bỏ sự cần thiết cho
16
nhiều thiết kế web khác nhau và giảm thiểu thời gian cũng như chi phí thiết kế
web.
Hình 1.1. Responsive Web Design là gì?
1.2.2. Giải pháp nào giúp điều chỉnh độ phân giải màn hình
Các thiết bị mới đang được phát triển mỗi ngày và mỗi thiết bị này có thể
xử lý các biến kích thước, chức năng và ngay cả màu sắc khác nhau. Một số thích
dùng màn hình nhỏ, một số dùng màn hình to, có người thích dùng theo chiều dọc
và có người thích dùng chiều ngang. Như chúng ta biết từ sự phổ biến của điện
thoại thông minh iPhone, iPad và các dòng điện thoại Android khác có thể chuyển
đổi từ dọc sang ngang theo ý thích của người dùng. Vậy người thiết kế xử lý tình
huống này như thế nào?
17
Hình 1.2.Giải pháp là linh hoạt tất cả mọi thứ trên web
Một vài năm trước, khi flexible layout gần như là một thứ “xa xỉ” và
“cao cấp” cho các trang web, điều duy nhất mà sự linh hoạt được sử dụng trong
thiết kế là linh động trong layout dạng cột và nội dung text. Các hình ảnh có thể dễ
dàng vỡ layout, và thậm chí các phần tử cấu trúc cũng gây ra việc làm vỡ layout
khi chúng bị đẩy ra. Thiết kế linh hoạt chưa thực sự linh hoạt – các nhà thiết họ có
thể cung cấp giao diện hàng trăm pixel, nhưng họ lại không thể điều chỉnh giao
diện từ một màn hình máy tính lớn để phù hợp với một chiếc netbook.
Bây giờ chúng ta có thể làm cho mọi việc linh hoạt hơn. Hình ảnh có thể
được tự động điều chỉnh, và chúng ta có cách giải quyết để layout không bao giờ bị
phá vỡ . Giải pháp linh hoạt nội dung là hoàn hảo cho các thiết bị chuyển đổi từ
cách truy xuất trên màn hình chiều ngang sang màn hình chiều đứng trên các thiết
bị mobile như iPad hay iPhone.
Để xây dựng fexible content chúng ta có thể kết hợp các kỹ thuật như sau:
- Sử dụng fluid layout
- Sử dụng flexible image
- Sử dụng responsive navigation
18
CSS3 media queries
Chúng ta sẽ sử dung một tính năng trong CSS3 đó là media query nhằm
tạo nên fluid layout và flexible content. Các thuộc tính min-width and max-width
sẽ làm chính xác những gì chúng ta đề nghị để đáp kích thước của màn hình và
trình duyệt của thiết bị. Thuộc tính min-width đặt trình duyệt và màn hình với
chiều rộng tối thiểu theo một tập hợp của các style nhất định (hoặc phong cách đặc
trưng riêng biệt) phù hợp thiết bị phù hợp với độ rộng tối thiểu đó. Nếu bất cứ thiết
bị với kích cỡ màn hình dưới mức giới hạn này thì các định dạng stylesheets sẽ bị
bỏ qua. Thuộc tính max-width làm điều ngược lại. Bất cứ thiết bị có trình duyệt
hoặc chiều rộng tối đa màn hình vượt quá quy định sẽ không áp dụng các định
dạng stylesheets tương ứng. Đoạn code dưới đây sẽ tự động thay đổi màu nền trang
web theo các kích cỡ khác nhau của thiết bị:
Flexible images
Nếu thay đổi kích thước ảnh quá nhỏ, hình ảnh sẽ xuất hiện với chất lượng
thấp, tuy nhiên chúng ta vẫn muốn nó sẽ xuất hiện trên web và không muốn bỏ nó
đi vì nó quan trọng. Vì vậy, hình ảnh được chia thành 2 nhóm: một nhóm có thể
19
cắt bỏ đi những phần không quan trọng và nhóm khác sẽ giữ nguyên ảnh nhưng sẽ
bị zoom nhỏ hoặc to lên.
Có rất nhiều kỹ thuật dùng để tạo ra flexible image đáp ứng được với mọi
kích cỡ màn hình khác nhau. Sau đây tôi xin liệt kê ra 3 khuynh hướng thông
dụng:
- Sử dụng stylesheet với img{max-width: 100%;}
- Sử dụng phần tử HTML5