MÃ ngành : 05115 ĐỀ TÀI : TÌm hiểu cms joomla


MỞ ĐẦU Bối cảnh của đề tài



tải về 4.39 Mb.
trang2/36
Chuyển đổi dữ liệu07.06.2018
Kích4.39 Mb.
1   2   3   4   5   6   7   8   9   ...   36

MỞ ĐẦU

  1. Bối cảnh của đề tài


Ngày nay, thông tin đã và đang dần chuyển hướng phát triển của mình sang các dịch vụ Web. Một trong những dịch vụ người người ta khá quan tâm là Thương mại Điện tử. Dịch vụ này giúp những bận rộn, thường xuyên làm việc trong các phòng máy, phòng thí nghiệm…có thể tiết kiệm được thời gian đi mua sắm để tập trung vào công việc của mình.

Nhờ Thương mại Điện tử, chỉ cần vài thao tác đơn giản trên máy tính có kết nối với Internet, bạn sẽ có tận tay những thứ mình cần mà không phải đi đâu cả. Bạn chỉ cần vào các trang dịch vụ Thương mại Điện tử là có thể mua bất cứ thứ gì, nhân viên dịch vụ sẽ mang đến tận nhà cho bạn. Việc thanh toán cũng thật dễ dàng, có thể gián tiếp qua các hệ thống ngân hàng hoặc trực tiếp nếu bạn muốn. Vậy, thực chất của Thương mại Điện tử là như thế nào?

Để tìm hiểu mô hình hoạt động cũng như quá trình xây dựng một ứng dụng có tính chất thương mại trực tuyến, tôi xin giới thiệu đề tài “Tìm hiểu CMS Joomla, ứng dụng để xây dựng siêu thị sách trực tuyến” là đề tài nghiên cứu cho Đồ án tốt nghiệp này.

Mặc dù ứng dụng đã triển khai được phần lớn các yêu cầu chính mà một ứng dụng Thương mại Điện tử cần đáp ứng, tuy nhiên với thời gian hạn chế, việc tìm hiểu và xây dựng một ứng dụng trên công nghệ Joomla là khá khó khăn. Do đó, ứng dụng này không tránh khỏi những thiếu sót, rất mong nhận được nhiều ý kiến nhận xét quý báu của quý thầy cô và các bạn để tôi có thể rút kinh nghiệm cho việc xây dựng những ứng dụng thực tế sau này.


    1. Lý do chọn đề tài


Trong thời đại phát triển bùng nổ của Công nghệ thông tin(CNTT) và quan hệ hợp tác toàn cầu phát triển mạnh mẽ, nhất là khi Việt Nam đã trở thành thành viên chính thức của WTO, việc áp dụng tính chuyên nghiệp và các mô hình quản lý sản xuất - kinh doanh chuyên nghiệp - hiện đại thông qua mô hình “Tin học hoá doanh nghiệp” để theo kịp sự phát triển của xã hội là yếu tố cần thiết, đẩy mạnh sự phát triển của doanh nghiệp và giúp cho doanh nghiệp gặt hái được nhiều thành công trong môi trường sản xuất - kinh doanh năng động và đang thay đổi nhanh chóng như hiện nay.

Thương mại điện tử là một trong những vấn đề nóng bỏng, mặc dù khái niệm này đã khá quen thuộc với nhiều người Việt Nam, song những dịch vụ tiện lợi này trên thực tế vẫn còn chưa phổ biến. Chính vì vậy, tôi chọn đề tài này với mong muốn tự trang bị cho mình những hiểu biết chung về thương mại điện tử, kỹ năng và phương pháp xây dựng và phát triển các ứng dụng thương mại điện tử, góp một phần nhỏ trong bước chuyển mình của dịch vụ này.


    1. Mục tiêu cụ thể


    • Nắm được cơ sở lý thuyết chung về thương mại điện tử và các vấn đề liên quan đến thương mại điện tử.

    • Tìm hiểu các Website thương mại điện tử lớn đã được triển khai để nắm được cách thức hoạt động và những yêu cầu cần thiết đối với ứng dụng thương mại điện tử.

    • Xác định đối tượng khách hàng mà mình hướng tới để phục vụ.

    • Lựa chọn giải pháp công nghệ thích hợp cho việc xây dựng và phát triển ứng dụng đã chọn.

    • Tìm hiểu về CMS Joomla và những tính năng của nó.

    • Xây dựng ứng dụng thương mại điện tử dựa trên nền tảng CMS Joomla có thể đáp ứng được nhu cầu của đối tượng phục vụ.

    • Tính toán, đưa ra phương pháp và kế hoạch thực hiện dự án trong thời gian ngắn nhất và chi phí thấp nhất có thể.
    1. Giải pháp công nghệ


