Cara Menampilkan Sidebars yang Berbeda untuk Posting dan Halaman di WordPress

Diterbitkan: 2023-02-16

Secara default, WordPress menampilkan sidebar yang sama di semua posting dan halaman. Namun terkadang, Anda mungkin ingin menampilkan sidebar yang benar-benar berbeda untuk postingan terpenting Anda atau item sidebar yang terkait dengan seluruh kategori postingan. Jika Anda pernah bertanya-tanya bagaimana cara melakukannya, Anda beruntung!

Pada artikel ini, kami akan menunjukkan kepada Anda cara membuat sidebar unik untuk berbagai posting atau halaman, baik secara manual maupun dengan plugin WordPress. Tapi pertama-tama, mari kita bicara lebih banyak tentang mengapa Anda mungkin ingin melakukan ini.

Mengapa Anda mungkin menginginkan sidebar yang berbeda

Seperti yang dinyatakan sebelumnya, jika Anda memiliki banyak kategori di blog Anda, Anda mungkin tergoda untuk memiliki sidebar dengan penawaran, iklan, atau produk serupa dengan topik tersebut. Atau mungkin Anda ingin membicarakan bisnis Anda di sidebar “Tentang Kami”, yang disesuaikan dengan audiens di setiap halaman.

Dalam situasi seperti ini, Anda pasti ingin memiliki sidebar yang unik. Ada dua cara untuk membuatnya: secara manual dengan mengembangkan sendiri atau dengan plugin WordPress.

Mari kita bahas cara manual terlebih dahulu.

gambar alat penggaris keyboard dan tanaman diselaraskan untuk menampilkan sidebar wordpress di atas meja dengan buku dan teknologi lainnya

Cara membuat sidebar WordPress baru secara manual

Untuk membuat sidebar baru secara manual, idealnya Anda harus menggunakan tema anak di lingkungan lokal. Kami telah membuat satu untuk tema dua puluh tujuh belas, tetapi Anda dapat mengikuti proses yang sama untuk tema apa pun.

Pertama, temukan file tempat sidebar terdaftar di tema Anda. Biasanya ini adalah file functions.php, tetapi dapat bervariasi tergantung pada tema Anda.

Buka file dan temukan fungsi untuk kode sidebar. Ini umumnya terdiri dari register_sidebar dan fungsi lengkapnya mungkin terlihat seperti ini:

[php]

function twentyseventeen_widgets_init() {

register_sidebar(

Himpunan(

'nama' => __( 'Blog Sidebar', 'dua puluh tujuh belas' ),

'id' => 'sidebar-1',

'description' => __( 'Tambahkan widget di sini untuk muncul di sidebar Anda pada postingan blog dan halaman arsip.', 'twentyseventeen' ),

'before_widget' => '<section id=”%1$s” class=”widget %2$s”>',

'after_widget' => '</bagian>',

'before_title' => '<h2 class=”widget-title”>',

'after_title' => '</h2>',

)

);

register_sidebar(

Himpunan(

'nama' => __( 'Footer 1', 'dua puluh tujuh belas' ),

'id' => 'sidebar-2',

'description' => __( 'Tambahkan widget di sini untuk muncul di footer Anda.', 'twentyseventeen' ),

'before_widget' => '<section id=”%1$s” class=”widget %2$s”>',

'after_widget' => '</bagian>',

'before_title' => '<h2 class=”widget-title”>',

'after_title' => '</h2>',

)

);

register_sidebar(

Himpunan(

'nama' => __( 'Footer 2', 'dua puluh tujuh belas' ),

'id' => 'sidebar-3',

'description' => __( 'Tambahkan widget di sini untuk muncul di footer Anda.', 'twentyseventeen' ),

'before_widget' => '<section id=”%1$s” class=”widget %2$s”>',

'after_widget' => '</bagian>',

'before_title' => '<h2 class=”widget-title”>',

'after_title' => '</h2>',

)

);

}

add_action( 'widgets_init', 'twentyseventeen_widgets_init' );

[/php]

Sekarang salin seluruh fungsi dan buat file functions.php di tema anak Anda (jika Anda belum memilikinya) dan rekatkan kodenya. Pastikan untuk mengubah nama fungsi.

Bergantung pada berapa banyak sidebar tambahan yang perlu Anda buat, Anda cukup mereplikasi kode yang sama dan menetapkan id unik untuk setiap sidebar. Anda juga harus mengubah nama dan deskripsi untuk membuat masing-masing unik. Di sini kami telah membuat dua sidebar baru:

[php]

