Я использую плагин Wordpress с именем EventOn для создания событий на веб-сайте. Плагин создает настраиваемую запись для каждого события и будет хранить дату события в мета-ключе с именем evcal_srow , где значение хранится во время Unix (например, 1464739500).Преобразование всех строк Timestamp Unix на странице Wordpress
Теперь то, что я пытаюсь достичь, состоит в том, чтобы вытащить эти пользовательские сообщения через Slider Revolution, используя короткий код, предоставленный слайдером, чтобы вытащить пользовательское поле из пользовательского сообщения, в этом конкретном случае короткий код равен { мета: evcal_srow}}
Вот как я генерации эскизов через навигации редактора Slider Revo в:
<span class="tp-thumb-image">
<h3 class="thumb-event-title">
{{title}}
</h3>
<h2 class="thumb-event-date" style="color:#fff">
{{meta:evcal_srow}}
</h2>
</span>
Все отлично работает, как я могу тянуть пост титул, показал изображение и дату успешно , но мне нужно будет преобразовать дату в человеческий формат.
Если бы я создавал нормальную страницу, то я бы создать файл шаблона и добавить что-то вроде
<?php
$ts = get_post_meta($post->ID, 'evcal_srow', true);
$date = new DateTime("@$ts");
echo "<div class='datum'>".$date->format('d.m.Y')."</div><div class='uhrzeit'>".$date->format('H:i')."</div>";
?>
, хотя, как я тяну данных осуществляется с помощью настройки ползунков так что нет никакого способа, я могу используйте php в этом сценарии, потому что это недопустимо (если у вас нет лучшей идеи, конечно!). Также я не могу редактировать файлы плагинов напрямую, так как мне нужно обновить его в будущем, и я не уверен, что есть что-то похожее на дочернюю тему для плагинов.
Первое, что я думаю о том, чтобы преобразовать все селекторы .thumb-EVENT-дата на странице после загрузки страницы, возможно, используя некоторые JS или JQuery, я перепробовал много способов, но может» t получить положительные результаты.
Было бы здорово, если бы кто-нибудь смог придумать решение. Большое спасибо за ваше время.
Решение (! Большое спасибо Paul)
- Перейти к настройкам
слайдера Найти Пользовательские Javascript раздел и вставьте в него:
revapi1.on('revolution.slide.onloaded', function() { // Replace the number 1 in revapi1.on with the ID of your slider jQuery('.thumb-event-date').each(function(index, value) { // Replace .thumb-event-date with the selector that contains the unix time string jQuery(value).html(new Date(jQuery(value).html()*1000).toISOString()); });
});
спасибо за вашу помощь Paulooze ваш сниппет имеет смысл, хотя он не будет работать:/Вот код, я использую сейчас: ' 'Не знаю, почему :(пытался поставить этот скрипт между тегами заголовка, а также пробовал в теле. – Pelly
Можете ли вы уточнить? Почему это не работает? Я попробовал это самостоятельно (я помещал ваши метки времени в ul и запускал этот код и он преобразует значения в ISO-строки). – Paulooze
он просто не конвертирует строку. Консоль не отображает никаких ошибок. – Pelly