Saya perlu memasukkan modul pencarian sebagai item menu (modul menu default).
Saya membutuhkan hasil ini:
<ul>
<li>menu item</li>
<li>menu item</li>
<li>SEARCH MODULE</li>
<li>menu item</li>
...
</ul>
Pikiran pertama saya adalah menggandakan modul menu default dua kali:
- Satu untuk menampilkan item menu sebelum modul pencarian tanpa
</ul>
tag penutup - Yang lain untuk menampilkan item menu setelah modul pencarian tanpa
<ul>
tag pembuka
Dan masukkan modul pencarian di antara mereka. Ini tampaknya bukan cara termudah dan paling dapat dipertahankan untuk mencapai tujuan saya karena itu membutuhkan:
- 3 posisi modul untuk menu
- 2 menu berbeda di pengelola menu
Saya tahu saya bisa menggunakan beberapa modul menu mega untuk melakukan ini, tetapi saya ingin menghindari ekstensi pihak ketiga dan menggunakan kode khusus yang dapat saya kontrol.
Bagaimana saya bisa menambahkan modul sebagai item menu di menu default?
joomla-3.x
menu-item
menu
web-tiki
sumber
sumber
jQuery
fungsi sepertiappend()
atauprepend()
yang tidak akan berfungsi pada browser yang dinonaktifkan javascript.Jawaban:
Berikut ini salah satu alternatif untuk memuat modul pencarian di menu Anda. Dibutuhkan beberapa langkah sederhana:
1. Ganti
mod_menu
modul Anda\templates\YOURTEMPLATE\html\mod_menu\default_url.php
.default_url.php
Saya telah menambahkan
if-else
pernyataan mulai dari baris # 29, yang memeriksa apakah judul item menu adalah "CustomSearchBox". Jika demikian, posisi modul "CustomSearchBox" dimuat. Jika tidak, item menu normal dikembalikan. Anda dapat mengubah "CustomSearchBox" menjadi apa pun yang Anda suka, tetapi jika Anda ingat untuk menggunakan nilai yang sama pada langkah-langkah berikut.2. Buat modul pencarian baru
Buat modul pencarian dan atur parameter sesuai kebutuhan (saya sarankan untuk menyembunyikan judul modul).
Publikasikan modul ke posisi khusus "CustomSearchBox"
3. Buat item menu baru
Item menu dapat berupa jenis apa pun, saya sarankan "URL Eksternal", dan nama HARUS "CustomSearchBox".
Simpan item menu Anda, dan seluruh item menu akan diganti dengan kotak pencarian!
Beri tahu saya jika ada sesuatu yang tidak jelas.
sumber
$linktype == "CustomSearchBox"
dan di sini$position = 'CustomSearchBox';
CustomSearchBox
di kolom posisi modul dan tekan enter.$document = JFactory::getDocument();
. Sekarang berfungsi tetapi saya harus menemukan cara untuk menambahkan gambar saya kembali.$linktype
fungsi gema. Kode ini terlihat di sini: phpad.org/1645824385 . Terima kasih telah mengarahkan saya ke arah yang benar ini adalah sesuatu yang ingin saya capai untuk beberapa waktu sekarang ini luar biasa! :)Meskipun Anda mengatakan Anda tidak ingin menggunakan ekstensi pihak ketiga, saya punya solusi yang menggunakan RokCandy dari RocketTheme . Ini adalah komponen snippet kecil yang membuatnya sangat mudah untuk menambahkan bidang pencarian di menu. Cukup instal plugin, dan buat makro baru seperti ini:
Makro
HTML
Simpan dan tutup.
Sekarang buat item menu untuk kotak pencarian (saya sarankan
External URL
sebagai tipe, tetapi semua tipe item menu akan dilakukan), dan di kolom Title , tambahkan[searchfield][/searchfield]
:RokCandy akan mengganti judul dengan kode di makro, dan Anda akan mendapatkan bidang pencarian di menu:
sumber