Trang chủ WordpressWordpress Development [Lập trình theme WordPress] Lên kế hoạch cấu trúc theme

[Lập trình theme WordPress] Lên kế hoạch cấu trúc theme

bởi Thạch Phạm
5 bình luận 6413 views

Trước khi vào nội dung bài này, mình xin nhắc lại rằng bạn nên cài mới một website WordPress trên localhost và import Theme Unit Test vào để làm nội dung có sẵn, tạo thuận lợi trong việc kiểm tra việc hiển thị theme nhanh chóng và hợp chuẩn cho WordPress.

Trong việc lập trình theme WordPress, trước khi chúng ta bắt đầu các công việc quan trọng như viết code cho nó thì có một việc rất quan trọng bạn nên làm trước đó là phải có kế hoạch cấu trúc theme WordPress của mình như thế nào, sau đó chỉ cần viết code theo thứ tự cấu trúc đó.

Trong một cấu trúc theme WordPress sẽ có các file (template) quan trọng như functions.php, index.php, style.css,…và đó là những file mà chúng ta sẽ làm, nhưng thêm vào đó chúng ta sẽ có thêm file tên là content.php, content-none.php,…để dễ dàng cho việc quản lý các đoạn loop để hiển thị các nội dung.

Tạo thư mục chứa theme

Bây giờ bạn hãy vào thư mục /wp-content/themes và tạo một thư mục mà bạn muốn chứa theme, ví dụ mình sẽ đặt tên thư mục là thachpham.

Trong thư mục này, bạn hãy tạo ra một file style.css với nội dung như sau:


/*
 * |---:[Đoạn này sẽ chứa các đoạn giới thiệu và thông tin về theme, như tên theme (Theme Name), tên tác giả (Theme Author), địa chỉ của tác giả (Author URI),...]:---|

 * Theme Name: ThachPham Theme
 * Description: Đây là một theme đơn giản để thực hành Lập trình theme WordPress
 * Theme URI: https://thachpham.com/serie/lap-trinh-theme-wordpress
 * Version: 1.0
 * Theme Author: ThachPham
 * Author URI: https://thachpham.com
 * Tags: starter theme, framework theme, two-columns, customize
 * Textdomain: thachpham
 */

Mình xin giải thích một xíu về một vài dòng comment được thêm vào theme như:

  • Tags: Nếu bạn có upload theme này lên thư viện WordPress.Org thì cái tag này nghĩa là các từ khóa mà người dùng có thể tìm ra theme của bạn một cách dễ dàng nhất.
  • Text-domain: Thực ra đây là một dòng comment thêm, để cho bạn và người dùng khác có thể biết textdomain trong theme là gì để dễ dàng dịch theme ra một ngôn ngữ khác. Mình sẽ có hướng dẫn cho bạn cách viết code hỗ trợ i18n.

Thêm vào đó, bạn có thể tìm một tấm ảnh và đặt tên là screenshot.png rồi đặt vào thư mục theme để làm ảnh hiển thị, bạn có thể dùng tấm ảnh này.

Cấu trúc theme

Tiếp tục, bạn hãy tạo ra lần lượt các file sau:

  • thachpham/
    • functions.php
    • index.php
    • header.php
    • footer.php
    • page.php
    • single.php
    • content.php
    • content-none.php
    • archive.php
    • search.php
    • author.php
    • 404.php
    • sidebar.php

Tiếp tục, tạo một thư mục tên là templates trong theme và tạo các file sau vào thư mục đó, các file này sẽ là custom page template.

  • full-width.php
  • contact.php

Đây là hình ảnh về cấu trúc theme cần tạo:

laptrinhtheme-cautructheme

Bây giờ bạn hãy vào Dashboard -> Appearance -> Themes thì sẽ thấy theme của mình đã được hiển thị ra.

laptrinhtheme-saukhisetupcautruc

Hãy kích hoạt nó lên, sau khi kích hoạt thì website của bạn sẽ là trang trắng vì chưa có nội dung gì cả, chúng ta sẽ tiến hành làm tiếp ở các phần sau của serie này.

5 bình luận

Có thể bạn quan tâm

0 0 vote
Article Rating
guest
5 Comments
mới nhất
cũ nhất đánh giá nhiều
Inline Feedbacks
View all comments
Dương Vô Thần

Anh ơi, cho em hỏi xíu. Do bài viết của em quá dài nên mình muốn tạo một đường link như là “Đọc thêm” để reader đọc dễ dàng hơn. Và em muốn tạo một page như là trong một menu nó có nhiều phần nhỏ vậy. Bởi vì vài lý do nên em muốn tạo free. Theme em dùng là Button 2 ạ

Quang Minh

Lần đầu học từ video của Thạch Phạm, bị mê hoặc bởi giọng nói! :3

hien

Thạch Phạm ơi cho mình hỏi xíu , mình đã tạo đầy đủ các file như bạn làm , nhưng sai khi upload template lên nó báo : The package could not be installed. PCLZIP_ERR_BAD_FORMAT (-10) : Unable to find End of Central Dir Record signature

hien

Thạch Phạm ơi cho mình hỏi xíu, mình đã tạo đầy đủ các file như của bạn sau đó upload lên nó báo ” The package could not be installed. PCLZIP_ERR_BAD_FORMAT (-10) : Unable to find End of Central Dir Record signature” giúp mình với

5
0
Would love your thoughts, please comment.x
()
x