2014-02-10 34 views
0

我需要修改一個joomla3搜索模塊以搜索5個不同的搜索類別,在那裏我更改了模塊form.xml文件並添加了五個單選按鈕,我想要分配的特定類別的ID從數據庫單選按鈕,如何通過joomla 3 cutom字段的類別標識

這裏form.xml

 <field name="type" type="radio" 
      label="COM_BANNERS_FIELD_TYPE_LABEL" description="COM_BANNERS_FIELD_TYPE_DESC" 
      default="0" class="inputbox" 
      > 
     <option value="0">Classifields</option> 
     <option value="1">Company</option> 
     <option value="2">Government</option> 
     <option value="3">Religious</option> 
     <option value="4">Personal Names</option> 
    </field> 

繼承人的視圖/ TMPL /如default.php

<form action="<?php echo JRoute::_(JomdirectoryHelperRoute::getCategoryRoute('')); ?>" method="post" name="jomdirectoryFormSearch" id="jomdirectoryFormSearch"> 


    <div class="control-group"> 

     <div class="controls1"> 
      <?= $form->getInput('type') ?> 
     </div> 

    </div> 

回答

0

的如default.php你並非來自Joomla的搜索模塊。它看起來來自JomDirectory。 Joomla的搜索模塊看起來是這樣的:

https://github.com/joomla/joomla-cms/blob/staging/modules/mod_search/tmpl/default.php

要分配類別ID值,並讓他們爲你實際上把類ID在選項值的形式。就像這樣:

<field name="cat_id" type="radio" 
      label="COM_BANNERS_FIELD_TYPE_LABEL" description="COM_BANNERS_FIELD_TYPE_DESC" 
      default="0" class="inputbox" 
      > 
     <option value="58">Classifields</option> <!-- 58 is the category id --> 
     <option value="13">Company</option> <!-- 13 is the cat id --> 
     <option value="25">Government</option> <!-- etc --> 
     <option value="39">Religious</option> 
     <option value="47">Personal Names</option> 
    </field> 

我們發送類別com_search(或任何部分你實際使用),你必須檢索表單提交類別ID。在你的Joomla將使用JInput:

<?php 

$input = JFactory::getApplication()->getInput(); 
$catid = $input->getInt('cat_id'); 

?> 

你需要的是$ CAT_ID變量插入到搜索查詢,以使其返回這些結果。

一些重要注意事項:

1)不要修改核心Joomla。您可以使用模板替代完成表單工作。說要做你想做的事情需要一些插件來修改Joomla的搜索查詢(這樣你就不會修改核心代碼)

2)有一些擴展插件可以正確安裝和使用插件:http://extensions.joomla.org/extensions/search-a-indexing/site-search/12819

+0

我想從數據庫中獲取分類id,因爲這個分類id不是fron joomla分類,所以從這個分組中調用JomDirectory。是否有任何可以從數據庫表中獲取id的可行性? – fdz

+1

而不是使用下拉類型使用您的表單字段的SQL類型:http://docs.joomla.org/SQL_form_field_type –

+0

謝謝,是否有任何可能性使用這個複選框或單選按鈕,如果是的話如何做 – fdz

相關問題