Sử dụng nền tảng là Joomla, Joomla! cung cấp 1 nền tảng ứng dụng mạnh mẽ tạo điều kiện thuận lợi cho các lập trình viên thiết kế ra các add-ons nhằm mở rộng sức mạnh của Joomla nhắm đáp ứng tối đa nhu cầu của doanh nghiệp.

  • Hệ thống thương mại điện tử tích hợp

  • Hệ thống kiểm soát hàng hoá

  • Công cụ báo cáo dữ liệu

  • Danh mục hàng hoá

  • Các thư mục kinh doanh phức tạp

  • Công tự hỗ trợ giao tiếp

  • Cầu nối ứng dụng
    1. Kết quả mong đợi


Dựa trên nền tảng công nghệ Web phát triển nhiều năm qua, tôi đã nghiên cứu và phát triển hệ thống quản trị nội dung website thương mại điện tử Online SuperMarket với đầy đủ các tính năng ưu việt đảm bảo có thể cung cấp đầy đủ, hoàn chỉnh các chức năng mạnh mẽ, hỗ trợ cho việc thực hiện thương mại điện tử trực tuyến cho các siêu thị, các nhà sách lớn trong nước.

Qua hệ thống website thương mại điện tử này, các doanh nghiệp có thể được sở hữu một hệ thống quản trị website hoàn hảo và dễ dàng sử dụng mà không cần qua đào tạo, không cần phải biết về thiết kế và lập trình website bạn cũng có thể quản trị và xuất bản website một cách xuất sắc.

Những tính năng chính mà hệ thống Online SuperMarket cung cấp:

      1. Cập nhật thông tin hàng hóa trực tuyến nhanh chóng và chính xác.


      • Không giới hạn chủng loại sản phẩm

      • Không giới hạn số lượng sản phẩm

      • Thiết kế theo cấu trúc Section - Category - Content

      • Cấu trúc sản phẩm Section - Category – Products

      • Hổ trợ nhiều ngôn ngữ, dễ dàng cài đặt thêm ngôn ngữ

      • Hổ trợ nhiều template, cho phép thay đổi giao diện để hấp dẫn người dùng

      • Hổ trợ nhiều loại tiền tệ

      • Bạn dễ dàng cập nhật và thường xuyên thay đổi những hình ảnh, thông tin chi tiết, giá cả các mặt hàng mà bạn kinh doanh bất cứ lúc nào.
      1. Đặt hàng trực tuyến


Khách hàng của bạn có thể tìm kiếm và lựa chọn sản phẩm thêm hoặc bớt vào giỏ hàng( Shopping Cart). Nhân viên phục vụ của siêu thị sẽ mang hàng đến tận nơi theo đơn đặt hàng của khách hàng và thực hiện các thủ tục thanh toán.
      1. Quản lý các đơn đặt hàng trực tuyến, hóa đơn, báo cáo


Hệ thống quản lý, lưu trữ và báo cáo các thông tin về đặt hàng và trạng thái của đơn hàng: đã giao hàng chưa, chờ thanh toán hay đã thanh toán đơn hàng.
      1. Quản lý khách hàng


      • Tất cả các các đơn đặt hàng đượclưu trữ vào CSDL giúp dễ dàng truy xuất khi cần thiết.

      • Khách hàng có thể xem các đơn đặt hàng của họ và trạng thái đơn đặt hàng(order tracking)

      • Khách hàng có thể quản lý và thay đổi tài khoản của họ.

      • Quản lý giỏ hàng tạm dành cho khách hàng chưa là thành viên và  giỏ hàng giành cho khách hàng là thành viên.

      • Giỏ hàng lưu trữ thông tin hàng hóa khách hàng đã chọn để hiển thị lần sau khi khách hàng đăng nhập.

      • Công cụ tìm kiếm nhanh dễ sử dụng và có nhiều phương thức tìm kiếm chi tiết.

      • Danh sách sản phẩm bán chạy - Sản phẩm mới.

      • Hệ thống tương thích hầu hết với các trình duyệt.

      • Tự động hiển thị những sản phẩm mới, sản phẩm khuyến mãi, đặc biệt.

      • Tự động hiển thị trạng thái sản phẩm còn hay hết để khách hàng có thể tiếp tục đặt hàng.

      • Khách hàng có thể đăng kí hoặc bỏ đăng kí nhận email về thông tin sản phẩm của công ty thông qua hệ thống newsletters.
    1. Nội dung tóm tắt các chương tiếp theo


