알림 블록에서 캐시 시간을 비활성화 / 줄이는 방법은 무엇입니까?
-
13-12-2019 - |
문제
RSS 피드에서 정보를 가져오고 관리 패널 알림받은 편지함 및 툴바에있는 모듈을 만들고 관리자 메뉴 아래에있는 툴바에 표시됩니다.
이것은 완벽하지만 불행히도 새로 고침 할 때 새로운 메시지를로드하지 않습니다.Magento의 캐시를 플러시하고 새 메시지를로드하기 위해 새로 고침해야합니다.
알림 모듈 / 블록의 캐시를 비활성화하고 있으므로 페이지가로드 될 때마다 모든 새 메시지를로드 할 수 있습니다.
나는이 코드 라인을 피곤하지만 그것이 작동하지 않는 것처럼 보입니다 :
<reference name="notification_toolbar">
<action method="setCacheLifetime"><s>0</s></action>
</reference>
.
정보가 생성되지 않는 것이 아니기 때문에 정보를 생성하지 않으므로이 작업을 수행하지 않습니다.
이 모듈 / 블록에서 캐시를 비활성화하는 방법에 대해 알려주십시오.
감사합니다.
해결책
나는 나 자신에 의해 그것을 알아 냈다!
일부 코드를 통해보고있는 후에는 업데이트 빈도 타이머가 있으므로 관리 패널의 시스템 섹션을 살펴보고 구성 => 시스템에서 업데이트 빈도 선택기를 발견했습니다 / strong>=> 알림 .불행히도 그것이 가지고있는 최소한의 시간은 1 시간 입니다.
나는 마법사 폴더를 통과하여 시간을 제공하는 다음을 찾았습니다.
mage / adminhtml / model / system / config / source / notification / frequency.php
class Mage_Adminhtml_Model_System_Config_Source_Notification_Frequency
{
public function toOptionArray()
{
return array(
1 => Mage::helper('adminhtml')->__('1 Hour'),
2 => Mage::helper('adminhtml')->__('2 Hours'),
6 => Mage::helper('adminhtml')->__('6 Hours'),
12 => Mage::helper('adminhtml')->__('12 Hours'),
24 => Mage::helper('adminhtml')->__('24 Hours')
);
}
}
.
i 그런 다음 다음 코드를 추가하고 일부 테스트를 실행했습니다!
0 => Mage::helper('adminhtml')->__('0 Minute'),
.
내가 올바르게 수행했는지는 확실하지는 않지만, 내가 필요로하는 것이 정확히 일합니다. 그런 다음 내 모듈을 완료하기 위해이를 대체합니다.
다른 사람들을 돕기를 바랍니다!
다른 팁
왜 이것을 너무 많이 업데이트 하시려는가?
2 가지 옵션이있을 수 있습니다.이 캐시를 지우는 이벤트 옵저버를 작성할 수 있습니다.admin_notifications_lastcheck는 알림에 대해 찾을 수있는 캐시 태그입니다.
Core / Adminnotification / model / feed.php에서 setLastUpdate 함수의 다시 쓰기를 작성하여 캐시 수명을 실제로 짧게 만드는 것입니다.이 함수를 캐시 수명으로 매개 변수를 제공 할 수 있습니다.
나는 그것을 시도하지 않았으며 서둘러 있지만, 답변이 없기 때문에 나는 그것을 공유해야한다고 생각했다.내일 더 많은 정보를 추가 할 수 있습니다.