Masalah Shortcode yang Tak Terucap

Ditulis oleh

dalam

The-Unspoken-Problem-of-Shortcodes

Shortcode adalah salah satu puncak pencapaian WordPress. Shortcode adalah jembatan antara pengembang dan pembuat situs, memungkinkan orang untuk menempatkan potongan konten yang rumit hampir di mana saja yang mereka inginkan. Pembuat plugin menyukai shortcode karena ini memberikan lebih banyak fleksibilitas dalam cara dan tempat pengguna mereka menampilkan konten mereka.

Jika Anda tidak tahu apa itu shortcode dan seperti apa bentuknya, shortcode adalah teks menyerupai kode kuno yang dibungkus dalam tanda kurung siku. Bentuknya kira-kira seperti ini:

Yang satu ini secara khusus disebut shortcode embed dan sudah terpasang secara bawaan di WordPress. Shortcode khusus ini menyematkan video dari URL ke dalam konten Anda. Cukup salin dan tempel shortcode di atas ke situs Anda jika ingin mencobanya.

Di balik layar, yang terjadi adalah saat WordPress menemukan shortcode di dalam konten Anda, shortcode tersebut akan diproses dan diubah menjadi hal lain. Dalam kasus kami di atas, setiap kali sebuah

shortcode terdeteksi, WordPress mengambil URL di dalam shortcode tersebut dan memeriksanya terhadap sejumlah penyedia konten yang dimilikinya. Saat menemukannya, WordPress kemudian mengambil kode sematan iframe yang sesuai dan menampilkannya sebagai gantinya.

Lalu apa masalahnya di sini? Kedengarannya cukup mudah, Anda cukup memasukkan teks pendek dengan tanda kurung dan selesai.

Di sinilah peran Shortcode API…

Shortcode Berlimpah

Shortcode API membuka pembuatan shortcode bagi para pengembang. Karena hal ini, pengembang dapat menambahkan shortcode buatan mereka sendiri di dalam plugin mereka.

Ini luar biasa, kini hanya dengan cuplikan pendek yang menyerupai kode (karena itulah dinamakan “shortcode”), baik pemula maupun pengguna tingkat lanjut dapat menempatkan hampir semua jenis konten yang mereka inginkan di mana saja.

Secara bawaan, WordPress hanya memiliki segelintir shortcode. Sangat mudah untuk mengetiknya dari ingatan karena jumlahnya hanya sedikit. Namun jika Anda memasang beberapa plugin, jumlah shortcode dengan cepat melonjak menjadi belasan atau lebih, dan dalam beberapa kasus lebih dari seratus. Setiap shortcode memiliki rangkaian atribut dan instruksi penggunaannya masing-masing. Setiap plugin kemungkinan besar memiliki semacam dokumentasi tentang cara kerja semua shortcode mereka dan mencantumkan semua parameter yang tersedia di masing-masing shortcode. Namun Anda akan gila jika mencoba menghafal semua shortcode dan atributnya.

Masalahnya adalah tidak ada area terpusat tempat Anda dapat mengetahui semua shortcode yang tersedia di situs Anda beserta cara menggunakannya.

Beberapa Mencoba Memecahkan Masalah Ini

Beberapa plugin mencoba mengatasi masalah ini dengan menyajikan semua shortcode mereka sendiri dalam menu drop-down yang mudah diakses. Kemudian mengklik salah satunya akan mencetak shortcode tersebut, lengkap dengan semua atribut yang memungkinkan untuknya. Tidak perlu lagi menghafalnya, dan ini adalah hal yang bagus.

Screen-Shot-2016-06-22-at-11.27.09-AM

Beberapa melangkah lebih jauh dan menambahkan formulir popup pengaturan yang memiliki kotak centang dan pemilih warna untuk mengisi atribut shortcode.

Screen-Shot-2016-06-22-at-11.28.54-AM

Solusi ini cukup berhasil. Namun, setiap plugin hanya mencantumkan shortcode mereka sendiri. Jadi jika setiap plugin membuat bentuk pemilih shortcode mereka sendiri, Anda pasti akan mengalami saat-saat di mana Anda memiliki beberapa pemilih shortcode di layar Anda (Ini pernah terjadi pada saya sebelumnya).

Screen-Shot-2016-06-22-at-11.22.41-AM

