आपके मेनू में खोज मॉड्यूल को लोड करने का एक विकल्प यहां दिया गया है। इसके लिए कुछ सरल चरणों की आवश्यकता है:
1. अपने mod_menu
मॉड्यूल को ओवरराइड करें
- अपने टेम्प्लेट फ़ोल्डर में एक ओवरराइड बनाएँ
\templates\YOURTEMPLATE\html\mod_menu\default_url.php
।
- निम्न सामग्रियों को फ़ाइल में कॉपी करें:
default_url.php
<?php
/**
* @package Joomla.Site
* @subpackage mod_menu
*
* @copyright Copyright (C) 2005 - 2014 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
defined('_JEXEC') or die;
// Note. It is important to remove spaces between elements.
$class = $item->anchor_css ? 'class="' . $item->anchor_css . '" ' : '';
$title = $item->anchor_title ? 'title="' . $item->anchor_title . '" ' : '';
if ($item->menu_image)
{
$item->params->get('menu_text', 1) ?
$linktype = '<img src="' . $item->menu_image . '" alt="' . $item->title . '" /><span class="image-title">' . $item->title . '</span> ' :
$linktype = '<img src="' . $item->menu_image . '" alt="' . $item->title . '" />';
}
else
{
$linktype = $item->title;
}
$flink = $item->flink;
$flink = JFilterOutput::ampReplace(htmlspecialchars($flink));
if ($linktype == "CustomSearchBox"){
$document = &JFactory::getDocument();
$renderer = $document->loadRenderer('modules');
$options = array('style' => 'xhtml');
$position = 'CustomSearchBox';
echo $renderer->render($position, $options, null);
}
else {
switch ($item->browserNav) :
default:
case 0:
?><a <?php echo $class; ?>href="<?php echo $flink; ?>" <?php echo $title; ?>><?php echo $linktype; ?></a><?php
break;
case 1:
// _blank
?><a <?php echo $class; ?>href="<?php echo $flink; ?>" target="_blank" <?php echo $title; ?>><?php echo $linktype; ?></a><?php
break;
case 2:
// window.open
$options = 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,'.$params->get('window_open');
?><a <?php echo $class; ?>href="<?php echo $flink; ?>" onclick="window.open(this.href,'targetWindow','<?php echo $options;?>');return false;" <?php echo $title; ?>><?php echo $linktype; ?></a><?php
break;
endswitch;
}
मैंने if-else
लाइन # 29 पर शुरू होने वाला एक बयान जोड़ा है , जो यह जांचता है कि क्या मेनू आइटम का शीर्षक "CustomSearchBox" है। यदि ऐसा है, तो मॉड्यूल स्थिति "CustomSearchBox" लोड है। यदि नहीं, तो सामान्य मेनू आइटम वापस आ गया है। आप "CustomSearchBox" को अपनी पसंद के अनुसार बदल सकते हैं, लेकिन यदि आपको निम्न चरणों में समान मूल्य का उपयोग करना याद है।
2. एक नया खोज मॉड्यूल बनाएं
खोज मॉड्यूल बनाएं और मापदंडों को आवश्यकतानुसार सेट करें (मैं मॉड्यूल शीर्षक छिपाने का सुझाव देता हूं)।
मॉड्यूल को कस्टम स्थिति "CustomSearchBox" पर प्रकाशित करें
3. एक नया मेनू आइटम बनाएं
मेनू आइटम किसी भी प्रकार का हो सकता है, मैं सुझाव देता हूं कि "बाहरी URL", और नाम "CustomSearchBox" होना चाहिए।
अपना मेनू आइटम सहेजें, और संपूर्ण मेनू आइटम को खोज बॉक्स के साथ बदल दिया जाएगा!
अगर कुछ अस्पष्ट है तो मुझे बताएं।
jQuery
ऐसे कार्यों पर विचार कर सकते हैंappend()
याprepend()
जो जावास्क्रिप्ट-अक्षम ब्राउज़र पर काम नहीं करेंगे।