Friday, December 22, 2017

Grav ! Cách tạo một website Blog mà không cần Database và chỉ cần mã nguồn

Đúng như tiêu đề, Grav là một hệ thống quản trị nội dung của Website (CMS - Content Management System) mà không cần dùng đến Database.
Nhắc đến CMS nức danh người ta sẽ nghĩ ngay đến WordPress hay Joomla và Chúng đều dùng Hệ quản trị cơ sở dữ liệu Databases. Nhưng bên cạnh những CMS trên, còn có những nền móng CMS không dùng Databases, được gọi là Flat-file CMS – một hệ thống quản trị nội dung, bài viết và các dữ liệu được lưu trữ trong các tập tin và thư mục.
 

  • Tính di động: Flat-file CMS có thể chuyển sang server khác một cách khá đơn giản, chỉ cần Copy và Paste thư mục chứa tập tin nội dung của Website, trong khi việc di chuyển WordPress tới một server khác cần nhiều bước khá phức tạp.
  • Đơn giản: Không cần phải cấu hình và bảo trì database. toàn bộ những việc cần làm chỉ là upload tập tin lên server.
  • Dễ dàng cập nhật: cả thảy mọi thứ gói gọn trong tập tin và thư mục thành ra rất dễ dàng để nâng cấp phiên bản mới.
  • Một ưu điểm nữa của Grav là tính hướng tính năng, nó hướng đến sự nhỏ nhẹ, trong core gần như rất ít tính năng, nếu bạn muốn có các tính năng bạn cần cài thêm các plugin (ví dụ như lùng trong các bài viết, tính năng mà đã được tích hợp sẵn vào core của WordPress). Thậm chí đến giao diện quản lý backoffice cũng không được tích hợp sẵn mà bạn phải cài nó như một plugin. Điều đó cho phép Grav giảm tối đa dung lượng cũng như loại bỏ các tính năng mặc định không cần thiết.

Những cấu trúc căn bản của Grav CMS đang được xây dựng và phát triển dựa trên những công nghệ được cho là tốt nhất hiện. Điều này đảm bảo cho việc dùng Grav CMS trở thành đơn giản và dễ dàng mở mang sau này. Dưới đây là danh sách một số công nghệ chính mà Grav đang sử dụng:
 

  • Twig Templating: Quản lý giao diện người dùng.
  • Markdown: Tạo nội dung một cách dễ dàng
  • YAML: Đơn giản hóa việc tinh chỉnh cấu hình Website.
  • Parsedown: hỗ trợ cho Markdown và Markdown Extra
  • Doctrine Cache: Website Performance
  • Pimple Dependency Injection Container: mở rộng và bảo trì
  • Symfony Event Dispacher: Xử lý và quản lý Plugins
  • Symfony Console: CLI interface
  • Gregwar Image Library: Những thao tác can hệ đến Image

File Markdown

---
testimonials: 
  - title: Steve Jobs
    quote: Your work is going to fill a large part of your life, and the only way to be truly satisfied is to do what you believe is great work. And the only way to do great work is to love what you do. If you haven't found it yet, keep looking. Don't settle. As with all matters of the heart, you'll know when you find it.
  - title: Mr. Adobe
    quote: This is Photoshop's version  of Lorem Ipsum. Proin gravida nibh vel velit auctor aliquet. Aenean sollicitudin, lorem quis bibendum auctor, nisi elit consequat ipsum, nec sagittis sem nibh id elit. Duis sed odio sit amet nibh vulputate cursus a sit amet mauris. 
---
#What People Are Saying.


File Twig

 

<section id="testimonials">
    <div class="row content">
        <span><i class="quote-left fa fa-quote-left">i>span>
        <div class="text-container">
            <div class="twelve columns">
                 content 
            div>
            <div class="twelve columns flex-container">
                <div class="flexslider">

                    <ul class="slides">
                        % for item in page.header.testimonials %
                            <li>
                                <blockquote>
                                    <p>  item.quote p>
                                    <cite> item.title cite>
                                blockquote>
                            li> 
                        % endfor %
                    ul>

                div>
            div>
        div>
        <span><i class="quote-right fa fa-quote-right">i>span>
    div>
section>


Design
Tiếp theo.
Việc cài đặt Grav CMS cũng khôn xiết đơn giản. Chỉ việc tải file ZIP tại https://getgrav.org/downloads, giải nén và upload lên web root folder là có thể bắt đầu sử dụng.
Grav được viết bằng PHP nên có thể dễ dàng làm quen và nhận được sự tương trợ từ cộng đồng.
Có rất nhiều mẫu theme miễn phí tại https://getgrav.org/downloads/themes
Grav có thể chạy trên hầu hết Webserver phổ thông như Apache, Nginx, LiteSpeed. Và yêu cầu PHP 5.4 trở lên. Ngoài ra, Grav cũng tương trợ những nền tảng cache phổ biến như Memcache, Redis,… để tối ưu hiệu suất.

Trang quản trị

Tuy nhiên, Grav cũng có những nhược điểm của nó. Grav bị giới hạn trong các truy vấn đơn giản, không có được những relationship phức tạp như khi ta sử dụng database.

Tóm lại, tùy thuộc vào từng dự án mà chúng ta có thể chọn CMS cho ăn nhập. Nếu chúng ta cần một trang web lớn với rất nhiều trang, nhiều users, giao diện quản lý và quan hệ dữ liệu phức tạp, thì ta nên sử dụng các CMS truyền thống như WordPress. Còn nếu chúng ta chỉ cần một trang web đơn giản, nhẹ nhàng, dễ quản lý thì Grav là một sự chọn lựa không tồi.

Xin cảm ơn.

Khóa học lập trình Android

No comments:

Post a Comment