Chương I: Cơ sở lý thuyết

Chương II: Xây dựng ứng dụng siêu thị sách trực tuyến trên CMS Joomla

Chương III: Triển khai ứng dụng

Chương IV: Kết luận



CHƯƠNG 1
  1. CƠ SỞ LÝ THUYẾT




    1. Tổng quan về CMS

      1. Giới thiệu CMS


Chúng ta có thể hình dung CMS như là một hệ điều hành trên máy tính, nghĩa là CMS được sử dụng làm nền tảng để chạy những ứng dụng khác.

Ngoài ra, CMS giống như một thư viện, nó cung cấp những hàm, lớp cơ bản để những người phát triển web khác có thể sử dụng, tùy biến, chỉnh sửa để CMS thành một trang web phục vụ đúng nhu cầu của mình.


      1. Tính hướng đối tượng trong CMS


Trong giới hạn của báo cáo này, mặc dù rất muốn nhưng tôi không thể trình bày chi tiết về lập trình hướng đối tượng. Trong lập trình web PHP, tư tưởng hướng đối tượng chỉ mới được áp dụng trong PHP5, như vậy nghĩa là chúng ta hoàn toàn có thể xây dựng một ứng dụng PHP theo phương pháp hướng đối tượng để có thể tối ưu nhất hệ thống mình xây dựng.

Trong CMS, tư tưởng này cũng mới được áp dụng. Với một dự án lớn như Joomla, việc sử dụng các phương thức cài đặt truyền thống thì thực sự quá khó, nếu không muốn nói là không thể thực hiện được. Chính vì vậy, khi làm việc với Joomla, xây dựng bất kỳ một ứng dụng cụ thể nào, chúng ta đều phải có kiến thức sâu về lập trình hướng đối tượng để có thể áp dụng mang lại hiệu quả cao.


      1. Mô hình/cấu trúc CMS


Trong CMS, thì ngoài độ rộng của API, cái dễ phân biệt và đánh giá một CMS, có lẽ là cấu trúc của nó. Nói tới cấu trúc của CMS, chúng ta không phải nói tới nó chạy như thế nào, mà chính là những cái chạy trên nền CMS đó được chạy như thế nào. Thực tế thì không riêng CMS, mà trên Programing nói chung, đều có những cấu trúc được phát minh sẵn, và công việc của mình là biến lý thuyết thành hiện thực thôi.

Nói như vậy, cái chúng ta cần làm là phải hỗ trợ tối đa để những người phát triển CMS của chúng ta có thể hiểu, và sử dụng tốt cái cấu trúc chúng ta hướng tới.


      1. Mô hình MVC


Mô hình MVC chuyên môn hóa cho những công việc khác nhau trong thiết kế phần mềm cũng như trong thiết kế web.

Chia công việc thành 3 phần:



  • Lấy dữ liệu (tầng core – gọi tắt là core)

  • Hiển thị dữ liệu (tầng view – gọi tắt là view)

  • Điều khiển (tầng controller – gọi tắt là controller)
        1. Tầng lấy dữ liệu


        • Phụ trách nhiệm vụ xử lý dữ liệu từ user hoặc từ database.

        • Biến các dữ liệu thô (chưa qua xử lí cơ bản) thành dữ liệu có thể sử dụng được

        • Bao gồm cả phần sao lưu dữ liệu
        1. Tầng hiển thị


        • Phụ trách việc hiển thị dữ liệu để giao tiếp với người sử dụng

        • Biến các dữ liệu đã xử lý thành trang web đã hiển thị
        1. Tầng điều khiển


        • Phụ trách việc liên hệ giữa 2 tầng trên: tầng dữ liệu và tầng hiển thị

        • Tầng điều khiển cho tầng dữ liệu biết cần lấy những dữ liệu gì, cho tầng hiển thị biết cần phải hiển thị phần nào. Chi tiết mỗi tầng dữ liệu và tầng hiển thị do tầng đó chịu trách nhiệm, tầng điều khiển chỉ có nhiệm vụ kết nối và ra lệnh bao quát.
        1. Nhân sự cho mô hình này


        • Tầng core: người am hiểu về database, làm việc trực tiếp tới database, hiểu biết về security ở tầng thấp

        • Tầng view: thường là web-design

        • Tầng controller: thường là những người vẽ ra con đường tổng quát, không cần biết sâu tới core or view, nhưng có khả năng linh hoạt sử dụng 2 bên. Đây thường là người viết mã chính cho dự án.

        • Chú ý:

        • Khi nói về người viết các tầng, thường thì controller làm việc trực tiếp với cả core và view. Còn core và view thì không làm việc trực tiếp với nhau, mà thông qua controller, và chỉ làm việc với controller.

        • Khi nói về người viết CMS, nếu viết theo mô hình này, chúng ta phải cung cấp cho web-developer những class, function sao cho họ có thể áp dụng mô hình MVC được dễ dàng hơn, và tốt hơn
    1. Giới thiệu về Joomla

      1. Khái niệm Joomla


