Panduan Dasar Pengembangan Tema WordPress: Membuat Tampilan Situs Web Khusus Anda Dari Nol

Baca dalam 2 menit.
2026-03-18
2026-06-03
2,648
Saya mendapatkan komisi ketika Anda berbelanja melalui tautan di bawah ini, tanpa biaya tambahan untuk Anda.

Mengapa memilih untuk mengembangkan tema WordPress sendiri?

Dalam ekosistem WordPress, menggunakan tema siap pakai memang lebih mudah dan cepat. Namun, menguasai keterampilan pengembangan tema dapat memberikan keuntungan yang tak terbandingkan. Dengan mengembangkan tema sendiri, Anda dapat sepenuhnya mengontrol tampilan, kinerja, dan fitur situs web Anda, sehingga desainnya 100% sesuai dengan kebutuhan bisnis Anda, tanpa terikat oleh keterbatasan atau kode yang berlebih dari tema pihak ketiga. Dengan membuat tema yang ringan dan efisien, Anda dapat meningkatkan kecepatan pengunduhan situs web dan mengoptimalkan penampilannya di mesin pencari. Selain itu, pemahaman yang mendalam tentang cara kerja tema akan memungkinkan Anda untuk melakukan penyesuaian dan pemeliharaan dengan lebih fleksibel, serta memungkinkan Anda untuk dengan cepat menemukan dan menyelesaikan masalah yang muncul. Ini merupakan keterampilan penting untuk menjadi seorang pengembang WordPress yang lebih mahir atau ahli pembangunan situs web.

Dari segi teknis, sebuah tema WordPress standar terdiri dari serangkaian berkas template, file gaya (style sheet), dan file skrip, yang semuanya mengikuti struktur direktori dan aturan penamaan yang tertentu. Memahami pengetahuan dasar ini merupakan langkah pertama dalam memulai proses pengembangan tema.

Membangun direktori dasar dan file inti untuk sebuah tema

Sebuah tema WordPress yang paling dasar setidaknya memerlukan dua file inti. Pertama-tama, Anda perlu membuat sebuah folder dengan nama yang sama dengan nama tema Anda, misalnya… my-first-themeSemua file akan disimpan dalam direktori ini.

推荐阅读 Panduan lengkap untuk pengembangan tema WordPress: membangun situs web kustom dari nol.

File deklarasi informasi topik

Dalam folder tema, Anda harus membuat sebuah file dengan nama… style.css File tersebut bukan hanya berisi kode gaya (stylesheet), tetapi juga blok komentar di bagian header file yang berfungsi sebagai “kartu identitas” tema tersebut. Blok komentar ini digunakan untuk menyatakan metadata tema kepada sistem WordPress. Contoh penulisan metadata yang umum adalah sebagai berikut:

UltaHost – Hosting untuk WordPress
Jaminan pengembalian uang dalam 30 hari, bandwidth dan basis data yang tidak terbatas, perlindungan DDoS gratis, diskon 50% untuk pembelian selama 3 tahun (dari harga normal: 50%).
/*
Theme Name: 我的第一个主题
Theme URI: https://example.com/my-first-theme/
Author: 你的名字
Author URI: https://example.com/
Description: 这是一个用于学习的自定义 WordPress 主题。
Version: 1.0
License: GPL v2 or later
Text Domain: my-first-theme
*/

Di antaranya,Text Domain Digunakan untuk penerjemahan internasionalisasi; pastikan nama berkas ini sesuai dengan nama folder tema yang bersangkutan.

File template utama untuk konten situs web

File lain yang tidak tergantikan adalah… index.phpIni adalah template utama default untuk sebuah tema. Ketika WordPress tidak dapat menemukan file template yang lebih spesifik, maka template ini akan digunakan. Meskipun file ini pada awalnya hanya berisi struktur HTML yang paling sederhana, file tersebut tetap harus ada.

<!DOCTYPE html>
<html no numeric noise key 1006>
<head>
    <meta charset="<?php bloginfo( 'charset' ); ?>">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <?php wp_head(); ?>
</head>
<body no numeric noise key 1003>
    <?php wp_body_open(); ?>
    <header>
        <h1>Judul situs web saya</h1>
    </header>
    <main>
        <?php
        if ( have_posts() ) :
            while ( have_posts() ) :
                the_post();
                the_content();
            endwhile;
        endif;
        ?>
    </main>
    <footer>
        <p>Konten bagian kaki halaman situs web (footer content)</p>
    </footer>
    <?php wp_footer(); ?>
</body>
</html>

Template dasar ini mengandung beberapa fungsi inti yang diperlukan oleh tema WordPress, seperti… wp_head()wp_body_open()wp_footer()Hal tersebut memastikan bahwa skrip dan gaya (styles) yang diperlukan oleh plugin serta fungsi inti WordPress dapat diunduh dan dijalankan dengan benar.

Membahas lebih dalam: Penggunaan Struktur Hierarki Template dan Fungsi

