這個問題可能看起來有點愚蠢,但我是Joomla新手!如何使文件成爲Joomla的一部分?
而我正在編輯一個當前的組件,我想在某些時候調用一個輸出數據的小型php 文件。 現在在那個文件中,我想使用joomla類和數據庫功能 像setQuery等
我想要它讀取joomla前綴(#__)。 和文件是由我創建的,所以我想知道我需要包含什麼以及如何。
誰能告訴我該怎麼做?
由於提前, 埃裏克
這個問題可能看起來有點愚蠢,但我是Joomla新手!如何使文件成爲Joomla的一部分?
而我正在編輯一個當前的組件,我想在某些時候調用一個輸出數據的小型php 文件。 現在在那個文件中,我想使用joomla類和數據庫功能 像setQuery等
我想要它讀取joomla前綴(#__)。 和文件是由我創建的,所以我想知道我需要包含什麼以及如何。
誰能告訴我該怎麼做?
由於提前, 埃裏克
好alghimo答案引我到寫這篇:
define('_JEXEC', 1);
define('JPATH_BASE', dirname(__FILE__));
define('DS', DIRECTORY_SEPARATOR);
require_once (JPATH_BASE .DS.'includes'.DS.'defines.php');
require_once (JPATH_BASE .DS.'includes'.DS.'framework.php');
/* Create the Application */
$mainframe =& JFactory::getApplication('site');
但作爲mentoined。不建議這樣做。
倒不如不包括「外部」 PHP文件,我的意思是文件出的Joomla結構。但是如果你仍然想這樣做,你可以在任何你需要的地方包含這個php文件,並且只要你從另一個Joomla文件夾中包含這個文件就可以使用所有的Joomla類和函數(也許你的組件入口點,控制器,模型,視圖等)。 此外,如果您的文件輸出數據,則包含它的最佳位置將來自組件中的模板。如果你在任何其他地方使用它,你應該得到該文件的輸出(例如,使用ob_start(),ob_get_contents()方法),並將它們保存爲某種變量以從模板輸出。 我猜你可能已經知道如何將其納入該文件,但如果例如你的文件裏面的Joomla根中的文件夾「mylibs」,你應該包括這樣的:
include JPATH_ROOT . DS . 'mylibs' . DS . 'myfile.php';
爲什麼是你的原因需要包含該文件,並且無法將其作爲模板呈現?
我希望它有幫助。
最好的辦法是你寫的「真實」的Joomla安裝組件,模塊,插件等之前,使用等擴展獲取程序或JUMI
http://extensions.joomla.org/extensions/edition/custom-code-in-content
適合入門...
嗨idea34,我不需要把代碼放在內容中。我有一個組件,我只是想添加一個由XmlHttpRequest調用的小php文件。 –
我認爲最好的辦法是輸出覆蓋。 Take a look at the documentation。這樣你就不需要編輯一個核心joomla擴展(當然,現在我看起來更接近你不要說編輯核心擴展)。無論如何,輸出覆蓋非常酷,使用擴展的功能,但你可以做最後的修改。
在您當前的模板文件夾中創建一個名爲'html'的文件夾,然後查看鏈接(或另一個模板,如beez)以確定您要覆蓋的特定擴展名的文件夾結構。然後,您可以在該覆蓋範圍內使用所有joomla功能調用腳本,並且不會破壞核心。
我不想包含它,我想用XmlHtppRequest調用它叫 –