1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng hệ thống cms dựa trên nền tảng zend framework

94 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Xây Dựng Hệ Thống CMS Dựa Trên Nền Tảng Zend Framework
Tác giả Đinh Việt Bảo
Người hướng dẫn PSG. TS. Nguyễn Văn Thịnh
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Công Nghệ Thông Tin
Thể loại Luận Văn
Năm xuất bản 2016
Thành phố Hà Nội
Định dạng
Số trang 94
Dung lượng 5,99 MB

Cấu trúc

  • 1. Khái ni m (5)
  • 2. L ch s phát tri n (5)
  • 3. C u trúc và ch   a CMS (0)
  • 4. Xây d ng h   th ng CMS (0)
  • 5. Gi i thi u Zend Framework (0)
    • 5.1. Mô hình MVC (10)
    • 5.2. T ng quan v Zend Framework (12)
    • 5.3. Các l p ph bi n (14)
    • 5.4. Mô hình MVC trong Zend Framework (15)
  • CHƯƠNG II XÂY D NG H TH NG CMS .................................................... 18 Ự Ệ Ố 1. Yêu c u nghi p v c  a h th ng (5)
    • 1.1. Qu n lý tài kho n cá nhân (19)
    • 1.2. Qu i dùng (19)
    • 1.3. Qu  i dùng (20)
    • 1.4. Qu n lý controler (20)
    • 1.5. Qu n lý action (20)
    • 1.6. Qu n lý menu (21)
    • 1.7. Qu n lý h   th ng (21)
    • 1.8. Qu n lý chuyên m c (22)
    • 1.9. Qu n lý lo i bài vi t (23)
    • 1.10. Qu n lý tag bài vi t (23)
    • 1.11. Qu n lý bài vi t (23)
    • 1.12. Qu n lý comment (26)
    • 1.13. Qu n lý like (28)
    • 2. Mô hình tình hu i dùng (0)
      • 2.1. Qu n h  tr  th ng (0)
      • 2.2. Phóng viên / C ng tác viên (38)
      • 2.5. T ng biên t p (50)
      • 2.6. Qu n tr ph n h i (54)
      • 2.7. B  c (56)
    • 3. Bi  tu  n t (0)
      • 3.1. Phóng viên / C ng tác viên (56)
      • 3.4. T ng biên t p (64)
    • 4. Thi t k   d u ........................................................................................ 65 li 1. Mô hình quan h (0)
      • 4.2. Danh sách các b ng (68)
  • CHƯƠNG III THI T K GIAO DI N Ế Ế Ệ CHƯƠNG TRÌNH (19)
    • 1. Thi t k trang Back End - (0)
      • 1.2. Trang danh sách bài vi t (77)
      • 1.3. Trang thêm bài vi t (79)
      • 1.4. Trang chi ti t bài vi t (85)
    • 2. Thi t k trang Front End - (0)
      • 2.1. Trang ch (87)
      • 2.2. Trang chuyên m c (89)
      • 2.3. Trang chi ti t bài vi t (91)

Nội dung

Mô hình MVC trong Zend Framework .... Trang danh sách bài vi t .... Giới thi u Zend Framework ệ5.1.. Lp ph c v: Zend_Controller.. Mô hình MVC trong Zend Framework.

Khái ni m

CMS vi t t t c    th ng qu n tr n i    dung Là ph n m   t chc và tng c ng tác thu n l i nh m m     xây d ng m t h   thng tài li u và các n i dung khác nhau m t cách th ng nh CMS     t.

c áp dn lý n i dung Website, nó  c dùng cho các trang web ca m t cá nhân hay t  ch

CMS cung c p nh ng công c   trn và thân thi i dùng ph không c n bi t nhi u v       s d  qu n lý n i dung, các ho  t

L ch s phát tri n

u phát tri n c a Internet, vi c xu t b n m t bài vi      u c n  ph i s a mã ngu  ng H™L C ch th pht trin, v n hnh trang HTML n gi c ci in sch Vit n i dung ch l 1 phn công vi i ta phi cn ti giy v cc m in ra trang sch, cui cng lng cc trang sch l i thnh 1 cun sch V i cách th c làm vi  c

y s  i dùng m t m i và t n r t nhi u th i gian, n      u i dùng mun c thêm 1 bi vit mi, i dùng phi t o link ti bi vit, phi vit 1 trang HTML hon chnh theo giao di n ca Website, v i nh ng Website có kh  ng bài vi t l n thì cách làm vi y s không th thc hi qu n tr n  i dung Ci.

c ti n dài trong l ch s phát tri   

i cách qu n lý và ti p c n thông tin c   i dùng,  i u quan tr ng là 

i dùng không c n ph i bi t v      có th   c kia, khi ta c n tìm m  c s d ng nh ng cách th  c  tìm thông tin trên báo giy, thông tin s sách s t v c s  r t v d ng khi mà có quá nhi u thông tin c n x lý, nó giúp ta t     v công s c và chi phí, ng  

t B o - 13BCNTT2  5 thi hi u qu   t nhii qu n tr c n ph i biên t p      và s p x p n i dung m t cách phù h p nh t m i có th tìm ki m thông tin m t cách           d dàng 

Có th nói  ng chung c a t t c    các Website ngày nay Blog là m t d ng CMS, Wiki là m t d     c tích h p vào  các h  th ng ERP c a doanh nghi p Các d li u c    a doanh nghip s  c xut bn trc ti p lên Website mà không c n ph i t n nhi u công s c Ví d m t nhà máy, h          v a s n xu t ra m t s n ph m, s n ph m này l p t c xu t hi n trên trang Web v             

 n t c s n ph m s       c l y t d liu c a  phòng k thut, giá c thì l y t    c khuy n mãi l i

c truy c p tr c ti p t phòng marketing Các báo cáo thu c a doanh nghi p s        

c xu t b n và g i tr c ti p v phòng thu       M t h th ng CMS là m t h th ng       qu n lý m i th , b i vì t t c u là content Cái hay c a m t h           thng là làm sao t  chc và quc nh ng content phi c u trúc và qu  c nhi u lo i thông   tin

Cc vit b ng ngôn ng  l p trnh k ch b à quan tr thi liu Hin nay, CMS ph bi  c vi t b ng ngôn ng l p trình PHP v     d u MySQL Các lo i CMS ph bi n gli    m có:

 W-CMS (Web CMS):   c s d ng cho các trang tin t c, blog H  tr

u khi n và ch nh s a, biên t p n i dung N i dung bao g m t p tin        

 n t , hình nh, video, file âm thanh, tài li   n t n

 E-CMS (Enterprise CMS)  c s d ng cho các doanh nghi p n  m b t, qu  , b o qu n và cung c p n i dung và các tài li u liên     quan

 T-CMS (Transactional CMS): H trvic qu n lý các giao d  m n t

 P-CMS (Publications CMS): H vi c qu n lý các lotr   i n ph m tr c tuy n (s tay, sách, tr giúp, tham kh o )    

 L-CMS/LCMS (Learning CMS): H  tr vi c qu o d a trên  n n Web 

 BCMS (Billing CMS): H vitr c qun lý Thu chi da trên nn Web

3 C u trúc và ch ấ ức năng ủ c a CMS

H thng qu n lý n i dung CMS   ch c s d y   qu n lý, xu t b n các   

n d a trên các tài li t, tài li u d n và thông tin M t  CMS ng có các ch n sau:

 Phân quyi dùng và n i dung 

ng sau s ti n l  i dùng CMS s d ng thì không th không nh c    

n s ph c t p      c a i phát tri n h th ng khi xây d ng CMS CMS     phát tri n r ng, chnh v m ch s d ng ca mi dùng, m i t  chc là khc nhau, nên cng c rt nhiu cc CMS khc nhau phù h p cho t ng m   c

 Trên th c t, ty vo tng d n, m t ho c m t vi thnh phn c th  c lo i b, rt g  ph hi mch s d ngi thi u c n ph  i

S phát tri n c a Internet ngày nay giúp Website không còn là khái ni m quá    

 và xa l v i     i s d ng máy tính i dùng máy tính hoàn toàn có th  t o d ng cho riêng mình m Website   t ch  b ng vài cú b m chu t d a trên nh ng h      thng mã ngu n m ho   ng theo nhu c u cá nhân, ho a là dành cho m t t  chc Trong thi Công ngh  n bùng n   hi n nay, vi c s d ng h     th xây d ng Websi là m t nhu c u thi t y te    u cho nhng cá nhân, công ty v a và nh   c.

