我遇到一个奇怪的问题,我的模板路径提示不会仅在一个单独停用。
在此之前,我遇到了一个奇怪的错误,即页面上的联系表单会提交,但会在产品页面上显示成功消息。
清除缓存后我们似乎解决了这个问题(我们使用的APC缓存也已清除)。事情是我提交了联系表单,而模板提示仍然在那里,从那时起,它一直无法关闭该页面。
我尝试过使用缓存上下楼梯的常规步骤,并从终端删除缓存文件夹的内容。
有没有人建议我开始调试这个?
由于
答案 0 :(得分:2)
我首先要进入基础模板类
#File: app/code/core/Mage/Core/Block/Template.php
并弄清楚getShowTemplateHints
方法在该页面上返回true的原因
#File: app/code/core/Mage/Core/Block/Template.php
public function getShowTemplateHints()
{
if (is_null(self::$_showTemplateHints)) {
self::$_showTemplateHints = Mage::getStoreConfig(self::XML_PATH_DEBUG_TEMPLATE_HINTS)
&& Mage::helper('core')->isDevAllowed();
self::$_showTemplateHintsBlocks = Mage::getStoreConfig(self::XML_PATH_DEBUG_TEMPLATE_HINTS_BLOCKS)
&& Mage::helper('core')->isDevAllowed();
}
return self::$_showTemplateHints;
}
或者,它返回false
,为什么基本模板类仍然会到达渲染点。
#File: app/code/core/Mage/Core/Block/Template.php
if ($this->getShowTemplateHints()) {
echo <<<HTML
<div style="position:relative; border:1px dotted red; margin:6px 2px; padding:18px 2px 2px 2px; zoom:1;">
<div style="position:absolute; left:0; top:0; padding:2px 5px; background:red; color:white; font:normal 11px Arial;
text-align:left !important; z-index:998;" onmouseover="this.style.zIndex='999'"
onmouseout="this.style.zIndex='998'" title="{$fileName}">{$fileName}</div>
HTML;
if (self::$_showTemplateHintsBlocks) {
$thisClass = get_class($this);
echo <<<HTML
<div style="position:absolute; right:0; top:0; padding:2px 5px; background:red; color:blue; font:normal 11px Arial;
text-align:left !important; z-index:998;" onmouseover="this.style.zIndex='999'" onmouseout="this.style.zIndex='998'"
title="{$thisClass}">{$thisClass}</div>
HTML;
}
}
答案 1 :(得分:1)
刷新缓存为我解决了这个问题。
答案 2 :(得分:0)
检查每个商店视图中的模板提示并清除服务器和本地缓存后,我再次清除了缓存,然后重新启动apache。