Sử dụng list_theme
Thông số
$ refresh : Có tải lại danh sách các chủ đề từ cơ sở dữ liệu hay không. Mặc định cho FALSE.
Giá trị trả về
Một mảng kết hợp của các chủ đề hiện có. Các khóa là tên máy của chủ đề và các giá trị là các đối tượng có các thuộc tính sau:
- tên tệp : filepath và tên của tệp .info.
- Tên : Tên máy của chủ đề.
- trạng thái : 1 cho bật, 0 cho chủ đề bị vô hiệu hóa.
- Thông tin : Nội dung của tệp .info.
- bảng định kiểu : Một mảng hai chiều, sử dụng khóa đầu tiên cho thuộc tính media (ví dụ: 'all'), thứ hai cho tên của tệp (ví dụ style.css). Giá trị là một filepath hoàn chỉnh (ví dụ: Themes / bartik / style.css). Không được đặt nếu không có bảng định kiểu nào được xác định trong tệp .info.
- các tập lệnh : Một mảng kết hợp của JavaScripts, sử dụng tên tệp làm khóa và filepath hoàn chỉnh làm giá trị. Không được đặt nếu không có tập lệnh nào được xác định trong tệp .info.
- tiền tố : Tiền tố công cụ chủ đề cơ sở.
- engine : Tên máy của công cụ chủ đề.
- base_theme : Nếu đây là chủ đề phụ, tên máy của chủ đề cơ sở được xác định trong tệp .info. Mặt khác, phần tử không được đặt.
- base_theme : Nếu đây là chủ đề phụ, một mảng kết hợp của tổ tiên chủ đề cơ sở của chủ đề này, bắt đầu với chủ đề cơ sở của chủ đề này, sau đó là chủ đề cơ sở của chủ đề cơ sở, v.v. Mỗi mục có một khóa mảng bằng với chủ đề tên máy và giá trị bằng với tên chủ đề con người có thể đọc được; nếu một chủ đề với tên máy phù hợp không tồn tại trong hệ thống, thay vào đó, giá trị sẽ là NULL (và vì hệ thống sẽ không biết liệu chủ đề đó có chủ đề cơ bản hay không, điều đó sẽ kết thúc mảng chủ đề cơ sở). Điều này không được đặt nếu chủ đề không phải là chủ đề phụ.
- sub_theme : Mảng liên kết của các chủ đề trên hệ thống là chủ đề phụ trực tiếp (nghĩa là họ tuyên bố chủ đề này là chủ đề cơ bản của họ), chủ đề phụ trực tiếp của chủ đề phụ, v.v. Các phím là máy của chủ đề tên và các giá trị là tên dễ đọc của chủ đề. Phần tử này không được đặt nếu không có chủ đề nào trên hệ thống khai báo chủ đề này làm chủ đề cơ bản.
Sử dụng path_to_theme để có được chủ đề hoạt động ..
Nó có thể trỏ đến chủ đề đang hoạt động hoặc mô-đun xử lý việc thực hiện theo chủ đề. Ví dụ, khi được gọi trong phạm vi của một cuộc gọi theo chủ đề, nó sẽ phụ thuộc vào nơi chức năng chủ đề được xử lý. Nếu được thực hiện từ một mô-đun, nó sẽ trỏ đến mô-đun. Nếu được thực hiện từ chủ đề đang hoạt động, nó sẽ trỏ đến chủ đề đang hoạt động. Khi được gọi ngoài phạm vi của một cuộc gọi theo chủ đề, nó sẽ luôn trỏ đến chủ đề đang hoạt động.
theme_exists
chỉ để vượt qua mọi vấn đề có thể xảy ra với hệ thống chủ đề