Trên th gi i hi  ng h thng CMS ph bi , Drupal, eZ Publish, OpenCMS, Magento , tuy vy nh ng CMS này  

- H u h t các plugin là mi n phí   

- Kho giao di n có s n r  c cung c p b i chính WordPress

- Khi Website có ng truy c p l n, vi c s d    ng thông tin m r ng c a bài vi t s làm cho h      thng ch y ch m ch p và    t n r t nhiu tài nguyên

- ng các yêu c u m r    a các nhóm thành viên qu n tr  

- Mã ngu n c  i l n d n t i t n nhi u tài nguyên     h thng trong quá trình s d ng  

- S  ng các ng d ng (extensions) tuy nhi    i t s l

- Không ch y t t trên máy ch Windows (IIS)   

- i dùng có nhiu Website v i ch 1   l n cà t duy nh t.

- Thích h xây d ng nh ng Website l n, s     i truy c p nhi u  

- Nhiu ch ph c t p l  i dùng ph i có  ki n th c CNTT  

Có th thy nh ng CMS ph bi n    trên u là nh ng h  thng CMS l n, có quá  nhi u ch , quá nhi u ng d ng m r    ng (plugin hoc extension) khii dùng có th  g n tr Chính vì v y h    thng CMS v a và nh   có nh ng ch n thi t có s n mà không c n ph i cài     ng d ng m r ng, giao di   n thân thi n, d s d ng c n       cho m Website cung c p nt  i dung, thông tin

M t h  thng CMS bao g m khá nhi u ch   tài này em ch   th các khâu v qu n lý bài vi    t p trung vào ph n qu n lý n i dung ch      phân tích v các ch khác n lý tên mi n, qu n lý ngôn ng , qu n lý giao di n, qu n lý nhu n bút, l y tin t           Tóm l i, nh ng ch   qu i dùng, qui dùng, qu n lý controler, qu n lý action, qu n lý menu, qu n lý chuyên m c, qu n lý lo i bài       

t B o - 13BCNTT2  9 vi qu n lý tag bài vi qu n lý bài vi t, qu n lý comment, qu n lý liket,  t,      ng phát tri n c a em  

V m t phân tích và thi t k h      thng: k t qu   c c tài t các mô  hình phân tích thi  t k h th  d u li

V m t l    s nghiên c u và áp d ng    t vi ng d ng d a trên n n t ng     Zend Framework, hoàn thành các ni dung ch y u sau:  

 Hiu và v n d ng thành công các l      xây d ng  thành công các chn và c n thi t c a m   t h th ng CMS

 m b o h th ng v   u trúc c a m t ng d ng Zend     Framework (theo mô hình MVC)

 Tp, s d ng các l p Zend Framework thay cho cách vi   t th HTML.

 m b o s c l p c a các ch      , d dàng phát tri n và nâng c p   h thng

 Trang giao dii dùng ph  t m

MVC (Model-View-Controller) là m u ki n trúc ph n m m Khi s       mi phát tri n ph n m m cô l p các nguyên t nghi p v và     c   giao dii dùng mn mm phát tri n theo m u MVC t  o nhi u thu n l i cho vi c b o trì vì các ph n nghi p v và giao di        n nhau

 Model (T ng d ầ ữliệu): Là mng ho c m t t p h ng bi u di n cho ph n d u c    li c giao nhi m v   cung c p d   li  d li u vào các kho ch a d li   liu T t c các nghi p v     c th c thi Model D   liu vào t 

i dùng s thông qua Vi c ki m tra Model  

   d li u Vi c truy xu t, xác nh    li u là mt phn c a Model 

 View (Tầng giao diện): Là ph n giao di n v  i dùng, bao g m vi c hi n d u ra màn hình, cung c p các menu, nút b m, h  li   i tho i,  ch n l a  i dùng có th thêm, xóa, s a, tìm ki m và làm các   

   i v i d li u trong h th ng   ng, các thông tin cn hi n th   c l y t thành ph n Model 

 Controller (Tầng điều khi n): Là phể u khi n c a ng du

ng các nhi m v   c (method) có ch x lý nhi m v    u trách nhi m x   ng v m t giao  

t B o - 13BCNTT2  11 di i v i Model, và cu i cùng là ch n m t View thích    h  hi n th ra màn hình 

 ho  ng c a mô hình MVC 

 Ưu điểm: Th hin tính chuyên nghi p trong l p trình, phân tích thi t k    

c chia thành các thành ph c l p nên giúp phát tri n ng d ng   

 Nhược điểmi v i d án nh vi c áp d ng mô hình MC gây c ng       k nh, t n th i gian trong quá trình phát tri n T n th i gian trung chuy n        d u c a các thành ph n li  

Zend Framework là m t t p h p các l     i n l p trình vi t b ng PHP   nh m cung c p m t giao di n l p trình chu n cho các nhà phát tri      n ng d ng Ngoài 

  mã hóa code, m t editor có th kéo & th d dàng s d ng v i s h cho các công ngh Front-         tr End (H™L, CSS, JavaScript), debugging tr c tuy n nhanh, các công c PHP Unit   Testing, và mt Database Wizard giúp k t n    d li c

t B o - 13BCNTT2  12 t o ra v u ki cung c p các ng d ng ch   ng cao

Zend Framework là m PHP Framework m nh m và t    v i r t nhi u c u hình tùy ch n vì th nó r t tuy t v i s d ng cho nh ng d án               ph c t  b n l n phát hành s p t i, Zend Framework 3 s       c t v n s h PHP 5.5 tr   tr  

Phiên b n hi n t i, Zend Framework 2 mà em s d ng       tài này là mt Framework mã ngu n m phát tri n các ng d ng Web và các d ch v s d ng          

c vi t d a trên ngôn ng l p trình phiên b n PHP 5.3 ho     

Zend Framework 2 s d ng mô hình ki n trúc MVC và hoàn toàn vi t theo ki u     

i  ng c vi t trên ngôn ng l p trình phiên b n PHP 5.3 ho c cao     

 nên Framework này h  tr Namespace, Late tatic S Binding, hàm Lambda và Closure

5.2.1 Lý do ch n Zend Framework 

Hin nay có r t nhi u lo i PHP Framework     Laravel, Symfony, CodeIgniter, Yii H u h t các PHP F  m y u và th m nh    khác nhau, ví d  c ph bi n t phiên b n     

nh m , c ng thêm m t c   ng phát tri n r ng l n Theo th ng kê     trên trang ch  Ze   n th m hi n t i, phiên b n Zend   

i 15 trit t i v c li, Laravel, Symfony, CodeIgniter, Yii l i là 1 lo i PHP F  i mui Zend Framework,

  nh ng PHP Framework này c ít  ng phát tri n h tr      Frameworkn có i la ch n vì tính thân thi n v  i dùng và d  s d ng  

 Zend Framework c vi t theo ki u OOP nên nó th  ng các th  m nh c a ki u vi t này Các l p c     a Zend Framework c BA

(Business Analysis) rt chu n và khi c n m r ng có th dùng th dùng       tính ch t th a k c a OOP Nói chung là chúng ta không ph i ch nh s      a core c a  Zend Framework

 Hn m i c a Zend Framework ko có nhii trong core nên ta có th  d dàng update

 Zend Framework tích hc g  t c n PHP và các

   s d ng Ví d : Smarty, Pear, FCKEditer,  Drupal

 Cách vi t c a Zend Framework r t thân thi    n Tích h p  nh ng công ngh m i nh t c a l           Syndication, Web Services

 Zend Framework c s  d ng trong các d án l n và có k ho ch phát     trin dài lâu

 M t nhi u th  tìm hiu v     a n s c Zend Framework

 M t s l  nh, có s  i s d ng   khi c p nh t các phiên b n   

 Zend_Config: giúp chúng ta c u hình ng d ng, ví d     u hình thông tin kt n  d u, c u hình tên mi n, email li  

 Zend_Acl: giúp chúng ta phân quy n cho ng d ng chi ti t trên t ng action,      controller và module

 Zend_Auth: s d  xác thc tài kho n c i dùng p vào h thng

 Zend_Crypt: s d  mã hóa mt chung h p  mã hóa m t kh    d u li

 Zend_Db: di tu ng PDO (PHP Data Objects), cung c p các   thc kt n  n các lo  d u (MySQL, SQL Server, Couchbase ) li

 Zend_Controller: giúp l y các Request t phía Client và th c thi nó b ng các    Action

 Zend_View: chính là t ng View trong mô hình MVC, giúp chúng ta hi n th    nh ng k t qutrong x t Controller và Models ra bên ngoài lý 

 Zend_Router: cu hình url c a ng d ng   

 Zend_Paginator: giúp phân trang d u khi h li  thng có s  ng b n ghi  l n 

 Zend_Cache: giúp cho các ng d ng    t i d  liu, giúp cho h  thng không ph i s d ng CPU ho c truy xu t vào        d liu quá nhi u 

 Zend_Currency:   x lý, hin th nh d  n ti n t  

 Zend_Date: x lý t t c các v   liên quan th i gian 

 Zend_Mail: h    tr s d ng các giao th c g i, nh n email   

 Zend_Feed: x lý v i Rss và Atom feeds 

 Zend_File: cung c p, h  tr   m r ng vic Upload và Download c a các t p tin Nó gn li n v i kim tra các cha tp tin

 Zend_Formn hóa vi c t o form và x lý các ng d ng trên Website     

 Zend_Filters: lc d li c khi th c hi n m t quá trình x     

 Zend_Validate  ki m tra d li u nh p vào có phù h p v i yêu c u       hay không

 Zend_Pdf: s d   t o và x lý các file PDF, l p   c dùng cho các chn báo cáo

 Zend_Search: là mt lp cung cc search trên ni dung ca các tthông tin

 Zend_Translate: là gii pháp cho các ng d 

5.4 Mô hình MVC trong Zend Framework

c xây d ng theo mô hình MVC, d cht ch nh ng nguyên t c mà mô hình MVC mang l   i.

Model: cung c p t p h p các l   c trng hóa s d ng cho vi c truy    xut d u L p ph c v : Zend_DB, Zend_DB_Table li   

Viewn th   i d ng sau khi c x lý và  tr   v t controller L p ph c v: Zend_View  

Controller: ki m soát d  liu vào ra Xu t thông tin ra t c thc thi Lp ph c v: Zend_Controller 

Model: Zend_DB, Zend_DB_Table

Hình 2.3 Mô hình MVC trong Zend Framework

C u trú c ca ng d ng Zend Framework 2: 

  h tr các l p trình viên có th d dàng ti p c n - xây d ng nhanh chóng các      

ng d ng Web, nhà phát tri      i b khung g i là   ZendSkeletonApplication c xây dn Zend Framework 2 cung c    a toàn b   n Zend Framework 2, các modules m r ng, các t p tin c   kh i t o mt ng d ng 

Nhc và t p tin quan tr ng có trong b d án m u (khung)     

- application.config.php data module

 configa nh ng c u hình c a toàn b     ng d ng  ng; nó bao g m t p tin c         module s    c s d ng, các thi t l p c u hình cho toàn b ng d     ng và mc autoload là nh ng t p tin c u hình t     c load vào

ng d ng    r ng (*.local.php ho c *.global.php) Nh ng t p    tin c r ng là (*.local.php) s b b qua khi commit d      án lên Git, nên nh ng thông tin nh y c  n k t n i    d li u t vào trong các tp tin này

 datac ch a nh ng d li   c cached t database, ho c cache   nh ng toàn b c u hình c   a ng d ng 

Gi i thi u Zend Framework

Mô hình MVC

MVC (Model-View-Controller) là m u ki n trúc ph n m m Khi s       mi phát tri n ph n m m cô l p các nguyên t nghi p v và     c   giao dii dùng mn mm phát tri n theo m u MVC t  o nhi u thu n l i cho vi c b o trì vì các ph n nghi p v và giao di        n nhau

 Model (T ng d ầ ữliệu): Là mng ho c m t t p h ng bi u di n cho ph n d u c    li c giao nhi m v   cung c p d   li  d li u vào các kho ch a d li   liu T t c các nghi p v     c th c thi Model D   liu vào t 

i dùng s thông qua Vi c ki m tra Model  

   d li u Vi c truy xu t, xác nh    li u là mt phn c a Model 

 View (Tầng giao diện): Là ph n giao di n v  i dùng, bao g m vi c hi n d u ra màn hình, cung c p các menu, nút b m, h  li   i tho i,  ch n l a  i dùng có th thêm, xóa, s a, tìm ki m và làm các   

   i v i d li u trong h th ng   ng, các thông tin cn hi n th   c l y t thành ph n Model 

 Controller (Tầng điều khi n): Là phể u khi n c a ng du

ng các nhi m v   c (method) có ch x lý nhi m v    u trách nhi m x   ng v m t giao  

t B o - 13BCNTT2  11 di i v i Model, và cu i cùng là ch n m t View thích    h  hi n th ra màn hình 

 ho  ng c a mô hình MVC 

 Ưu điểm: Th hin tính chuyên nghi p trong l p trình, phân tích thi t k    

c chia thành các thành ph c l p nên giúp phát tri n ng d ng   

 Nhược điểmi v i d án nh vi c áp d ng mô hình MC gây c ng       k nh, t n th i gian trong quá trình phát tri n T n th i gian trung chuy n        d u c a các thành ph n li  

T ng quan v Zend Framework

Zend Framework là m t t p h p các l     i n l p trình vi t b ng PHP   nh m cung c p m t giao di n l p trình chu n cho các nhà phát tri      n ng d ng Ngoài 

  mã hóa code, m t editor có th kéo & th d dàng s d ng v i s h cho các công ngh Front-         tr End (H™L, CSS, JavaScript), debugging tr c tuy n nhanh, các công c PHP Unit   Testing, và mt Database Wizard giúp k t n    d li c

t B o - 13BCNTT2  12 t o ra v u ki cung c p các ng d ng ch   ng cao

Zend Framework là m PHP Framework m nh m và t    v i r t nhi u c u hình tùy ch n vì th nó r t tuy t v i s d ng cho nh ng d án               ph c t  b n l n phát hành s p t i, Zend Framework 3 s       c t v n s h PHP 5.5 tr   tr  

Phiên b n hi n t i, Zend Framework 2 mà em s d ng       tài này là mt Framework mã ngu n m phát tri n các ng d ng Web và các d ch v s d ng          

c vi t d a trên ngôn ng l p trình phiên b n PHP 5.3 ho     

Zend Framework 2 s d ng mô hình ki n trúc MVC và hoàn toàn vi t theo ki u     

i  ng c vi t trên ngôn ng l p trình phiên b n PHP 5.3 ho c cao     

 nên Framework này h  tr Namespace, Late tatic S Binding, hàm Lambda và Closure

5.2.1 Lý do ch n Zend Framework 

Hin nay có r t nhi u lo i PHP Framework     Laravel, Symfony, CodeIgniter, Yii H u h t các PHP F  m y u và th m nh    khác nhau, ví d  c ph bi n t phiên b n     

nh m , c ng thêm m t c   ng phát tri n r ng l n Theo th ng kê     trên trang ch  Ze   n th m hi n t i, phiên b n Zend   

i 15 trit t i v c li, Laravel, Symfony, CodeIgniter, Yii l i là 1 lo i PHP F  i mui Zend Framework,

  nh ng PHP Framework này c ít  ng phát tri n h tr      Frameworkn có i la ch n vì tính thân thi n v  i dùng và d  s d ng  

 Zend Framework c vi t theo ki u OOP nên nó th  ng các th  m nh c a ki u vi t này Các l p c     a Zend Framework c BA

(Business Analysis) rt chu n và khi c n m r ng có th dùng th dùng       tính ch t th a k c a OOP Nói chung là chúng ta không ph i ch nh s      a core c a  Zend Framework

 Hn m i c a Zend Framework ko có nhii trong core nên ta có th  d dàng update

 Zend Framework tích hc g  t c n PHP và các

   s d ng Ví d : Smarty, Pear, FCKEditer,  Drupal

 Cách vi t c a Zend Framework r t thân thi    n Tích h p  nh ng công ngh m i nh t c a l           Syndication, Web Services

 Zend Framework c s  d ng trong các d án l n và có k ho ch phát     trin dài lâu

 M t nhi u th  tìm hiu v     a n s c Zend Framework

 M t s l  nh, có s  i s d ng   khi c p nh t các phiên b n   