Joomla! là một hệ quản trị nội dung mã nguồn mở(Content Management System – CMS). Joomla! được viết bằng ngôn ngữ PHP và kết nối tới cơ sở dữ liệu MySQL, cho phép người sử dụng có thể dễ dàng xuất bản các nội dung của họ lên Internet hoặc Intranet.

Joomla có các đặc tính cơ bản là: bộ đệm trang (page caching) để tăng tốc độ hiển thị, lập chỉ mục, đọc tin RSS (RSS feeds), trang dùng để in, bản tin nhanh, blog, diễn đàn, bình chọn, lịch biểu, tìm kiếm trong site và hỗ trợ đa ngôn ngữ. Joomla được phát âm theo tiếng Swahili như là jumla nghĩa là "đồng tâm hiệp lực".

Joomla! được sử dụng ở khắp mọi nơi trên thế giới, từ những website cá nhân cho tới những hệ thống website doanh nghiệp có tính phức tạp cao, cung cấp nhiều dịch vụ và ứng dụng. Joomla có thể dễ dàng cài đặt, dễ dàng quản lý và có độ tin cậy cao.Joomla là sản phẩm mã nguồn mở do đó việc sử dụng Joomla là hoàn toàn miễn phí cho tất cả mọi người trên thế giới.

      1. Vài nét về lịch sử phát triển Joomla


Joomla là "sản phẩm anh em" với Mambo của tập đoàn Miro Software Solutions - Úc (hãng đang nắm giữ Mambo) với những người phát triển nòng cốt. Ban đầu công ty Miro đã phát triển Mambo theo dạng ứng dụng mã nguồn đóng. Đến tháng 4 năm 2001, công ty đã thông qua một chính sách bản quyền kép, nghĩa là phát hành Mambo theo cả giấy phép GPL.

Đến ngày 17 tháng 8 năm 2005, do sự tranh chấp về mặt pháp lý cũng như mong muốn vào sự phát triển của Mambo dựa trên quỹ tài trợ và sự hỗ trợ của cộng đồng nên toàn bộ đội phát triển nòng cốt của Mambo đã rời khỏi dự án trong khi đang làm việc với phiên bản 4.5.3.

Nhờ sự trợ giúp của Trung tâm Luật Tự do Phần mềm (Software Freedom Law Center - SFLC), 20 thành viên nòng cốt cũ của Mambo đã thành lập một tổ chức phi lợi nhuận khác lấy tên là Open Source Matters, để hỗ trợ về mặt tổ chức, pháp lý và kinh phí cho dự án mã nguồn mở còn chưa được đặt tên của họ. Ngay ngày hôm sau, 1000 người đã gia nhập diễn đàn OpenSourceMatters, hầu hết các bài viết cho diễn đàn đều khuyến khích và đồng tình với hành động của Nhóm Phát triển. Tin trên đã nhanh chóng được đăng tải trên các tạp chí newsforge.com, eweek.com và ZDnet.com.

Trong một thông báo của Eddie (người đứng đầu dự án) 2 tuần sau đó, các nhóm đã được tổ chức lại và cộng đồng Joomla tiếp tục tăng trưởng. Tới ngày 1 tháng 9 năm 2005 tên mới của dự án đã được thông báo cho khoảng 3000 người theo dõi đội Phát triển và đến ngày 16 tháng 9 thì họ cho ra đời Joomla 1.0.


      1. Các dòng phiên bản của Joomla


