Unlimited WordPress themes, graphics, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Plugins
Code

Membuat sebuah Shortcode ke Daftar Post Dengan Beberapa Parameter

by
Difficulty:IntermediateLength:MediumLanguages:

Indonesian (Bahasa Indonesia) translation by Lukman Nulhakim (you can also view the original English article)

Di banyak situs klien yang saya buat, saya menemukan ada saat-saat ketika saya perlu memasukkan daftar pos pada halaman. Saya tidak berbicara tentang halaman arsip di sini, tetapi menambahkan daftar kustom ke halaman statis yang ada.

Sebagai contoh, saya mungkin ingin mendaftar beberapa posting di halaman 'About', atau situs mungkin memerlukan topik mendalam pada halaman, dengan daftar posting dan jenis posting kustom yang terkait dengan topik itu.

Salah satu cara untuk melakukan ini adalah dengan membuat template laman khusus untuk menyertakan konten halaman saat ini ditambah hasil query kustom kedua, tetapi jika Anda ingin lebih fleksibel tentang bagaimana Anda membuat daftar posting, atau hanya ingin melakukannya beberapa kali, shortcode akan menjadi solusi yang lebih sederhana.

Dalam tutorial ini, saya akan menunjukkan kepada Anda cara membuat shortcode sederhana untuk mencantumkan semua postingan dari jenis posting kustom, dan kemudian saya akan memperluas itu untuk membuat shortcode dengan berbagai parameter yang pengguna dapat menentukan untuk daftar posting yang diinginkan.


Apa yang Anda butuhkan untuk melengkapi Tutorial Ini

Anda akan membutuhkan sumber daya berikut:

  • Instalasi pengembangan WordPress
  • Akses ke folder plugin Anda sehingga Anda dapat membuat dan mengunggah plugin shortcode

Anda akan menemukan semua kode untuk membuat plugin ini pada code download.


Memulai: Membuat Konten

Sebelum menyiapkan shortcode, Anda harus mendaftarkan jenis posting kustom dan dua taksonomi kustom, yang akan kita gunakan untuk menguji shortcode.

Kode untuk melakukan ini terkandung dalam plugin yang saya tulis pada shortcode, meskipun pada proyek live, saya akan merekomendasikan untuk memisahkan ini dari plugin shortcode itu sendiri.

Buat file baru di folder plugins Anda dan beri nama post-listing-shortcode.php.

Tambahkan kode di bawah ini ke file.

Catatan: Membuat jenis posting kustom dan taksonomi tidak terpaku pada pembelajaran dari tutorial ini. Jika Anda mau, Anda dapat menyalin kode ini dari file unduhan dan melewati tahap ini.

Hal tersebut menunjukan WordPress tentang plugin dan mendaftarkan jenis tulisan kustom 'clothes' dan dua taksonomi, 'color' dan 'fabric'.

Simpan plugin ini dan aktifkan melalui halaman Plugins di WordPress.

Sekarang Anda memiliki jenis posting kustom dan taksonomi di tempat Anda, buat beberapa posting menggunakannya. Dalam screenshot di bawah ini Anda dapat melihat konten yang saya buat:

post-listing-shortcode-content-created

Membuat Daftar Shortcode Sederhana

Jika Anda hanya ingin mendaftarkan konten dalam satu cara menggunakan shortcode Anda, Anda dapat membuat shortcode yang sangat sederhana yang tidak menggunakan parameter.

Buka file plugin Anda lagi dan tambahkan yang berikut:

Kode ini membuat shortcode sederhana, menggunakan WP_Queryuntuk menjalankan query khusus pada konten Anda dan menampilkan hasilnya dalam daftar. Ketika saya mengetik [list-posts-basic] ke dalam halaman, hasilnya seperti yang ditunjukkan dalam screenshot ini:

post-listing-shortcode-shortcode1-results

Menambahkan Beberapa Parameter untuk Memodifikasi query

Shortcode akan jauh lebih bermanfaat jika pengguna dapat menambahkan parameter mereka sendiri, memilih misalnya:

  • Berapa banyak posting ke daftar
  • Jenis posting apa untuk query
  • Kategori untuk disertakan
  • Fabrics dan colors yang disertakan
  • Mengurutkan Parameter

Untuk menambahkan hal ini ke shortcode, Anda dapat memanfaatkan fungsi shortcode_atts(), yang memungkinkan Anda untuk menentukan beberapa atribut default yang dapat diganti oleh user.

Sekali lagi di file plugin Anda dan di bawah kode untuk shortcode pertama, tambahkan yang berikut:

Catatan: Penggunaan ob_start() dan ob_get_clean() memastikan bahwa loop adalah output di tempat di halaman Anda atau posting yang telah Anda tambahkan shortcode. Jika Anda tidak menambahkan ini, daftar akan ditampilkan di bagian atas konten.

Secara default kode ini mencantumkan semua posting dalam urutan urutan menurun, jadi jika Anda mengetik [list-posts] ke dalam satu halaman atau posting, hasilnya adalah seperti pada screenshoot ini:

post-listing-shortcode-shortcode2-results1

Namun, jika Anda menambahkan beberapa parameter, hal-hal menjadi lebih menarik. Misalnya, untuk mencantumkan semua pakaian yang berwarna hitam, saya mengetik [list-posts type="clothes" color="black" orderby="name" order="ASC"]:

post-listing-shortcode-shortcode2-results2

Atau untuk mencantumkan semua pakaian dalam kategori 'smart' yang saya ketik [list-posts type="clothes" category="smart" orderby="name" order="ASC"]:

post-listing-shortcode-shortcode2-results3

Jika perlu, Anda dapat menentukan lebih banyak atribut yang dapat digunakan oleh pengguna, tetapi Anda harus menyertakan semua yang tersedia di plugin Anda, dalam fungsi extract( shortcode_atts)).

Anda tidak perlu menentukan default untuk semua - misalnya saya sudah meninggalkan kategori dan parameter taksonomi kosong dalam contoh. Parameter yang dapat Anda definisikan adalah salah satu dari yang dapat ditentukan untuk WP_Query - untuk daftar lengkap, lihat Codex page.


Ringkasan

Mampu memasukkan daftar posting ke halaman atau posting bisa sangat berguna. Hal ini dapat menghemat Anda tanpa harus memodifikasi file template Anda atau menulis template halaman kustom.

Shortcode yang telah Anda pelajari tentang cara membuat menggunakan plugin ini dapat digunakan dengan banyak cara, dan tentu saja Anda dapat dengan mudah mengubah apa yang dihasilkan oleh shortcode - contoh saya menampilkan daftar bullet dengan judul posting yang diapit dalam tautan ke laman mereka, tetapi Anda bisa mengganti kode di dalam loop dengan tag template untuk menampilkan konten, menampilkan gambar, atau apa pun.


Resources

Beberapa sumber yang bermanfaat tentang topik yang dibahas di atas:

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.