function twentyseventeen_new_widgets_init() {

register_sidebar(

Himpunan(

'name' => __( 'WordPress Sidebar', 'twentyseventeen' ),

'id' => 'sidebar-4',

'description' => __( 'Tambahkan widget di sini untuk ditampilkan di sidebar Anda pada posting blog terkait wordpress.', 'twentyseventeen' ),

'before_widget' => '<section id=”%1$s” class=”widget %2$s”>',

'after_widget' => '</bagian>',

'before_title' => '<h2 class=”widget-title”>',

'after_title' => '</h2>',

)

);

register_sidebar(

Himpunan(

'name' => __( 'Web Design Sidebar', 'twentyseventeen' ),

'id' => 'sidebar-5',

'description' => __( 'Tambahkan widget di sini untuk muncul di sidebar Anda pada entri blog terkait desain web.', 'twentyseventeen' ),

'before_widget' => '<section id=”%1$s” class=”widget %2$s”>',

'after_widget' => '</bagian>',

'before_title' => '<h2 class=”widget-title”>',

'after_title' => '</h2>',

)

);

}

add_action( 'widgets_init', 'twentyseventeen_new_widgets_init' );

[/php]

Sidebar baru sudah siap sekarang; Jika Anda memeriksa bagian widget, itu akan menampilkan dua area widget baru. Kami telah menambahkan widget teks sederhana ke setiap sidebar agar dapat dikenali.

dashboard wordpress widget wordpress dan pemilih konten dan sidebar berbeda dengan banyak footer

Setelah sidebar Anda dibuat, saatnya untuk menetapkan lokasi. Kami sedang mencari untuk mengganti sidebar kanan yang ada, jadi Anda perlu mencari file di mana itu berada.

Misalnya, ada di sidebar.php . Salin file dari tema induk dan rekatkan ke tema anak Anda.

Jika Anda memeriksa file, itu memanggil sidebar-1 , yang merupakan id dari sidebar kanan utama.

[php]

<aside id=”secondary” class=”widget-area” role=”pelengkap” aria-label=”<?php esc_attr_e( 'Blog Sidebar', 'twentyseventeen' ); ?>”>

<?php dynamic_sidebar( 'sidebar-1' ); ?>

</ samping>

[/php]

Sekarang, kita akan membuat satu sidebar untuk kategori desain web saya dan satu lagi untuk kategori WordPress saya. Hal ini dapat dicapai dengan dua cara yang berbeda: satu adalah pendekatan berbasis template dan yang lainnya adalah pendekatan berbasis kategori.

Pendekatan berbasis template

Dalam pendekatan ini, Anda harus membuat template yang berbeda tergantung pada kebutuhan Anda. Untuk contoh ini, single.php bertanggung jawab atas posting tunggal, sehingga Anda dapat menyalin dan menempelkan file tersebut di tema anak Anda. Ubah nama file sesuai, seperti wordpress-post.php , dan tambahkan juga nama template.

[php]

/* Nama Templat: Bilah Samping WordPress

* Templat Jenis Posting: post*/

[/php]

Demikian juga, kami telah membuat template lain bernama webdesign-post.php .

tema wordpress twentyseventeen dengan wordpress-post dan webdesign-post dalam file lokal

Sekarang, kembali ke file sidebar.php tema anak dan tambahkan kondisi sederhana untuk memeriksa template mana yang sedang digunakan. Untuk ini, kita akan menggunakan fungsi is_page_template() .

Kode ini cukup jelas. Itu memeriksa template mana yang digunakan dan mengatur sidebar yang sesuai. Jika tidak ada syarat yang terpenuhi, maka akan menggunakan sidebar default.

[php]

<?php

if ( is_page_template('wordpress-post.php') ) {

dynamic_sidebar( 'sidebar-4' );

}elseif ( is_page_template('webdesign-post.php') ){

dynamic_sidebar( 'sidebar-5' );

}kalau tidak{

dynamic_sidebar( 'sidebar-1' );

}

?>

[/php]

Sekarang mari buat postingan baru dan tetapkan salah satu template yang baru saja kita buat.

edit template atribut posting wordpress dengan sidebar berbeda

Anda akan melihat saya telah memilih sidebar WordPress untuk posting khusus ini.

pratinjau wordpress dari posting langsung dengan sidebar berbeda

Pendekatan berdasarkan kategori

Untuk contoh ini (mengubah sidebar berdasarkan kategori posting), pendekatan berbasis kategori akan bekerja lebih baik daripada pendekatan berbasis template. Untuk melakukannya, Anda harus menyesuaikan kondisi di sidebar.php berdasarkan kategori, bukan template menggunakan fungsi in_category() .

[php]

<?php