Các l p ph bi n

 Zend_Config: giúp chúng ta c u hình ng d ng, ví d     u hình thông tin kt n  d u, c u hình tên mi n, email li  

 Zend_Acl: giúp chúng ta phân quy n cho ng d ng chi ti t trên t ng action,      controller và module

 Zend_Auth: s d  xác thc tài kho n c i dùng p vào h thng

 Zend_Crypt: s d  mã hóa mt chung h p  mã hóa m t kh    d u li

 Zend_Db: di tu ng PDO (PHP Data Objects), cung c p các   thc kt n  n các lo  d u (MySQL, SQL Server, Couchbase ) li

 Zend_Controller: giúp l y các Request t phía Client và th c thi nó b ng các    Action

 Zend_View: chính là t ng View trong mô hình MVC, giúp chúng ta hi n th    nh ng k t qutrong x t Controller và Models ra bên ngoài lý 

 Zend_Router: cu hình url c a ng d ng   

 Zend_Paginator: giúp phân trang d u khi h li  thng có s  ng b n ghi  l n 

 Zend_Cache: giúp cho các ng d ng    t i d  liu, giúp cho h  thng không ph i s d ng CPU ho c truy xu t vào        d liu quá nhi u 

 Zend_Currency:   x lý, hin th nh d  n ti n t  

 Zend_Date: x lý t t c các v   liên quan th i gian 

 Zend_Mail: h    tr s d ng các giao th c g i, nh n email   

 Zend_Feed: x lý v i Rss và Atom feeds 

 Zend_File: cung c p, h  tr   m r ng vic Upload và Download c a các t p tin Nó gn li n v i kim tra các cha tp tin

 Zend_Formn hóa vi c t o form và x lý các ng d ng trên Website     

 Zend_Filters: lc d li c khi th c hi n m t quá trình x     

 Zend_Validate  ki m tra d li u nh p vào có phù h p v i yêu c u       hay không

 Zend_Pdf: s d   t o và x lý các file PDF, l p   c dùng cho các chn báo cáo

 Zend_Search: là mt lp cung cc search trên ni dung ca các tthông tin

 Zend_Translate: là gii pháp cho các ng d .

XÂY D NG H TH NG CMS 18 Ự Ệ Ố 1 Yêu c u nghi p v c  a h th ng

Qu n lý tài kho n cá nhân

Chi qu n tr c p nh t thông tin      tên, e- mail, i ding v i tài kho n mà h    p h thng CMS

Chi qu n tr c p nh t m t kh u c a tài kho n mà h          ng

Chi qu n tr xem các ho  ng trong h th ng c a tài    kho n mà h   p h thng CMS

Chi qun tr  t khi h th ng CMS.

Qu i dùng

Chi qu n tr   c danh sách i dùng  có trong h   th ng i qu n tr có th xem chi ti t thông tin c    a tng nhóm hi n th    danh sách nhóm ho c c p nh  i dùng vào nhóm, phân quy n cho nhóm 

Chi qu n tr tìm ki  i dùng theo m t  ho c nhi u ký t xu t hi n trong tên nhóm Sau khi tìm ki m xong h       thng s hi n th  i qu n tr có th xem ho c c p nh t thông tin       c a m t nhóm b t k    

Qu  i dùng

Chi qu n tr   i dùng  th ng i qu n tr có th ch n b t k       i dùng nào t    c p nh t  các thông tin c

Chi qu n tr tìm ki  i dùng  thng theo tiêu chí: m t ho c nhi u ký t xu t hi     i dùng Sau khi tìm ki m, h  thng s hi n th k t qu      i dùng, i qu n tr s    ch n t i dùng b t k c p nh   u mu n 

Qu n lý controler

Chi qu n tr   thêm các controller mi vào h th ng (các   controller c phát tri n trên n n t ng Zend Framework 2.0 d a theo chu n mô      hình MVC) Vic này nhng ng yêu c u v tính m c a h      thng

Chi qu n tr xem danh sách controller    th ng i qu n tr có th ch n m t controller t danh sách và c p nh t thông tin         ca các controller 

Chcòn i qu n tr tìm ki m các controller theo b t c ký      t xu t hi n trong controller, sau khi tìm ki m xong, h     thng s hi n th danh sách    controller  i qu n tr có th c p nh t thông tin c     a m t controller b t k n   u mun.

Qu n lý action

Chi qu n tr  thêm các action m i vào h  thng (các action

 c phát tri n trên n n t ng Zend Framework 2.0 d a theo chu n mô hình     MVC) Vic này nhng ng yêu c u v tính m c a h      th ng

Chi qu n tr xem danh sách   action  th ng,

i qu n tr có th ch n m t action t danh sách và c p nh t thông tin c a các          action 

Ch còn i qu n tr tìm ki m các    action theo b t c ký t  xu t hi n trong action, sau khi tìm ki m xong, h    thng s hi n th danh sách action   

 i qu n tr có th c p nh t thông tin c a m t action b t k n u mu n           

Qu n lý menu

Chi qu n tr thêm menu M i menu g m các thông tin     sau:

Chi qu n tr     th ng

i qu n tr có th ch n b t k menu nào t          c p nh t các thông tin  c

Chi qu n tr tìm ki    th ng theo tiêu chí: m t ho c nhi u ký t xu t hi n trong thông tin menu Sau khi tìm ki m,        h thng s hi n th k t qu là danh sác     i qu n tr s   ch n t ng menu bt k c p nh   u mu n 

Qu n lý h   th ng

Chi qu n tr c p nh t các thông tin c       s d ng giá tr c a tham s c   thng v i các m 

Chi qu n tr th ng kê truy c p h     thng phía Front-End,

Tt c ngu n d u th li c l y t Google Analytic

Chi qu n tr th ng kê các bài vi   c comment nhi u  nht trong mt kho ng th i qun tr  chn

Chi qu n tr th ng kê các bài vi   c like nhi u nh t   trong m t kho ng th  i qu n tr  chn.

Chi qu n tr   ng mà chính mình

c hi n trong h  thc chia làm 3 lo i:

- Info: Các log d ng thông báo 

- Error: Các log thông báo li.

- System: Các thao tác cc hi n trong h  thng.

Qu n lý chuyên m c

Chi qun tr thêm chuyên m c  

Chi qu n tr xem danh sách chuyên m   thi qu n tr có th ch n b t k chuyên m c nào t           c p nh t  các thông tin ca chuyên m

Chi qu n tr tìm ki m chuyên m    thng theo tiêu chí: mt hoc nhi u ký t xu t hi n trong thông tin chuyên m c Sau      khi tìm ki m, h  thng s hi n th k t qu là danh sách chuyên m     i qu n tr s    ch n t ng chuyên m c b t k   c p nh t thông tin chuyên m u mu n 

Qu n lý lo i bài vi t

Chi qu n tr thêm lo i bài vi   t.

1.9.2 Danh sách loi bài vi t 

Chi qu n tr xem danh sách lo i bài vi    thi qu n tr có th ch n b t k      loi bài vi t nào t     c p nh t  các thông tin c a lo i bài vi

Chi qu n tr tìm ki m lo i bài vi     thng theo tiêu chí: m t ho c nhi u ký t xu t hi n trong thông tin lo i bài vi t Sau         khi tìm kim, h th ng s hi n th k t qu là danh sách lo i bài vi        i qu n tr s    ch n t ng lo i bài vi t b t k     c p nh t thông tin lo i bài vi  u mu n 

Qu n lý tag bài vi t

Chi qun tr thêm tag bài vi t  

1.10.2 Danh sách tag bài vi t 

Chi qu n tr xem danh sách tag bài vi   thi qu n tr có th   chn b t k tag bài vi t nào t     c p nh t các   thông tin ca tag bài vi

Chi qu n tr tìm ki m tag bài vi    thng theo tiêu chí: m t ho c nhi u ký t xu t hi n trong thông tin tag bài vi t Sau        khi tìm ki m, h  thng s hi n th k t qu là danh sách tag bài vi     i qun tr s   ch n t ng tag bài vi t b t k    c p nh t thông tin tag bài vi u mu n 

Qu n lý bài vi t

Chcho phép các phóng viên, cng ban son và t ng biên t p có th    t, biên tp và xu t b n bài vi t     trình chung ca các tòa so n báo di n t    nh và phê duy t t B thông tin    và truy n thông 

Hình 3.1 Quy trình nghi p v xu  t bn bài vi t.

Ngoài ra cht trong h th ng theo các tiêu chí sau:

- Theo ký txut hi, trích d n ho c ni dung

- Theo trng thái bài vi t.

- Theo ngày xut bn: t ngày n ngày  

Kt qu tìm ki m s hi n th danh sách tìm ki m g m các thông tin: s       th  t , trng thái, ngày xut b, tác gi 

Chi qu n tr c p nh t bài vi t, các thông tin liên quan     

- Ngày gi xu t b n: M   nh là ngày gi hi n t i trong h thng, n u là ngày  gi l    hi n t i thì h th ng s xu t b n bài vi t vào ngày gi        

- Ghi chú: Là n i dung ghi chú v thao tác c  i qu n tr v i bài vi t (H      xu ng, tr v trình bày soát l   i, tr  v biên t p ) 

- Chuyên m c: Là chuyên m c mà bài vi t s xu t b      thng cho phép bài vit xut bng th i vào nhi u chuyên m   c.

1.11.2 Danh sách bài vit cá nhân

- Danh sách bài vi t c a tôi: Ch  i qu n tr xem các bài   vithng

- Danh sách bài vi m i qu n tr xem các bài vi t c a mình    

- Danh sách bài vi t ch biên t p   i qu n tr xem các bài vi t c   a

- Danh sách bài vit ch soát l i qui n tr xem các bà i vit ca

- Danh sách bài vi t ch xu t b n    i qu n tr xem các bài vi t c   a

- Danh sách bài vit b i qun n tr xem các bài vi t ca mì  th t bn

- Danh sách bài vi t b l i  tr  i qu n tr xem các bài vi t c   a

- Danh sách bài vi t b h xu ng    i qu n tr xem các bài vi t c   a

1.11.3 Danh sách bài vit ch  x lý

- Danh sách bài vi t ch biên t p   : Chi qun tr có quy n   biên t p bài vi t s    c danh sách bài vi biên t p và biên t p l  i ni có quy n biên t p s bài vi t v cho phóng viên n u bài vi   tr    t

- Danh sách bài vi t ch soát l i   : Chi qu n tr có quy  n soát li bài vi t  vào xem c danh sách bài vi soát l  a l s i.

- Danh sách bài vi t ch xu t b n    : Chi qu n tr có quy  n xu t b n bài vi t    c danh sách bài vi xu t b  xu t b n  

i có quy n xu t b n có quy n h nh ng bài vi       t b n, không cho phép hi n th trên Front-End c Website   a

Chi qu n tr có quy n xu t b n bài vi t s        c danh sách bài vi xut bn.

1.11.5 Danh sách bài vit b  h xu ng 

Chi qu n tr có quy n xu t b n bài vi t c       danh sách bài vi  b h xu ng 

Chi qun tr có quy n xem toàn b các bài vi   t trong h thng

Chi qu n tr biên t p bài vi    t b n có trong h  thi qu n tr có th s p x p th t bài vi       t b n trong các chuyên  m c.

Qu n lý comment

Chi qu n tr xem danh sách comment v bài vi t g i lên      h  thng (ph n g i thông tin comment v bài vi   c bc thc hi n phía  

Front End) i qu n tr có th c p nh t thông tin t ng comment: s a, xóa, xu       t b n, h xu ng, t    ch i qui n n tr có các quy ng

Chc i qu n tr tìm ki   thng theo tiêu chí: m t ho c nhi u ký t xu t hi n trong thông tin comment, tr ng thái,        thi gian g i Sau khi tìm ki m, h   thng s hi n th k t qu là danh sách comment,     

i qu n tr s ch n t ng comment b t k c p nh        u mun

1.12.1 Danh sách comment ch x   lý

Ch i qu n tr có th xem danh sách comment ch x     lý v bài vi t gi lên h thng Ni qu n tr có th c p nh t thông tin t ng comment:       sa, xóa, xu t b n, h xung, t ch i qui n n tr có các quy ng 1.12t bn

Ch i qu n tr có th xem     t b n v bài vi t gi lên h thng Ni qu n tr có th c p nh t thông tin t ng comment:       sa, xóa, xu t b n, h xung, t ch i qui n n tr có các quy ng 1.12.3 Danh sách comment b h xu ng   

Ch i qu n tr có th xem danh sách comment b h xu ng       v bài vi t gi lên h thng Ni qu n tr có th c p nh t thông tin t ng comment:       sa, xóa, xu t b n, h xung, t ch i qui n n tr có các quy ng 1.12.4 Danh sách comment b h xu ng   

Ch i qu n tr có th xem danh sách comment b t ch i       v bài vi t gi lên h thng Ni qu n tr có th c p nh t thông tin t ng comment:       sa, xóa, xu t b n, h xung, t ch i qui n n tr có các quy ng 1.12.5 Danh sách comment theo bài vi t 

Ch i qu n tr có th xem danh sách comment v bài vi t      g i lên h  thng theo danh sách bài vi t trong h  thng T i m i bài vi  i qun tr có th thc chi ti t s   ng comment ch x    t b n, b h xu ng, b     t ch i qu n tr có th c p nh t thông tin t ng comment: s a, xóa, xui        t b n, h xu ng, t    ch i qui n n tr có các quy ng

Mô hình tình hu i dùng

CHƯƠNG I I XÂY D NG H Ự Ệ TH Ố NG CMS

1.1 Qu n lý tài kho n cá nhân  

Chi qu n tr c p nh t thông tin      tên, e- mail, i ding v i tài kho n mà h    p h thng CMS

Chi qu n tr c p nh t m t kh u c a tài kho n mà h          ng

Chi qu n tr xem các ho  ng trong h th ng c a tài    kho n mà h   p h thng CMS

Chi qun tr  t khi h th ng CMS

Chi qu n tr   c danh sách i dùng  có trong h   th ng i qu n tr có th xem chi ti t thông tin c    a tng nhóm hi n th    danh sách nhóm ho c c p nh  i dùng vào nhóm, phân quy n cho nhóm 

Chi qu n tr tìm ki  i dùng theo m t  ho c nhi u ký t xu t hi n trong tên nhóm Sau khi tìm ki m xong h       thng s hi n th  i qu n tr có th xem ho c c p nh t thông tin       c a m t nhóm b t k    

Chi qu n tr   i dùng  th ng i qu n tr có th ch n b t k       i dùng nào t    c p nh t  các thông tin c

Chi qu n tr tìm ki  i dùng  thng theo tiêu chí: m t ho c nhi u ký t xu t hi     i dùng Sau khi tìm ki m, h  thng s hi n th k t qu      i dùng, i qu n tr s    ch n t i dùng b t k c p nh   u mu n 

Chi qu n tr   thêm các controller mi vào h th ng (các   controller c phát tri n trên n n t ng Zend Framework 2.0 d a theo chu n mô      hình MVC) Vic này nhng ng yêu c u v tính m c a h      thng

Chi qu n tr xem danh sách controller    th ng i qu n tr có th ch n m t controller t danh sách và c p nh t thông tin         ca các controller 

Chcòn i qu n tr tìm ki m các controller theo b t c ký      t xu t hi n trong controller, sau khi tìm ki m xong, h     thng s hi n th danh sách    controller  i qu n tr có th c p nh t thông tin c     a m t controller b t k n   u mun

Chi qu n tr  thêm các action m i vào h  thng (các action

 c phát tri n trên n n t ng Zend Framework 2.0 d a theo chu n mô hình     MVC) Vic này nhng ng yêu c u v tính m c a h      th ng

Chi qu n tr xem danh sách   action  th ng,

i qu n tr có th ch n m t action t danh sách và c p nh t thông tin c a các          action 

Ch còn i qu n tr tìm ki m các    action theo b t c ký t  xu t hi n trong action, sau khi tìm ki m xong, h    thng s hi n th danh sách action   

 i qu n tr có th c p nh t thông tin c a m t action b t k n u mu n           

Chi qu n tr thêm menu M i menu g m các thông tin     sau:

Chi qu n tr     th ng

i qu n tr có th ch n b t k menu nào t          c p nh t các thông tin  c

