Struktur Tema
Gambaran Keseluruhan
Section titled “Gambaran Keseluruhan”XOOPS tema mengawal persembahan visual tapak anda. Memahami struktur tema adalah penting untuk penyesuaian dan mencipta tema baharu.
Reka Letak Direktori
Section titled “Reka Letak Direktori”themes/mytheme/├── theme.html # Main layout template├── theme.ini # Theme configuration├── theme_blockleft.html # Left sidebar block template├── theme_blockright.html # Right sidebar block template├── theme_blockcenter_c.html # Center block (centered)├── theme_blockcenter_l.html # Center block (left-aligned)├── theme_blockcenter_r.html # Center block (right-aligned)├── css/│ ├── style.css # Main stylesheet│ ├── admin.css # Admin customizations (optional)│ └── print.css # Print stylesheet (optional)├── js/│ └── theme.js # Theme JavaScript├── images/│ ├── logo.png # Site logo│ └── icons/ # Theme icons├── language/│ └── english/│ └── main.php # Theme translations├── modules/ # Module template overrides│ └── news/│ └── news_index.tpl└── screenshot.png # Theme preview imageFail Penting
Section titled “Fail Penting”theme.html
Section titled “theme.html”Templat reka letak utama yang membungkus semua kandungan:
<!DOCTYPE html><html lang="<{$xoops_langcode}>"><head> <meta charset="<{$xoops_charset}>"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title><{$xoops_sitename}> - <{$xoops_pagetitle}></title> <meta name="description" content="<{$xoops_meta_description}>"> <meta name="keywords" content="<{$xoops_meta_keywords}>">
{* Module-specific headers *} <{$xoops_module_header}>
{* Theme stylesheets *} <link rel="stylesheet" href="<{$xoops_url}>/themes/<{$xoops_theme}>/css/style.css"></head><body class="<{$xoops_dirname}>"> <header class="site-header"> <a href="<{$xoops_url}>" class="logo"> <img src="<{$xoops_url}>/themes/<{$xoops_theme}>/images/logo.png" alt="<{$xoops_sitename}>"> </a> <nav class="main-nav"> <{$xoops_mainmenu}> </nav> </header>
<div class="page-container"> {* Left sidebar *} <{if $xoops_showlblock == 1}> <aside class="sidebar-left"> <{foreach item=block from=$xoops_lblocks}> <{include file="theme:theme_blockleft.html"}> <{/foreach}> </aside> <{/if}>
{* Main content *} <main class="content"> <{$xoops_contents}> </main>
{* Right sidebar *} <{if $xoops_showrblock == 1}> <aside class="sidebar-right"> <{foreach item=block from=$xoops_rblocks}> <{include file="theme:theme_blockright.html"}> <{/foreach}> </aside> <{/if}> </div>
<footer class="site-footer"> <{$xoops_footer}> </footer>
{* Module-specific footers *} <{$xoops_module_footer}></body></html>tema.ini
Section titled “tema.ini”Fail konfigurasi tema:
[Theme]name = "My Theme"version = "1.0.0"author = "Your Name"license = "GPL-2.0"description = "A modern responsive theme"
[Screenshots]screenshot = "screenshot.png"
[Options]responsive = truebootstrap = false
[Settings]primary_color = "#3498db"secondary_color = "#2c3e50"Templat Sekat
Section titled “Templat Sekat”{* theme_blockleft.html *}<section class="block block-left" id="block-<{$block.id}>"> <{if $block.title}> <h3 class="block-title"><{$block.title}></h3> <{/if}> <div class="block-content"> <{$block.content}> </div></section>Pembolehubah Templat
Section titled “Pembolehubah Templat”Pembolehubah Global
Section titled “Pembolehubah Global”| Pembolehubah | Penerangan |
|---|---|
$xoops_sitename | Nama tapak |
$xoops_url | Tapak URL |
$xoops_theme | Nama tema semasa |
$xoops_langcode | Kod bahasa |
$xoops_charset | Pengekodan aksara |
$xoops_pagetitle | Tajuk halaman |
$xoops_dirname | Nama modul semasa |
Pembolehubah Pengguna
Section titled “Pembolehubah Pengguna”| Pembolehubah | Penerangan |
|---|---|
$xoops_isuser | Telah log masuk |
$xoops_isadmin | Adakah pentadbir |
$xoops_userid | ID Pengguna |
$xoops_uname | Nama pengguna |
Pembolehubah Reka Letak
Section titled “Pembolehubah Reka Letak”| Pembolehubah | Penerangan |
|---|---|
$xoops_showlblock | Tunjukkan blok kiri |
$xoops_showrblock | Tunjukkan blok kanan |
$xoops_showcblock | Tunjukkan blok tengah |
$xoops_lblocks | Tatasusunan blok kiri |
$xoops_rblocks | Tatasusunan blok kanan |
$xoops_contents | Kandungan halaman utama |
Templat Modul Menggantikan
Section titled “Templat Modul Menggantikan”Gantikan templat modul dengan meletakkannya dalam tema anda:
themes/mytheme/modules/└── news/ ├── news_index.tpl # Overrides news module's index └── news_article.tpl # Overrides article displayCSS Organisasi
Section titled “CSS Organisasi”/* === Variables === */:root { --primary-color: #3498db; --text-color: #333; --bg-color: #fff;}
/* === Base === */body { font-family: system-ui, sans-serif; color: var(--text-color); background: var(--bg-color);}
/* === Layout === */.page-container { display: grid; grid-template-columns: 250px 1fr 250px; gap: 20px; max-width: 1200px; margin: 0 auto;}
/* === Components === */.block { margin-bottom: 20px; padding: 15px; background: #f5f5f5; border-radius: 4px;}
.block-title { margin: 0 0 10px; font-size: 1.1em;}
/* === Responsive === */@media (max-width: 768px) { .page-container { grid-template-columns: 1fr; }
.sidebar-left, .sidebar-right { order: 2; }}Dokumentasi Berkaitan
Section titled “Dokumentasi Berkaitan”- ../Templates/Smarty-Templating - Sintaks templat
- Tema-Pembangunan - Panduan tema lengkap
- CSS-Amalan-Terbaik - Garis panduan penggayaan
- ../../03-Module-Development/Block-Development - Mencipta blok