Sebuah topik yang lengkap jauh lebih dari sekadar… index.phpSistem hierarki template di WordPress memungkinkan Anda membuat file template khusus untuk berbagai jenis halaman, sehingga memberikan kontrol yang lebih detail.

推荐阅读 Panduan Pengembangan dan Kustomisasi Tema WordPress: Dari Dasar-dasar hingga Praktik Lanjutan.

Membuat template untuk header dan footer halaman

Untuk mengikuti prinsip DRY (Don’t Repeat Yourself), Anda sebaiknya memisahkan kode untuk header dan footer ke dalam file-file yang terpisah. Buatlah file dengan nama… header.php File tersebut digunakan untuk menyimpan data. <head> Kode untuk navigasi di bagian regional dan di bagian atas situs web. Sesuai dengan itu, buatlah kode yang diperlukan. footer.php Digunakan untuk menyimpan informasi bagian kaki halaman (footer). Setelah itu, informasi tersebut digunakan dalam template utama. get_header()get_footer() Gunakan fungsi untuk mengimpor (mengunduh) mereka.

// 在 index.php 顶部引入页眉
<?php get_header(); ?>

<!-- 页面主要内容 -->

// 在 index.php 底部引入页脚
<?php get_footer(); ?>

Membuat template khusus untuk artikel dan halaman.

Ketika seseorang mengakses sebuah artikel tertentu, WordPress akan mencari dan memanggil (menggunakan fungsi yang sesuai) secara otomatis. single.php Template. Demikian pula untuk halaman statis, sistem tersebut akan mencari (template yang sesuai). page.phpAnda dapat membuat file-file tersebut untuk menyesuaikan tata letak artikel dan halaman. Dalam template-template ini, Anda dapat menggunakan siklus utama (main loop) WordPress yang sangat kuat untuk menampilkan konten.