Chi qu n tr tìm ki    th ng theo tiêu chí: m t ho c nhi u ký t xu t hi n trong thông tin menu Sau khi tìm ki m,        h thng s hi n th k t qu là danh sác     i qu n tr s   ch n t ng menu bt k c p nh   u mu n 

Chi qu n tr c p nh t các thông tin c       s d ng giá tr c a tham s c   thng v i các m 

Chi qu n tr th ng kê truy c p h     thng phía Front-End,

Tt c ngu n d u th li c l y t Google Analytic

Chi qu n tr th ng kê các bài vi   c comment nhi u  nht trong mt kho ng th i qun tr  chn

Chi qu n tr th ng kê các bài vi   c like nhi u nh t   trong m t kho ng th  i qu n tr  chn.

Chi qu n tr   ng mà chính mình

c hi n trong h  thc chia làm 3 lo i:

- Info: Các log d ng thông báo 

- Error: Các log thông báo li.

- System: Các thao tác cc hi n trong h  thng

Chi qun tr thêm chuyên m c  

Chi qu n tr xem danh sách chuyên m   thi qu n tr có th ch n b t k chuyên m c nào t           c p nh t  các thông tin ca chuyên m

Chi qu n tr tìm ki m chuyên m    thng theo tiêu chí: mt hoc nhi u ký t xu t hi n trong thông tin chuyên m c Sau      khi tìm ki m, h  thng s hi n th k t qu là danh sách chuyên m     i qu n tr s    ch n t ng chuyên m c b t k   c p nh t thông tin chuyên m u mu n 

1.9 Qu n lý lo i bài vi t   

Chi qu n tr thêm lo i bài vi   t.

1.9.2 Danh sách loi bài vi t 

Chi qu n tr xem danh sách lo i bài vi    thi qu n tr có th ch n b t k      loi bài vi t nào t     c p nh t  các thông tin c a lo i bài vi

Chi qu n tr tìm ki m lo i bài vi     thng theo tiêu chí: m t ho c nhi u ký t xu t hi n trong thông tin lo i bài vi t Sau         khi tìm kim, h th ng s hi n th k t qu là danh sách lo i bài vi        i qu n tr s    ch n t ng lo i bài vi t b t k     c p nh t thông tin lo i bài vi  u mu n 

1.10 Qu n lý tag bài vi t  

Chi qun tr thêm tag bài vi t  

1.10.2 Danh sách tag bài vi t 

Chi qu n tr xem danh sách tag bài vi   thi qu n tr có th   chn b t k tag bài vi t nào t     c p nh t các   thông tin ca tag bài vi

Chi qu n tr tìm ki m tag bài vi    thng theo tiêu chí: m t ho c nhi u ký t xu t hi n trong thông tin tag bài vi t Sau        khi tìm ki m, h  thng s hi n th k t qu là danh sách tag bài vi     i qun tr s   ch n t ng tag bài vi t b t k    c p nh t thông tin tag bài vi u mu n 

Chcho phép các phóng viên, cng ban son và t ng biên t p có th    t, biên tp và xu t b n bài vi t     trình chung ca các tòa so n báo di n t    nh và phê duy t t B thông tin    và truy n thông 

Hình 3.1 Quy trình nghi p v xu  t bn bài vi t.

Ngoài ra cht trong h th ng theo các tiêu chí sau:

- Theo ký txut hi, trích d n ho c ni dung

- Theo trng thái bài vi t.

- Theo ngày xut bn: t ngày n ngày  

Kt qu tìm ki m s hi n th danh sách tìm ki m g m các thông tin: s       th  t , trng thái, ngày xut b, tác gi 

Chi qu n tr c p nh t bài vi t, các thông tin liên quan     

- Ngày gi xu t b n: M   nh là ngày gi hi n t i trong h thng, n u là ngày  gi l    hi n t i thì h th ng s xu t b n bài vi t vào ngày gi        

- Ghi chú: Là n i dung ghi chú v thao tác c  i qu n tr v i bài vi t (H      xu ng, tr v trình bày soát l   i, tr  v biên t p ) 

- Chuyên m c: Là chuyên m c mà bài vi t s xu t b      thng cho phép bài vit xut bng th i vào nhi u chuyên m   c.

1.11.2 Danh sách bài vit cá nhân

- Danh sách bài vi t c a tôi: Ch  i qu n tr xem các bài   vithng

- Danh sách bài vi m i qu n tr xem các bài vi t c a mình    

- Danh sách bài vi t ch biên t p   i qu n tr xem các bài vi t c   a

- Danh sách bài vit ch soát l i qui n tr xem các bà i vit ca

- Danh sách bài vi t ch xu t b n    i qu n tr xem các bài vi t c   a

- Danh sách bài vit b i qun n tr xem các bài vi t ca mì  th t bn

- Danh sách bài vi t b l i  tr  i qu n tr xem các bài vi t c   a

- Danh sách bài vi t b h xu ng    i qu n tr xem các bài vi t c   a

1.11.3 Danh sách bài vit ch  x lý

- Danh sách bài vi t ch biên t p   : Chi qun tr có quy n   biên t p bài vi t s    c danh sách bài vi biên t p và biên t p l  i ni có quy n biên t p s bài vi t v cho phóng viên n u bài vi   tr    t

- Danh sách bài vi t ch soát l i   : Chi qu n tr có quy  n soát li bài vi t  vào xem c danh sách bài vi soát l  a l s i.

- Danh sách bài vi t ch xu t b n    : Chi qu n tr có quy  n xu t b n bài vi t    c danh sách bài vi xu t b  xu t b n  

i có quy n xu t b n có quy n h nh ng bài vi       t b n, không cho phép hi n th trên Front-End c Website   a

Chi qu n tr có quy n xu t b n bài vi t s        c danh sách bài vi xut bn.

1.11.5 Danh sách bài vit b  h xu ng 

Chi qu n tr có quy n xu t b n bài vi t c       danh sách bài vi  b h xu ng 

Chi qun tr có quy n xem toàn b các bài vi   t trong h thng

Chi qu n tr biên t p bài vi    t b n có trong h  thi qu n tr có th s p x p th t bài vi       t b n trong các chuyên  m c.

Chi qu n tr xem danh sách comment v bài vi t g i lên      h  thng (ph n g i thông tin comment v bài vi   c bc thc hi n phía  

Front End) i qu n tr có th c p nh t thông tin t ng comment: s a, xóa, xu       t b n, h xu ng, t    ch i qui n n tr có các quy ng

Chc i qu n tr tìm ki   thng theo tiêu chí: m t ho c nhi u ký t xu t hi n trong thông tin comment, tr ng thái,        thi gian g i Sau khi tìm ki m, h   thng s hi n th k t qu là danh sách comment,     

i qu n tr s ch n t ng comment b t k c p nh        u mun

1.12.1 Danh sách comment ch x   lý

Ch i qu n tr có th xem danh sách comment ch x     lý v bài vi t gi lên h thng Ni qu n tr có th c p nh t thông tin t ng comment:       sa, xóa, xu t b n, h xung, t ch i qui n n tr có các quy ng 1.12t bn

Ch i qu n tr có th xem     t b n v bài vi t gi lên h thng Ni qu n tr có th c p nh t thông tin t ng comment:       sa, xóa, xu t b n, h xung, t ch i qui n n tr có các quy ng 1.12.3 Danh sách comment b h xu ng   

Ch i qu n tr có th xem danh sách comment b h xu ng       v bài vi t gi lên h thng Ni qu n tr có th c p nh t thông tin t ng comment:       sa, xóa, xu t b n, h xung, t ch i qui n n tr có các quy ng 1.12.4 Danh sách comment b h xu ng   

Bi  tu  n t

Xem d/s bài viết tại trang chủ

Xem chi tiết bài viết

Xem d/s bài viết theo chuyên mục

Tìm kiếm bài viết

Xem d/s bài viết theo tag

Chia sẻ bài viết lên mạng xã hội

Xem d/s 10 bài viết mới nhất cùng chuyên mục

3.1 Phóng viên / C ng tác viên 

Xem danh sách bài vi t: 

HT xử lý dữ liệu

Chọn chức năng quản lý bài viết

Lấy danh sách bài viết Trả về danh sách bài viết

Chuyển đến màn hình danh sách bài viết

Hiển thị danh sách bài viết

Xem chi tit bài vit:

