我正在使用Joomla 2.5和DirectPHP。我可以在文章中运行PHP代码就好了。我想包含一个PHP函数库,可以在所有文章中使用。包含函数库的最佳方法是什么?
我尝试从模板的index.php中包含(带有require),甚至将函数直接放在index.php中,如建议的here。本文中未定义任何功能。使用变量和全局变量的测试也会在文章中找到它们未定义。
然后我创建了一个自定义HTML模块,其中包含我在模板中使用的PHP函数,但它们在文章中仍未定义。奇怪的是,如果我尝试在文章中再次声明该功能,我会得到"无法重新声明..."。该函数如何既未定义又无法重新定义?
我还尝试使用命名空间来定义和使用我的函数。结果相同。 我的自定义html模块中的代码:
<?php
namespace c6;
function testit5()
{
echo "hello world 5";
}
?>
我的文章中的代码:
<?php
namespace c6;
testit5();
?>
结果:
致命错误:在/home/testsite/www/www/c6test/plugins/content/DirectPHP/DirectPHP.php(58)中调用未定义的函数c6 \ testit5():eval()&#39; d code on第5行
答案 0 :(得分:0)
转到,
Login to admin -> Extensions Menu -> Module Manager -> Create New Module -> Choose Custom HTML
创建自己的模块并添加php函数。
答案 1 :(得分:0)
我明白了!我的问题是订单 Joomla处理事情。显然首先处理文章,然后是模板。所以我的代码使用了在定义函数的模块之前执行的函数。 (当我收到“无法重新声明”错误时,它来自模板,而不是文章。)我将我的装载位置从模板移到了文章中,然后就可以了。