Hiện nay Joomla có 2 dòng, dòng 1.0.x đã ổn định và phù hợp để các bạn thực hiện các website của mình. Dòng 1.5 đang phát triển tới phiên bản beta, chỉ phù hợp để test,chưa phù hợp để làm website chính thức.

  • Dòng phiên bản 1.0.x :Phiên bản đầu tiên của Joomla là phiên bản Joomla! 1.0 (hay Joomla! 1.0.0) có nguồn gốc từ Mambo 4.5.2.3 (đã bao gồm thêm nhiều bản vá bảo mật và sửa lỗi).Các phiên bản tiếp theo có dạng 1.0.x. Điểm mạnh của Joomla 1.0.x: Có một số lượng rất lớn các thành phần mở rộng (module, component ) thành phần nhúng (mambot), giao diện (template).

  • Dòng phiên bản 1.5x : Phiên bản Joomla! 1.5 là phiên bản cải tiến từ Joomla 1.0.x (phần mã được viết lại hoàn toàn, tuy nhiên vẫn giữ cách hành xử như cũ). Joomla 1.5 tiếp tục duy trì một giao diện người sử dụng đơn giản (nhìn và cảm nhận - look and feel). Joomla! 1.5 hỗ trợ đa ngôn ngữ bằng cách sử dụng file định dạng ".ini" để lưu các thông tin chuyển đổi ngôn ngữ. Joomla 1.5 hỗ trợ tất cả các ngôn ngữ có tập ký tự được biểu diễn bằng bảng mã UTF-8. Điểm mạnh của Joomla 1.5: Phần quản trị Website có sử dụng công nghệ Web 2.0, một số tính năng được cải tiến hơn so với Joomla 1.0.x.
      1. Kiến trúc của Joomla


Joomla gồm có 3 tầng hệ thống:

  • Tầng dưới cùng là mức nền tảng, chứa các thư viện và các plugin (còn được biết với tên gọi mambot).

  • Tầng thứ hai là mức ứng dụng và chứa lớp JApplication. Hiện tại tầng này gồm 3 lớp con: JInstallation, JAdministrator và JSite.

  • Tầng thứ ba là mức mở rộng. Tại tầng này có các thành phần (component), mô đun (module) và giao diện (template) được thực thi và thể hiện.
      1. Đối với người sử dụng cuối


Việc cài đặt Joomla! khá dễ dàng và nhanh chóng, thậm chí cả đối với những lập trình viên nghiệp dư. Joomla có một cộng đồng người sử dụng và phát triển rất lớn và tăng trưởng không ngừng. Các thành viên và các lập trình viên rất nhiệt tình và sẵn sàng tư vấn, giúp đỡ khi người sử dụng gặp khó khăn.

Joomla cung cấp giao diện web trực quan do vậy khá dễ dàng để thêm một nội dung mới hay một mục mới, quản lý các phòng ban, danh mục nghề nghiệp, ảnh các sản phẩm... và tạo không giới hạn số phần, mục, chuyên mục cũng như các nội dung của Website.

Hiện tại ở Việt Nam chúng ta, cộng đồng Joomla đã và đang phát triển mạnh mẽ tại diễn đàn.

Code:


http://www.joomlaviet.org

Tại đây bạn có thể tìm kiếm những thông tin về cài đặt, phát triển Joomla cũng như nêu lên những ý kiến thắc mắc hoặc yêu cầu của mình để được giúp đỡ.


      1. Ứng dụng của Joomla


Joomla! đã được sử dụng trên khắp thế giới, đã được ứng dụng vào xây dựng các website từ đơn giản như website cá nhân tới các ứng dụng website phức tạp. Sau đây là 1 số ứng dụng có thể được xây dựng bằng Joomla !

  • Trang web của các tổ chức hoặc các cổng thông tin ( Portal )

  • Thương mại điện tử

  • Trang web cho các công ty cỡ nhỏ

  • Ứng dụng cho các cơ quan hành chính

  • Trang web cho các trường học và nhà thờ

  • Trang web cá nhân và gia đình

  • Các cổng thông tin cộng đồng

  • Trang web báo điện tử và tạp chí

  • và nhiều ứng dụng khác nữa...



1   2   3   4   5   6   7   8   9   ...   36


Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2019
được sử dụng cho việc quản lý

    Quê hương