AMP-компонент для даты

Для того, чтобы на вашем баннере (или любом другом блоке) была крутая фишка с «успейте применить промокод до ЧЧ.ММ.ГГ», вам потребуется две вещи:

  1. Ивент в javascript для основного домена;
  2. AMP-компонент для, соответственно, ампа.

Сосредоточимся на втором пункте.

В первую очередь, необходимо подключить скрипты в <head>:

        <!-- Include the `amp-date-display` component ... -->
        <script async nomodule custom-element="amp-date-display" src="https://cdn.ampproject.org/v0/amp-date-display-0.1.js" crossorigin="anonymous"></script>
        <script async custom-element="amp-date-display" src="https://cdn.ampproject.org/v0/amp-date-display-0.1.mjs" type="module" crossorigin="anonymous"></script>
        <!-- ... and the `amp-mustache` component in the header -->
        <script async nomodule custom-template="amp-mustache" src="https://cdn.ampproject.org/v0/amp-mustache-0.2.js"></script>
        <script async custom-template="amp-mustache" src="https://cdn.ampproject.org/v0/amp-mustache-0.2.mjs" type="module" crossorigin="anonymous"></script>
  

Сам компонент выглядит так (на примере внутри вёрстки, чтобы нагляднее показать, как его интегрировать):

<div class="text">
                <p><i>+150{9e7c37a3e427cc1a09b57a0d4b1ef3efe0db984258defcf01c5f2d21a33110d9}</i>  на первый депозит до 
              
                  <amp-date-display datetime="now" offset-seconds="259200" locale="de" layout="fixed" width="215" height="41">
                      <template type="amp-mustache">
                        <div>{{day}}.{{monthTwoDigit}}.{{year}}</div>
                      </template>
                  </amp-date-display>
            
                </p>
              </div>

Для того, чтобы компонент прибавлял дни к текущей дате (атрибут datetime=»now»), необходим атрибут offset-seconds=»259200″, в значение которому указываются секунды (три дня = 259200 секунд).

Формат даты тоже может быть разным:

ПеременнаяВид для пользователя
day5
dayNameWednesday
dayNameShortWed
dayPeriodpm
dayTwoDigit05
hour14
hour122
hour12TwoDigit02
hourTwoDigit14
iso2024-06-05T11:53:39.271Z
minute53
minuteTwoDigit53
month6
monthNameJune
monthNameShortJun
monthTwoDigit06
second39
secondTwoDigit39
year2024
yearTwoDigit24

Остальные детали можно изучить в документации компонента.