【问题标题】:How to display dynamic text in magento static block depending on time and day of week?如何根据时间和星期几在magento静态块中显示动态文本?
【发布时间】:2015-05-20 22:41:53
【问题描述】:

在 magento 的静态块中,我想根据星期几和时间显示动态消息。

这是为客户准备的,因此他们知道客户支持何时开放,何时关闭。

例如:我想在周一至周五的 09:00 至 17:00 显示:“Now Open”。 在周六、周日和周一至周五 17:01 到 08:59 我想显示文本:“现已关闭”。

有没有办法用 javascript 或任何其他方式做到这一点?

请记住,在这件事上我是个菜鸟 :)。

非常感谢所有帮助!

【问题讨论】:

    标签: javascript magento


    【解决方案1】:

    我没有在这里提供完整的解决方案,因为这需要一定的时间和精力,但我可以帮助你一些想法,这样你就可以实现你的要求。

    逻辑是:

    1. 您可以使用 open 的图像或信息创建两个静态块和 关闭。您可以从管理面板轻松完成。
    2. 现在是主要部分。即您需要操纵时间和日期。如果您希望它完全动态并且管理员可以选择日期和时间,那么您需要创建自定义模块。在该模块中,您需要提供一个选择日期和时间的地方(您必须在此处使用您的逻辑,如何更容易地操作您从这里获得的数据。您可以使用多选天数等开)。
    3. 下一部分是,在您的模块准备好后,您必须将该数据从后端插入到要显示静态块的模板文件中。您必须使用一些条件来显示 打开关闭块。

    在您的案例中,您可能需要对如何操纵时间进行少量研究。就是这样。

    试试这个,如果您有任何其他问题,请随时询问。

    希望这会有所帮助。

    【讨论】:

      【解决方案2】:

      我设法想出了另一个解决方案。

      将其放在 HTML Head 中:

      <style type="text/css">
      #openSign.OPEN {
      color: green;
      background-color: yellow;
      font-size: x-large;
      }
      #openSign.CLOSED {
      color : red;
      background-color: pink;
      font-size: large;
      }
      </style>
      
      <script type="text/javascript">
      
      var OPENAT = 7.5; // 7:30 AM ... change as appropriate - can be fractions of an hour e.g. 7.5 = 7:30am
      var CLOSEAT = 21; // 9:00 PM ... change as appropriate
      
      function areWeOpen( ) {
      var sign = document.getElementById("openSign");
      var day = new Date().getDay();
      var hour = new Date().getHours();
      var mins = new Date().getMinutes();
      hour = hour + mins/60;
      if ( day >=1 && day <=5 && hour >= OPENAT && hour < CLOSEAT )  {
      sign.innerHTML = "We are now OPEN";
      sign.className = "OPEN";
      } 
      else {
      sign.innerHTML = "Sorry, we are now CLOSED";
      sign.className = "CLOSED";
      }
      }
      </script>
      

      这个在静态块中:

      <body onload = "areWeOpen()">
      <span id="openSign"></span>
      

      我不知道这是否是一个巧妙的解决方案,但它对我有用。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-12-13
        • 2014-08-19
        • 1970-01-01
        • 1970-01-01
        • 2011-02-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多