HT xử lý dữ liệu

Chọn chức năng xem danh sách bài viết

Lấy danh sách bài viết Trả về danh sách bài viết

Chọn bài viết cần xem chi tiết

Lấy thông tin chi tiết bài viết Trả về thông tin chi tiết bài viết

Chuyển đến màn hình chi tiết bài viết Hiển thị danh sách bài viết

Hiển thị thông tin chi tiết bài viết

HT xử lý dữ liệu

Chọn chức năng xem danh sách bài viết

Lấy danh sách bài viết Trả về danh sách bài viết

Chọn bài viết cần xem chi tiết

Lấy thông tin chi tiết bài viết Trả về thông tin chi tiết bài viết

Chuyển đến màn hình chi tiết bài viết Hiển thị danh sách bài viết

Hiển thị thông tin chi tiết bài viết

Bấm vào nút Gửi trưởng ban

Cập nhật dữ liệuTrả về kết thông báo thành côngHiển thị thông báo thành công

HT xử lý dữ liệu

Chọn chức năng thêm bài viết

Lấy thông tin phục vụ thêm bài viết Trả về thông tin phục vụ thêm bài viết

Nhập thông tin bài viết rồi bấm nút Lưu lại, Gửi trưởng ban

Trả về thông báo thành công

Màn hình thêm bài viết

Chuyển đến màn hình thêm bài viết

Hiển thị trang thêm bài viết

Xác thực dữ liệu đầu vào Trả về thông tin nếu lỗi Hiển thị thông báo nếu có lỗi

Hiển thị thông báo nếu thành công

HT xử lý dữ liệu

Lấy thông tin phục vụ thêm mới bài viết Trả về thông tin phục vụ thêm mới bài viết

Nhập thông tin bài viết rồi bấm nút Lưu lại, Gửi trưởng ban

Trả về thông báo thành công

Màn hình sửa bài viết

Hiển thị trang sửa bài viết

Xác thực dữ liệu đầu vào Trả về thông tin nếu lỗi Hiển thị thông báo nếu có lỗi

Hiển thị thông báo nếu thành công

Chọn chức năng xem danh sách bài viết

Lấy danh sách bài viết Trả về danh sách bài viết Hiển thị danh sách bài viết

Chọn bài viết cần sửa

Chuyển đến màn hình sửa bài viết

Xem danh sách bài vi t: nhóm Phóng viên / C ng tác viên 

Xem chi ti t bài vi t   nhóm Phóng viên / C ng tác viên 

i, Gng ban, G i  n, Tr v phóng viên / c ng tác viên:   

Trưởng ban HT xử lý dữ liệu

Chọn chức năng xem danh sách bài viết

Lấy danh sách bài viết Trả về danh sách bài viết

Chọn bài viết cần xem chi tiết

Lấy thông tin chi tiết bài viết Trả về thông tin chi tiết bài viết

Chuyển đến màn hình chi tiết bài viết Hiển thị danh sách bài viết

Hiển thị thông tin chi tiết bài viết

Bấm vào nút Gửi trưởng ban, Gủi thư ký tòa soạn, Trả về phóng viên / cộng tác viên

Cập nhật dữ liệuTrả về kết thông báo thành côngHiển thị thông báo thành công

Trưởng ban Màn hình chính

HT xử lý dữ liệu

Chọn chức năng thêm bài viết

Lấy thông tin phục vụ thêm bài viết Trả về thông tin phục vụ thêm bài viết

Nhập thông tin bài viết rồi bấm nút Lưu lại, Gửi trưởng ban, Gủi thư ký tòa soạn, Trả về phóng viên / cộng tác viên

Trả về thông báo thành công

Màn hình thêm bài viết

Chuyển đến màn hình thêm bài viết

Hiển thị trang thêm bài viết

Xác thực dữ liệu đầu vào Trả về thông tin nếu lỗi Hiển thị thông báo nếu có lỗi

Hiển thị thông báo nếu thành công

Trưởng ban HT xử lý dữ liệu

Lấy thông tin phục vụ thêm mới bài viết Trả về thông tin phục vụ thêm mới bài viết

Nhập thông tin bài viết rồi bấm nút Lưu lại, Gửi trưởng ban, Gủi thư ký tòa soạn, Trả về phóng viên / cộng tác viên

Trả về thông báo thành công

Màn hình sửa bài viết

Hiển thị trang sửa bài viết

Xác thực dữ liệu đầu vào Trả về thông tin nếu lỗi Hiển thị thông báo nếu có lỗi

Hiển thị thông báo nếu thành công

Chọn chức năng xem danh sách bài viết

Lấy danh sách bài viết Trả về danh sách bài viết Hiển thị danh sách bài viết

Chọn bài viết cần sửa

Chuyển đến màn hình sửa bài viết

Xem danh sách bài vi nhóm Phóng viên / C ng tác viên 

Xem chi ti t bài vi t   nhóm Phóng viên / C ng tác viên 

i, Gng ban, G i  n, Tr v phóng viên / c ng tác viên,   

Gi tng biên t p, Tr v    ng ban:

HT xử lý dữ liệu

Chọn chức năng xem danh sách bài viết

Lấy danh sách bài viết Trả về danh sách bài viết

Chọn bài viết cần xem chi tiết

Lấy thông tin chi tiết bài viết Trả về thông tin chi tiết bài viết

Chuyển đến màn hình chi tiết bài viết Hiển thị danh sách bài viết

Hiển thị thông tin chi tiết bài viết

Bấm vào nút Gửi trưởng ban, Gủi thư ký tòa soạn, Trả về phóng viên / cộng tác viên,

Gửi tổng biên tập, Trả về trưởng ban Cập nhật dữ liệu

Trả về kết thông báo thành côngHiển thị thông báo thành công

HT xử lý dữ liệu

Chọn chức năng thêm bài viết

Lấy thông tin phục vụ thêm bài viết Trả về thông tin phục vụ thêm bài viết

Nhập thông tin bài viết rồi bấm nút Lưu lại, Gửi trưởng ban, Gủi thư ký tòa soạn, Trả về phóng viên / cộng tác viên, Gửi tổng biên tập, Trả về trưởng ban

Trả về thông báo thành công

Màn hình thêm bài viết

Chuyển đến màn hình thêm bài viết

Hiển thị trang thêm bài viết

Xác thực dữ liệu đầu vào Trả về thông tin nếu lỗi Hiển thị thông báo nếu có lỗi

Hiển thị thông báo nếu thành công

HT xử lý dữ liệu

Lấy thông tin phục vụ thêm mới bài viết Trả về thông tin phục vụ thêm mới bài viết

Nhập thông tin bài viết rồi bấm nút Lưu lại, Gửi trưởng ban, Gủi thư ký tòa soạn, Trả về phóng viên / cộng tác viên, Gửi tổng biên tập, Trả về trưởng ban

Trả về thông báo thành công

Màn hình sửa bài viết

Hiển thị trang sửa bài viết

Xác thực dữ liệu đầu vào Trả về thông tin nếu lỗi Hiển thị thông báo nếu có lỗi

Hiển thị thông báo nếu thành công

Chọn chức năng xem danh sách bài viết

Lấy danh sách bài viết Trả về danh sách bài viết Hiển thị danh sách bài viết

Chọn bài viết cần sửa

Chuyển đến màn hình sửa bài viết

Xem danh sách bài vi nhóm Phóng viên / C ng tác viên 

Xem chi ti t bài vi t   nhóm Phóng viên / C ng tác viên 

i, Gng ban, G i  n, Tr v phóng viên / c ng tác viên,   

Gi tng biên t p, Tr v    ng ban, Xut bn, H xu ng, Tr v     n:

Tổng biên tập HT xử lý dữ liệu

Chọn chức năng xem danh sách bài viết

Lấy danh sách bài viết Trả về danh sách bài viết

Chọn bài viết cần xem chi tiết

Lấy thông tin chi tiết bài viết Trả về thông tin chi tiết bài viết

Chuyển đến màn hình chi tiết bài viết Hiển thị danh sách bài viết

Hiển thị thông tin chi tiết bài viết

Bấm vào nút Gửi trưởng ban, Gủi thư ký tòa soạn, Trả về phóng viên / cộng tác viên, Gửi tổng biên tập, Trả về trưởng ban,