if ( in_category('wordpress') ) {

dynamic_sidebar( 'sidebar-4' );

}elseif ( in_category('desain-web') ){

dynamic_sidebar( 'sidebar-5' );

}kalau tidak{

dynamic_sidebar( 'sidebar-1' );

}

?>

[/php]

Sekarang jika Anda mengedit atau membuat posting baru, tambahkan saja kategori yang Anda inginkan. Ini akan menampilkan sidebar yang sesuai, jadi tidak perlu memilih template apa pun! Di sini kami telah memilih desain web sebagai kategori posting saya, sehingga sidebar desain web akan muncul.

pembaruan sidebar wordpress berdasarkan kategori desain web yang dipilih

Pada dasarnya, Anda hanya perlu menyesuaikan kondisi sidebar.php sesuai dengan kebutuhan spesifik Anda.

Cara membuat sidebar khusus dengan plugin WordPress

Jika Anda kesulitan membuat sidebar secara manual, Anda dapat mencoba beberapa plugin WordPress praktis yang memungkinkan Anda membuatnya dengan mudah!

Salah satu plugin tersebut adalah Content Aware Sidebars. Ini adalah plugin sederhana yang memungkinkan Anda membuat sidebar secara dinamis di setiap halaman, postingan, kategori, dll.

Setelah diinstal, Anda akan melihat menu Sidebars di panel admin.

Bilah Samping > Tambah Baru

opsi plugin sidebar wordpress menambahkan sidebar baru

Pertama, tambahkan nama ke sidebar Anda. Anda kemudian dapat mengatur kondisi tampilan dari dropdown Kondisi Bilah Samping . Sidebar dapat memiliki beberapa kondisi seperti halaman, posting, kategori, penulis, dll.

atur saran sidebar saya sidebar berbeda untuk posting dan halaman wordpress

Anda dapat menjadwalkan bilah samping dari tab jadwal, dan mengubah tag HTML di tab desain.

Anda akan melihat kotak Opsi di sisi kanan. Dari sana, Anda dapat mengatur lokasi dan aturan sidebar baru Anda. Anda juga dapat melakukan tindakan, seperti membuat kode pendek sidebar Anda.

Setelah sidebar Anda dipublikasikan, Anda dapat mengaksesnya dari bagian Appearance > Widgets .

di tampilan widget edit opsi sidebar saya untuk mendapatkan sidebar wordpress yang berbeda untuk posting dan halaman

Sidebar baru ini akan muncul di halaman dan posting secara otomatis, sesuai pengaturan Anda.

Plugin ini juga memungkinkan Anda memilih sidebar saat mengedit setiap posting atau halaman, terlepas dari pengaturan awal Anda.

Di dalam postingan atau halaman, Anda akan melihat panel Sidebars – Quick Select di sisi kanan yang akan menampilkan semua sidebar yang ada. Dari sana Anda dapat memilih sidebar Anda di lokasi target yang ditetapkan sebelumnya di pengaturan awal.

Misalnya, sebelumnya kita telah membuat My sidebar dan target lokasinya adalah Blog Sidebar , jadi di panel Quick Select , My sidebar hanya akan tersedia untuk Blog Sidebar .

pilih sidebar blog dengan cepat untuk posting dan halaman untuk mendapatkan sidebar wordpress yang berbeda

Namun, Anda juga dapat membuat sidebar baru dari bagian halaman edit. Cukup ketik nama sidebar baru Anda dan terbitkan atau perbarui halaman.

sidebar wordpress baru dipilih berdasarkan posting dan halaman

Jika Anda membuat sidebar baru, Anda hanya perlu mengaktifkannya di bagian Appearance > Widgets .

rincian pada sidebar yang berbeda untuk posting dan halaman di dashboard wordpress

Catatan: Anda juga dapat menetapkan sidebar ke halaman Anda, tetapi pastikan template halaman Anda menyertakan sidebar. Tanpa itu, sidebar tidak akan ditampilkan, meskipun Anda mengaturnya di bagian halaman edit.

Kesimpulan

Flywheelers saling bekerja sama bagaimana menampilkan sidebar yang berbeda untuk posting dan halaman di wordpress

Anda sekarang telah melihat dua opsi untuk membuat sidebar: pengembangan manual dan juga dengan plugin. Jika Anda tidak nyaman dengan kode, maka menggunakan plugin mungkin merupakan pilihan terbaik untuk Anda, tetapi jika Anda memiliki persyaratan khusus dan tidak ingin menambahkan plugin tambahan ke situs Anda, maka Anda harus menggunakan cara manual . Yang penting adalah memahami kebutuhan Anda dan kemudian memilih opsi terbaik Anda!