2015-11-24 60 views
0

我正在爲Magento上的聖誕節模塊工作。 每天在網站的索引頁面上都會顯示一個彈出窗口。 此彈出窗口將包含圖像和鏈接。如何重新加載塊在Magento?

要加載彈出,我定義什麼CSS使用(module.phtml):

<?php 
    $today = explode(".",date("d.m.y")); 
    $month = $today[1]; 
    $day = $today[0]; 
    $file = 'POP UP '.$day.'.jpg';  
    $class = 'block block-AdventCalendar'.$day; 
?> 

<div class="<?php echo $class ?>"> 
</div> 

例如,在CSS文件(APP-base.css):

.block-AdventCalendar1 { 
background-image: url('../images/popupAdvent/POP UP 1.jpg'); 
background-size: 100% 100%; 
color: #fff; 
margin: 0; 
height:350px; 
width :700px; 
} 

此代碼工作正常,但當日更改Magento加載錯誤的CSS類。 要顯示正確的圖像,我必須每天清除Magento緩存。

但是,當我修改phtml文件中的某些內容時,會立即顯示更改,只有內聯CSS不會重新加載。

有沒有人有想法強制phtml加載正確的CSS?

回答

0

嘗試使用此:

Mage::app()->cleanCache(); 

到您的代碼加載後清除Magento的緩存。

+0

我已經嘗試這個,但還是同樣的問題。 Thx – Nicolas

0

您也可以嘗試一個JavaScript替代:

<script> 
    var dateObj = new Date(); 
    var month = dateObj.getUTCMonth() + 1; //months from 1-12 
    var day = dateObj.getUTCDate(); 
    var element = document.getElementById('your_div_id'); 

    if (element) { 
    element.className += element.className ? ' block-AdventCalendar'+day : 'block-AdventCalendar'+day; 
    } 
</script> 

要添加類到div後添加此。此外,給你一個唯一的ID(<div id="your_div_id">...</div>

+0

感謝亞歷克斯的回答。我試着用JS,這個問題是一樣的。所有的phtml文件都重新加載,除了這行,而緩存不爲空。 – Nicolas

+0

這很奇怪。 Javascript在瀏覽器中執行,緩存應該幾乎沒有影響:/ –

0

該問題不是由於CSS。 如果我改變它或phtml,所有的改變都是立即的。

只有DIV類保持不變

<div class="<?php echo $class ?>">