Xuất bản, Hạ xuống, Trả về thư ký tòa soạn Cập nhật dữ liệu

Trả về kết thông báo thành côngHiển thị thông báo thành công

Tổng biên tập Màn hình chính

HT xử lý dữ liệu

Chọn chức năng thêm bài viết

Lấy thông tin phục vụ thêm bài viết Trả về thông tin phục vụ thêm bài viết

Nhập thông tin bài viết rồi bấm nút Lưu lại, Gửi trưởng ban, Gủi thư ký tòa soạn, Trả về phóng viên / cộng tác viên, Gửi tổng biên tập, Trả về trưởng ban, Xuất bản, Hạ xuống, Trả về thư ký tòa soạn

Trả về thông báo thành công

Màn hình thêm bài viết

Chuyển đến màn hình thêm bài viết

Hiển thị trang thêm bài viết

Xác thực dữ liệu đầu vào Trả về thông tin nếu lỗi Hiển thị thông báo nếu có lỗi

Hiển thị thông báo nếu thành công

Tổng biên tập HT xử lý dữ liệu

Lấy thông tin phục vụ thêm mới bài viết Trả về thông tin phục vụ thêm mới bài viết

Nhập thông tin bài viết rồi bấm nút Lưu lại, Gửi trưởng ban, Gủi thư ký tòa soạn, Trả về phóng viên / cộng tác viên, Gửi tổng biên tập, Trả về trưởng ban

Trả về thông báo thành công

Màn hình sửa bài viết

Hiển thị trang sửa bài viết

Xác thực dữ liệu đầu vào Trả về thông tin nếu lỗi Hiển thị thông báo nếu có lỗi

Hiển thị thông báo nếu thành công

Chọn chức năng xem danh sách bài viết

Lấy danh sách bài viết Trả về danh sách bài viết Hiển thị danh sách bài viết

Chọn bài viết cần sửa

Chuyển đến màn hình sửa bài viết

Mô hình quan h   d li u c a các b ng n h th ng  

Mô hình quan h   d li u c a các b ng n bài vi t 

THI T K GIAO DI N Ế Ế Ệ CHƯƠNG TRÌNH

Thi t k trang Front End -

Dành cho bc truy c  c bài vi t, trên trang ch bao g m các bài vi   t mi nht theo chuyên mc và không theo chuyên m c.

Hình 4.5 Giao di n trang  ch

// BEGIN L Y D LI U TIN TOP TRONG CSDL Ấ Ữ Ệ

$top3a = $tableArticle >search(array(), 1, 3); - for ($i = 0; $i < count($top3a); $i++)

>convertToHtmlLink($top3a[$i]['title']) ' ' $top3a[$i]['id'] -

$top3b = $tableArticle >search(array(), 2, 3); - for ($i = 0; $i < count($top3b); $i++)

>convertToHtmlLink($top3b[$i]['title']) ' ' $top3b[$i]['id'] -

$top6a = $tableArticle >search(array(), 2, 6); - for ($i = 0; $i < count($top6a); $i++)

>convertToHtmlLink($top6a[$i]['title']) ' ' $top6a[$i]['id'] -

$top6b = $tableArticle >search(array(), 3, 6); - for ($i = 0; $i < count($top6b); $i++)

>convertToHtmlLink($top6b[$i]['title']) ' ' $top6b[$i]['id'] -

// END L Y D LI U TIN TOP TRONG CSDL Ấ Ữ Ệ

// BEGIN L Y D LI U TIN THEO CHUYÊN M C TRONG CSDL Ấ Ữ Ệ Ụ

$mainArticles = array(); foreach ($list as $item)

$articles = $tableArticle >search(array($item >id), 1, 3); - - for ($i = 0; $i < count($articles); $i++)

>convertToHtmlLink($articles[$i]['title']) ' ' $articles[$i]['id'] -

// END L Y D LI U TIN THEO CHUYÊN M C TRONG CSDL Ấ Ữ Ệ Ụ

Dành cho bc truy c  c bài vi t, trên trang ch bao g m các bài vi   t mi nht theo chuyên m c.

Hình 4.6 Giao di n trang chuyên m c  

// BEGIN L Y THÔNG TIN CHUYÊN M C TRÊN URL Ấ Ụ

$cateUrl = $this >getEvent() >getRouteMatch() >getParam('cat_alias'); - - -

$page = (int) $this >getEvent() >getRouteMatch() >getParam('page', 1); - - -

$categoriesAlias = explode('/', $cateUrl); for ($i = 0; $i < count($categoriesAlias); $i++) if ($categoriesAlias[$i] == '') unset($categoriesAlias[$i]);

$depth = count($categoriesAlias); if ($depth > 2)

$category = $tableCategory >selectByAlias($catAlias); - if (!$category)

// END L Y THÔNG TIN CHUYÊN M C TRÊN URL Ấ Ụ

// BEGIN L Y D LI U BÀI VI T TRONG CSDL Ấ Ữ Ệ Ế

$list = $tableArticle >search(array($category >id), $page, $pageSize); - - for ($i = 0; $i < count($list); $i++)

>convertToHtmlLink($list[$i]['title']) ' ' $list[$i]['id'] -

$listCount = $tableArticle >searchCount(array($category >id)); - -

// END L Y D LI U BÀI VI T TRONG CSDL Ấ Ữ Ệ Ế

2.3 Trang chi ti t bài vi t  

Dành cho b n c truy c   c n i dung chi ti t ca bài vi t 

Hình 4.7 Giao di n trang chi ti t bài vi t   

// BEGIN L Y ID BÀI VI T TRÊN URL Ấ Ế

$id = $this >getEvent() >getRouteMatch() >getParam('article_id'); - - -

$alias = $this >getEvent() >getRouteMatch() >getParam('article_alias'); - - -

// END L Y ID BÀI VI T TRÊN URL Ấ Ế

// BEGIN L Y D LI U BÀI VI T TRONG CSDL Ấ Ữ Ệ Ế

$obj = $table >selectPublish($id); - if (!$obj)

} if ($this >convertToHtmlLink($obj >title) != $alias) - -

$this >redirect() >toUrl('/' $this >convertToHtmlLink($obj - - - -

>title) ' ' $obj >id '.html') >setStatusCode(301); - - -

// END L Y Ấ D Ữ LI U BÀI VI T TRONG CSDL Ệ Ế

K T LU N Ế Ậ Đánh giá về ặ ạ m t h n ch và hưế ớng phát tri n cể ủa chương trình:

phân tích và xây d ng  c các chcao ca h  thng CMS n lý tên mi n, qu n lý ngôn ng , qu n lý giao di n, qu n lý       nhu n bút, l y tin t     Trang giao dit phá, b  cc sp xt s   h b c có tri nghim tt nht

ng c a em là s phát tri      t m b sung thêm nh ng ch  h thng có th phù h p cho h   thng l n 

Sau khi làm xong bài luc, hc nh ng vi c sau:  

 V m t nghip vu và hic mô hình xut bn bài vi t c a h    thng CMS theo chu t ra ca B thông tin truyộ và ền thông Bic nh  n l i c a các lu ng x   lý xu t b n bài vi t khi s d ng mô hình này   

 V m t công ngh      u và hi c n n t ng Zend   Framework 2, t  ng nên h thng CMS da trên n n t ng này

 i u quan tr  án em nh n th y b n thân   

c h c r t nhiu m i m c v m t nh n th c l n kinh nghi m         

T nh u tiên ch i r t phân vân do d c s  ng d n t n tình c  a thầy Đặng Văn Chuyếtnh ch tài "Xây d ng h ự ệthống CMS d a trên n n t ng Zend Frameworkự ề ả " vì nó phù h p v i em nh t   

t ph i b   u t i làm th nào, ph 

tìm hi u thông qua Internet, tài li u tham kh  i thân, b n bè, và quan  trng nh t là nh s    ng d n t n tình c a thầy Đặng Văn Chuyết, nh ng v    

ng mu gi i quy c nh th y Th y không nh ng d y em      v ki n th c mà th y còn d y em c v cách s ng vì m        i, kinh nghi m làm vi c thc t  T t c nhu này ch c ch n s còn mãi trong em   

Vi kt qu nghiên c u này em hy v ng mình s hoàn thi n d n các ch      cao cp ca h  th ng CMS trong th i gian t i. 

Ngày đăng: 02/02/2024, 00:10

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w