簡體   English   中英

joomla 1.7:覆蓋模塊helper.php

[英]joomla 1.7 : override a module helper.php

我想覆蓋模塊的helper.php文件

\\ administrator \\ modules \\ mod_quickicon \\ helper.php

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

我要重寫此特定文件有哪些選擇? 有可能使用插件嗎?

謝謝

您實際上只能對tmpl文件夾中名為default.php的文件進行模板覆蓋。 如果要覆蓋helper.php,則實際上是在重寫模塊本身。 這不一定是一件壞事,只需將現有helper.php文件的內容復制到另一個文件中進行備份,然后破解即可。 這樣做的缺點是,如果有人更新了模塊,然后安裝了該更新,則必須重做黑客。 同樣,解決這個問題並不難。 只是備份備份備份。

還有一些想法:您還可以執行以下操作:1)將模塊復制到另一個文件夾,該文件夾也以mod_開頭,但名稱不同。 2)修改xml文件,幫助文件,組件文件(以及其他所有必要的文件)以使用新名稱。 還可以執行任何您想要的helper.php。 3)轉到擴展管理器並執行此新模塊的發現安裝。4)轉到模塊管理器並制作新模塊的新實例(使用與舊模塊相同的位置)。 5)取消發布您要替換的模塊

這樣做可以使您免受更新損失的影響。

這就是我對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"

請享用!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM