2012-01-03 71 views
1

我想重寫一個helper.php文件模塊的模塊,正是的Joomla 1.7:覆蓋helper.php

\管理員\模塊\ mod_quickicon \ helper.php

我想要的是更新這個文件中的getButtons函數

我有什麼選擇來覆蓋這個特定的文件?它可能使用插件?

感謝

回答

7

你真的可以做到只在所謂的如default.php文件夾TMPL的文件的模板覆蓋。如果你想重寫helper.php,你本質上是重寫模塊。這不一定是壞事,只需將現有的helper.php文件的內容複製到另一個文件中進行備份即可。這樣做的缺點是,如果有人更新模塊,並且安裝該更新,則必須重做你的黑客。再一次,解決問題並不難。只需備份備份備份。

還有一些想法: 您還可以執行以下操作: 1)將模塊複製到不同的文件夾,並以mod_開頭,但名稱不同。 2)修改xml文件,幫助程序文件,組件文件(以及任何其他必需的文件)來說明新名稱。也做任何你想helper.php。 3)轉到擴展管理器並執行這個新模塊的發現安裝 4)轉到模塊管理器並創建新模塊的新實例(使用與舊模塊相同的位置)。 5)取消發佈您要更換的模塊

這樣做可以讓您免受更新損失。

-1

以下是我對Joomla所做的一切! 3.3.1但它可能與Joomla完成! 1.7,也:

  • 複印default.php

    /administrator/modules/mod_quickicon/tmpl/ 
    

    /administrator/templates/YOUR_ADMIN_TEMPLATE_NAME/html/mod_quickicon/ 
    
  • 打開復制的文件和替換下面

    $html = JHtml::_('links.linksgroups', ModQuickIconHelper::groupButtons($buttons)); 
    

    與這些行的行:

    $myLinks = array(
        'YOUR_QUICKICON_GROUP_NAME' => array(
         array(
          'link' => JRoute::_('index.php?option=com_YOURCOMPONENT'), 
          'image' => 'stack', 
          'icon' => 'header/icon-48-article-add.png', 
          'text' => JText::_('YOUR_QUICKICON_ITEM_NAME'), 
          'access' => array('core.manage', 'com_YOURCOMPONENT'), 
          'group' => 'YOUR_QUICKICON_GROUP_NAME' 
         ) 
        ) 
    ); 
    
    $array = ModQuickIconHelper::groupButtons($buttons); 
    $array = array_merge($myLinks, $array); 
    
    $html = JHtml::_('links.linksgroups', $array); 
    

就是這樣。您可以編輯或創建/administrator/language/overrides/en-GB.override.ini並添加以下行:

YOUR_QUICKICON_GROUP_NAME="The Group" 
YOUR_QUICKICON_ITEM_NAME="The Item" 

享受!

+0

您的解決方案可覆蓋模板,但不是幫手。請參閱:https://docs.joomla.org/How_to_override_the_output_from_the_Joomla!_core – Chofoteddy 2015-10-09 22:37:06