Saya Saat ini sedang dalam tahap alfa mengedit tema anak untuk tema Wordpress. Saya memang memiliki pengalaman pemrograman dan beberapa pengalaman mengelola wordpress tetapi tidak memiliki pengalaman langsung mengedit kode terkait wordpress. Saat ini sedang menampilkan tiga kategori pertama berdasarkan abjad.
Apa yang saya coba lakukan: Alih-alih menampilkan tiga kategori pertama secara alfabet, saya ingin menampilkan 3 kategori acak dengan lebih dari x jumlah produk.
Saya telah mengalami hambatan / pertanyaan berikut yang menghentikan saya melanjutkan.
- Mekanisme / fungsi apa yang mengontrol pemilihan kategori-kategori ini? (Kode mereka)
- Apakah berdasarkan tema atau sesuatu dalam sistem WordPress yang mendasarinya?
- Apa informasi lain yang relevan untuk melakukan perubahan ini?
- Informasi apa yang berguna dari Firefox Dev Bar?
- Bagaimana cara menemukan "Kode Mereka" sehingga saya dapat menggantinya dengan "Kode Kode Saya"?
Pertanyaan sebenarnya di sini adalah: Bagaimana cara menemukan "Kode Mereka" yang bertanggung jawab atas pemilihan ini menggunakan alat-alat seperti firefox Dev Bar dan sumber yang sebenarnya?
Pertanyaan ini bukan tentang WooCommerce (plugin). Saya mencari cara untuk menemukan fungsi dalam tema yang dirancang oleh WooCommerce (perusahaan) atau dalam tema apa pun.
Tema opensource: WooCommerce Storefront
Jawaban:
Jika Anda merujuk pada output / sumber HTML, maka misalnya di situs demo tema Storefront resmi , cukup klik kanan pada judul atau bagian "Kategori Produk" dan kemudian Anda dapat dengan mudah memeriksanya
section
. Lihat dokumen MDN untuk opsi lain seperti ikon "Pilih Elemen".Sekarang untuk " sumber aktual " (yaitu kode atau fungsi PHP yang menghasilkan bagian "Kategori Produk" pada Halaman menggunakan templat "Beranda"), Anda dapat menemukannya di
inc/storefront-template-functions.php
.Begitu
storefront_product_categories()
juga fungsi PHP yang Anda cari dan yang bisa Anda timpa sepenuhnya jika Anda mau (lihat https://docs.woocommerce.com/document/set-up-and-use-a-child-theme/# bagian-5 ). Tetapi jika Anda hanya ingin menampilkan kategori produk dalam penyortiran acak, maka Anda cukup menggunakanstorefront_product_categories_args
untuk menyaring argumen kueri (yang dalam kasus Anda adalahorderby
):Filter itu dipanggil dari dalam
storefront_product_categories()
fungsi, dan ini adalah filter / tindakan lain yang dapat Anda gunakan:Saring:
storefront_product_categories_shortcode_args
Tindakan:
storefront_homepage_before_product_categories
Tindakan:
storefront_homepage_after_product_categories_title
Tindakan:
storefront_homepage_after_product_categories
Lihat ini jika Anda tidak yakin tentang perbedaan antara "tindakan" dan "filter".
UPDATE: Bagaimana Anda dapat menemukan kode?
Jelajahi melalui dokumentasi tema Storefront :
Beranda "aksi"
Fungsi templat etalase
Periksa etalase Filter contoh: Perubahan jumlah produk yang ditampilkan per halaman .
Pertama, periksa (dan baca) dokumentasi tema.
Jika tidak ada atau Anda tidak / tidak bisa menemukan informasi yang anda butuhkan, kemudian mencoba apa @motivast telah menyarankan - Periksa elemen pada halaman, menemukan kode HTML yang sesuai dan / atau CSS
class
/id
, kemudian cari file tema untuk itu HTML atau CSSclass
/id
hingga Anda menemukan file yang tepat atau kode PHP /function
.Misalnya, di situs demo tema Storefront, HTML bagian kategori produk adalah:
Jadi Anda dapat mencari file tema menggunakan
salah satukata kunci ini: (Saya akan mulai dari kecocokan paling spesifik atau paling dekat dengan HTML yang dihasilkan)<section class="storefront-product-section storefront-product-categories"
class="storefront-product-section storefront-product-categories"
storefront-product-categories
storefront-product-section
Dengan asumsi Anda tidak tahu tentang dokumentasi Storefront / theme, melakukan pencarian di atas pada akhirnya akan membawa Anda ke file yang tepat atau kode PHP /
function
.Jika Anda memerlukan bantuan lebih lanjut, beri tahu saya dan saya akan memperbarui jawaban ini.
sumber