感谢您的帮助性评论,原来是CiviCRM 4.7插件使用了一个“基本页面”,并且一直在调用page.php
作为默认主题模板。但我们的主题没有实现page.php
所以没有<html>
或<head>
正在注入内容物。
已通过安装进行调试XDebug 在端口9000和上运行的服务器上PHPStorm 在客户端上(有免费的,但这很容易设置!)最后是“Chrome XDebug助手扩展”。抱歉,由于信誉问题,没有更多链接:(
逐步遍历代码显示了由原始主题开发人员实现的模板层次结构,总是绕过page.php
和呼叫partials/front-page.php
, 这是一些主题中使用的常见模式,例如美德。
因此,解决方案是在“函数”的底部添加一个过滤器。php的文件,并重写调用页面的CiviCRM插件操作。php:-
add_filter( \'civicrm_basepage_template\', \'front_page_for_civi\' );
function front_page_for_civi( $template ) {
if ($template==\'page.php\') {
return \'partials/front-page.php\';
}
return $template;
}
根据插件的不同,此过滤器显然需要调用
civicrm_basepage_template
, 但希望它能为人们指明正确的方向!
感谢@christian wach最初在CiviCRM stack exchange论坛上回答了这个问题。