// 在 single.php 中
while ( have_posts() ) :
    the_post();
    the_title( '<h1 class="entry-title">', '</h1>'php
the_content();
endwhile;

File fungsi untuk memperkuat fitur tema (theme enhancement functions)

functions.php File tersebut merupakan “pusat kontrol” untuk tema Anda. Bukanlah sebuah template yang independen, melainkan sebuah file PHP yang secara otomatis diunduh saat tema diinisialisasi. File ini berfungsi untuk menambahkan fitur, mendaftarkan menu dan sidebar, serta memasukkan kode gaya (style) dan skrip (script).

hosting.com hosting bersama
Kinerja tinggi, dilengkapi dengan CPU AMD EPYC, penyimpanan SSD NVMe, dan LiteSpeed, dukungan internal ahli 24 jam sehari, langkah-langkah keamanan canggih termasuk SSL, brute force, malware, dan perlindungan DDoS, menghemat hingga 731 TB/bulan.

Misalnya, untuk menambahkan dukungan menu navigasi ke sebuah tema, Anda perlu… functions.php Gunakan dalam bahasa Cina register_nav_menus() Fungsi.

function my_theme_setup() {
    register_nav_menus(
        array(
            'primary' => __( '主导航菜单', 'my-first-theme' ),
            'footer'  => __( '页脚菜单', 'my-first-theme' ),
        )
    );
}
add_action( 'after_setup_theme', 'my_theme_setup' );

Kemudian, dalam berkas template (seperti…) header.phpDalam hal ini, gunakan wp_nav_menu() Untuk menampilkan menu.

为你的主题添加样式与交互

Sebuah tema yang menarik secara visual dan memiliki interaksi yang baik tidak dapat dipisahkan dari CSS (Cascading Style Sheets) dan JavaScript. Kunci keberhasilan adalah mengintegrasikan keduanya ke dalam tema dengan benar.

推荐阅读 Apa itu pengembangan tema WordPress?

Mengintegrasikan tabel gaya dengan benar

Meskipun demikian, style.css File tersebut sudah ada, tetapi WordPress tidak secara otomatis memuatnya sebagai file gaya (stylesheet) ke bagian frontend. Anda perlu melakukannya secara manual. functions.php Gunakan dalam bahasa Cina wp_enqueue_style() Fungsi ini digunakan untuk mendaftarkan dan mengatur urutan eksekusi suatu proses (atau tugas).

function my_theme_scripts() {
    // 为主题主样式表
    wp_enqueue_style( 'my-theme-style', get_stylesheet_uri(), array(), '1.0' );
    // 引入一个自定义样式
    wp_enqueue_style( 'my-custom-style', get_template_directory_uri() . '/css/custom.css', array(), '1.0' );
}
add_action( 'wp_enqueue_scripts', 'my_theme_scripts' );

Mengintegrasikan JavaScript dengan aman

Untuk file JavaScript, hal yang sama juga harus diterapkan. wp_enqueue_script() Fungsi tersebut digunakan untuk melakukan pengintroduksi (import) komponen yang diperlukan. Hal ini memastikan bahwa hubungan ketergantungan (dependency relationships) antar komponen dapat ditangani dengan benar, serta mencegah terjadinya pengunduhan ulang (reloading) skrip yang tidak perlu.

Hosting bersama InterServer.
Hosting bersama seharga $2,50 USD per bulan, diskon $0,1 USD untuk bulan pertama dengan kode promo tryinterserver, serta 461 skrip aplikasi cloud yang dapat diinstal dengan sekali klik.
function my_theme_scripts() {
    // ... 样式表代码 ...
    // 引入一个自定义脚本,依赖 jQuery
    wp_enqueue_script( 'my-theme-script', get_template_directory_uri() . '/js/main.js', array( 'jquery' ), '1.0', true );
}
add_action( 'wp_enqueue_scripts', 'my_theme_scripts' );

Parameter terakhir true Menunjukkan bahwa skrip ditempatkan di bagian bawah halaman. <body> Pemrosesan data dilakukan sebelum tag tersebut selesai dibaca, hal ini membantu meningkatkan kinerja pengambilan halaman (page loading performance).

Menyimpulkan.

Dengan panduan ini, Anda telah melewati langkah-langkah utama dalam pengembangan tema WordPress: mulai dari memahami tujuan dan motivasi pengembangan, hingga menciptakan tema yang lengkap dengan fitur-fitur yang diperlukan. style.cssindex.php Struktur tema dasar; mulai dari mempelajari sistem hierarki template, lalu membuatnya. header.phpfooter.phpsingle.php Mulai dari template khusus, hingga penggunaan fitur yang sangat kuat… functions.php File tersebut digunakan untuk mendaftarkan fitur, menu, dan gaya skrip. Ingatlah bahwa pengembangan tema merupakan proses yang bersifat iteratif; mulailah dengan struktur yang paling sederhana, lalu tambahkan kompleksitas dan fitur secara bertahap. Ini merupakan cara yang paling efisien untuk belajar. Dengan terus berlatih, merujuk pada dokumen resmi, dan menganalisis kode dari tema-tema yang berkualitas, keterampilan pengembangan Anda akan meningkat dengan cepat.

FAQ - Pertanyaan yang Sering Diajukan.

Apa saja pengetahuan dasar yang diperlukan untuk mengembangkan tema WordPress?

Anda perlu memiliki pengetahuan dasar tentang HTML dan CSS, yang merupakan fondasi untuk membangun struktur dan tata letak halaman web. Selain itu, pemahaman dasar tentang PHP sangat penting, karena inti WordPress dan sistem templatnya ditulis menggunakan PHP. Pengetahuan awal tentang JavaScript juga akan membantu dalam menambahkan fitur interaktif ke dalam halaman web.

Apa perbedaan antara file functions.php dari tema dan plugin?

functions.php File merupakan bagian dari suatu tema, dan fungsinya sangat erat kaitannya dengan tampilan serta cara tema tersebut berfungsi. Ketika Anda mengganti tema, fungsi-fungsi tersebut biasanya akan tidak berfungsi lagi. Sedangkan plugin digunakan untuk menambahkan fitur-fitur umum yang independen dari tema tertentu (seperti formulir kontak, optimisasi SEO), sehingga fitur-fitur tersebut akan tetap tersedia selama plugin tersebut diaktifkan, terlepas dari tema yang digunakan. Ada prinsip yang baik untuk diikuti: jika suatu fitur berkaitan langsung dengan tampilan visual, letakkanlah fitur tersebut di dalam tema; jika fitur tersebut bersifat umum (digunakan di seluruh situs web), pertimbangkanlah untuk membuatnya menjadi sebuah plugin.

Bagaimana cara membuat tema saya mendukung terjemahan multibahasa?

Anda perlu menggunakan fungsi internasionalisasi (i18n) dari WordPress untuk mempersiapkan tema Anda. Dalam kode, gunakan format serupa untuk semua teks yang ditampilkan kepada pengguna. __( ‘文本’, ‘my-first-theme’ )_e( ‘文本’, ‘my-first-theme’ ) “Wrap the function using the function where…” ’my-first-theme’ Itu adalah domain teks (Text Domain) milik Anda. Lalu… style.css Pastikan untuk menyatakan domain teks (text domain) yang benar dalam dokumen terkait, dan gunakan alat seperti Poedit untuk membuatnya. .pot File template beserta yang sesuai dengannya… .po.mo File terjemahan.

Ada beberapa cara yang direkomendasikan untuk menguji tema di lingkungan lokal:

Disarankan dengan kuat untuk melakukan pengembangan tema dalam lingkungan pengembangan lokal. Anda dapat menggunakan perangkat lunak desktop seperti Local by Flywheel atau DevKinsta, atau membangun lingkungan PHP dan MySQL lokal sendiri dengan alat-alat seperti MAMP atau XAMPP. Pengembangan lokal dapat menghindari keterlambatan jaringan dari server online, memberikan kecepatan debugging yang lebih tinggi, dan tidak akan mempengaruhi operasi situs web yang berjalan di online.