我一直在尝试在我的模板中包含一个文件,其中包含一些我打算用于验证成员所具有的访问级别的函数,以便为 Joomla 2.5 中不同类型的用户定制内容。问题是,尽管我使用了标准的 PHP include 语句,但模板中似乎没有一个函数可用。相反,调用这些函数会导致使用该模板的任何页面崩溃。我可以对正在运行的模板顶部的函数进行硬编码,但我也计划在 Web 应用程序的其他位置使用一些函数,因此将它们存储在包含文件中是有意义的。有谁知道为什么这些函数在包含时不起作用,但在添加到模板顶部时却起作用?以下是我的模板的前几行,其中包含包含语句:
<?php
defined( '_JEXEC' ) or die( 'Restricted access' );
JHtml::_('behavior.framework', true);
include ("/includes/checkAccess.php");
请注意,当硬编码到模板中时,所有函数都可以正常工作,因此这肯定是包含的问题。此外,上面的包含路径似乎是正确的,因为如果添加上面的包含行,模板仍然可以正常工作,除非调用它包含的函数之一。
最佳答案
如果文件夹“includes”位于同一目录中,这当然有效
include(dirname(__FILE__)."/includes/checkAccess.php");
关于php - 如何在 Joomla 模板中包含 PHP 函数文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16206708/