feat(layout): menambahkan sidebar native dan layout 2 kolom pada single.php

This commit is contained in:
Mas Budi Kusuma
2026-09-15 21:08:52 +07:00
parent 937613ac25
commit 226e09f2b1
4 changed files with 177 additions and 83 deletions
+51 -41
View File
@@ -1,41 +1,51 @@
<?php
/**
* File ini menangani dukungan tema (Theme Support) dan antrean aset (CSS/JS).
*/
// 1. PENGATURAN DASAR
function edukarsa_setup() {
add_theme_support( 'title-tag' );
add_theme_support( 'post-thumbnails' );
// Pastikan tema mendukung excerpt (kutipan) untuk CPT yang baru dibuat
add_post_type_support( 'page', 'excerpt' );
register_nav_menus( array(
'menu-utama' => __( 'Menu Utama', 'edukarsa' ),
'menu-footer' => __( 'Menu Footer', 'edukarsa' ),
) );
}
add_action( 'after_setup_theme', 'edukarsa_setup' );
// 2. MENGHUBUNGKAN ASET (CSS & JS FRONTEND)
function edukarsa_scripts() {
// Memaksa path absolut langsung ke folder tema
wp_enqueue_style(
'edukarsa-style',
get_template_directory_uri() . '/style.css',
array(),
time(),
'all'
);
}
add_action( 'wp_enqueue_scripts', 'edukarsa_scripts' );
// 3. MEMUAT JAVASCRIPT UNTUK MEDIA UPLOADER (DASHBOARD)
function edukarsa_admin_scripts( $hook ) {
// Memastikan skrip uploader dipanggil di halaman pengaturan Edukarsa[cite: 9]
if ( strpos( $hook, 'edukarsa' ) !== false ) {
wp_enqueue_media();
}
}
add_action( 'admin_enqueue_scripts', 'edukarsa_admin_scripts' );
<?php
/**
* File ini menangani dukungan tema (Theme Support) dan antrean aset (CSS/JS).
*/
// 1. PENGATURAN DASAR
function edukarsa_setup() {
add_theme_support( 'title-tag' );
add_theme_support( 'post-thumbnails' );
add_post_type_support( 'page', 'excerpt' );
register_nav_menus( array(
'menu-utama' => __( 'Menu Utama', 'edukarsa' ),
'menu-footer' => __( 'Menu Footer', 'edukarsa' ),
) );
}
add_action( 'after_setup_theme', 'edukarsa_setup' );
// 2. MENGHUBUNGKAN ASET (CSS & JS FRONTEND)
function edukarsa_scripts() {
wp_enqueue_style(
'edukarsa-style',
get_template_directory_uri() . '/style.css',
array(),
time(),
'all'
);
}
add_action( 'wp_enqueue_scripts', 'edukarsa_scripts' );
// 3. MEMUAT JAVASCRIPT UNTUK MEDIA UPLOADER (DASHBOARD)
function edukarsa_admin_scripts( $hook ) {
if ( strpos( $hook, 'edukarsa' ) !== false ) {
wp_enqueue_media();
}
}
add_action( 'admin_enqueue_scripts', 'edukarsa_admin_scripts' );
// 4. REGISTRASI AREA WIDGET SIDEBAR
function edukarsa_widgets_init() {
register_sidebar( array(
'name' => __( 'Sidebar Artikel', 'edukarsa' ),
'id' => 'sidebar-artikel',
'description' => __( 'Area widget untuk halaman single berita/artikel.', 'edukarsa' ),
'before_widget' => '<div id="%1$s" class="card-style sidebar-widget %2$s">',
'after_widget' => '</div>',
'before_title' => '<h3 class="sidebar-widget-title">',
'after_title' => '</h3>',
) );
}
add_action( 'widgets_init', 'edukarsa_widgets_init' );