Dengan kata lain, setiap plugin berjalan sendiri-sendiri dan menerapkan solusinya sendiri untuk shortcode mereka sendiri. Beberapa plugin menambahkan tombol baru di samping tombol “Tambah Media”, atau tombol baru di dalam TinyMCE.

Jadi sekarang Anda mungkin berpikir, “Mengapa tidak mengumpulkan juga shortcode dari plugin lain dan menyertakannya di drop-down / pemilih shortcode Anda juga?” Nah, itulah persisnya yang saya pikirkan. Namun, ini lebih mudah diucapkan daripada dilakukan. Saya akan menjelaskan alasannya sebentar lagi, tetapi pertama-tama mari kita lihat seperti apa solusi yang ideal.

Solusi Ideal

Rencana yang sempurna adalah membuat plugin yang mengumpulkan semua shortcode yang tersedia di situs Anda, lalu menyajikan daftarnya kepada Anda dan juga membantu Anda mengisi semua atributnya. Dan setiap kali Anda memasang plugin baru, semua shortcode yang baru diperkenalkan tersebut juga akan disajikan kepada Anda.

Bayangkan sebuah tempat terpusat di mana semua shortcode Anda ditempatkan agar mudah diakses. Setiap shortcode akan menjelaskan fungsinya dan dari plugin mana asalnya. Kemudian untuk setiap atribut yang tersedia, bayangkan masing-masing atribut tersebut memiliki label, cara yang tepat untuk memilih nilainya, dan sebuah deskripsi. Anda akan diperlihatkan drop-down, pemilih warna, tombol radio, tombol toggle, dan sebagainya.

Hal seperti ini akan membuat hidup kita sebagai pembuat situs web dan konten menjadi lebih mudah. Tidak perlu lagi memeriksa dokumentasi yang berbeda-beda, atau bagian yang berbeda dari admin Anda hanya untuk menyalin shortcode yang dihasilkan untuk penggeser (slider) yang ingin Anda gunakan.

Catatannya

Sayangnya, cukup sulit untuk melakukan hal seperti itu saat ini. Tidak ada cara pasti untuk mengetahui semua rincian shortcode. Anda bisa mendapatkan daftar semua shortcode, tetapi hanya tag/nama aslinya saja, Anda tidak bisa mendapatkan rincian tambahan apa pun tentangnya seperti daftar atribut, fungsinya, dan tipenya – seperti string, warna, atau angka. Anda juga tidak bisa mendapatkan gambaran deskripsi untuk setiap atribut.

Catatan untuk para pengembang di luar sana: ya, ada argumen ketiga yang baru ditambahkan untuk fungsi shortcode_atts, tetapi itu bukan argumen yang wajib. Jadi, kecuali setiap pengembang plugin di dunia menerapkannya, kita tetap tidak akan memiliki cara pasti untuk menentukan semua atribut suatu shortcode.

Shortcode API tidak menyediakan fasilitas apa pun untuk menambahkan deskripsi shortcode, penentuan tipe (type casting) atribut, atau deskripsi atribut. Dan kecuali WordPress sendiri menambahkan area terpusat untuk mengakses shortcode, saya ragu fasilitas ini akan dibuat.

Kesimpulan

Saat ini tugas mengorganisir shortcode diserahkan kepada masing-masing pengembang. Kecuali sebuah metode terpusat dikembangkan di dalam WordPress, bersiaplah untuk terus melihat beberapa tombol “Tambah Shortcode” di backend Anda. Apakah hal seperti ini harus ditambahkan ke dalam WordPress Core atau tidak adalah diskusi besar tersendiri.

Alternatif

Ada plugin pembuat halaman (page builder) yang menangani masalah ini secara berbeda. Alih-alih mendeteksi shortcode secara terprogram, mereka memiliki pemeta shortcode di mana pengguna dapat memasukkan setiap rincian shortcode secara manual. Setelah selesai, shortcode tersebut kemudian akan tersedia di dalam page builder. Meskipun  cara ini berhasil, shortcode tersebut hanya tersedia di situs Anda sendiri.

Kami di Page Builder Sandwich sedang menciptakan sesuatu yang semoga dapat menyelesaikan teka-teki shortcode ini. Berlanggananlah ke buletin kami di bawah ini untuk mendapatkan pemberitahuan tentang progres kami.