- get_the_date() – получает дату публикации поста
- Параметры
- Примеры
- Фильтр get_the_date
- Форматы даты и времени в WordPress
- Все символы формата даты и времени
- Примеры
- Экранирование
- Локализация
- the_time() WP 0.71
- Возвращает
- Использование
- Примеры
- #1 Выведем время публикации поста:
- #2 Время в форматах 24 часа и AM/PM
- #3 Вывод даты
- Список изменений
- Код the_time() the time WP 5.8.1
- Cвязанные функции
- loop (Цикл WP)
- date time (дата время)
- Записи: посты, страницы, .
- Записи: посты, страницы, .
- Выводим дату публикации поста в WordPress. Разбираем форматы и встроенные функции движка.
- Какие теги шаблона используются для вывода даты?
- Где вносить правки?
- Формат даты в WordPress
- Изменение формата даты и времени из админки WordPress
- Вывод даты последнего обновления поста
get_the_date() – получает дату публикации поста
Функция get_the_date() возвращает дату написания определённого поста, либо текущего поста в цикле.
Помните, что функция the_date() выводила дату, только если она отличалась от даты предыдущего поста? Так вот, get_the_date() возвращает дату вне зависимости от этого.
Также осмелюсь предположить, что функция практически полностью идентична функции get_the_time(), её единственные отличия это:
- То, что формат даты/времени по умолчанию берётся из настроек даты в Настройки > Общее date_format , а не времени time_format .
- В конце применяется фильтр get_the_date вместо get_the_time.
Параметры
Как я уже упоминал выше, если не указать переменную $format , то будет использован формат даты, указанный в админке в разделе Настройки > Общие > Формат даты.
Если не указать $post , то будет получена дата создания текущего поста в цикле.
Примеры
Получим значение даты без использования аргументов:
Получим значение в желаемом формате. Если вдруг хочется узнать, сколько прошло секунд с момента начала Эпохи Unix до даты публикации поста:
А теперь получим дату публикации определённого поста. Вот тут, если вы хотите использовать значение формата даты по умолчанию, не забудьте указать в качестве первого аргумента пустую строку, иначе, передав в неё ID поста, получим false .
А теперь укажем все аргументы сразу:
Фильтр get_the_date
Давайте сделаем так, чтобы функция оборачивала возвращаемую дату в теги , хук get_the_date подойдёт идеально, только имейте ввиду, что он сработает на всём сайте.
Также воспользуемся объектом поста $post , чтобы провернуть это только для Записей.
На случай, если не знаете, куда вставлять код, читайте это.
Впервые познакомился с WordPress в 2009 году. Организатор и спикер на конференциях WordCamp. Преподаватель в школе Нетология.
Если вам нужна помощь с сайтом или разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда будем рады вам помочь!
Источник
Форматы даты и времени в WordPress
В WordPress есть функции, которые получают дату или время записи, комментария или чего-то еще: the_date(), the_time(), mysql2date() и т.д. В каждую из таких функций можно передать формат, чтобы получить время или дату в нужном формате. В этой заметке показано, как получить любой формат и какие символы в указанном формате за что отвечают.
Простой пример: вывод на экран времени публикации записи:
Выведет дату в виде: 1 апреля 2016 в 20:09 .
Все символы формата даты и времени
А теперь, давайте рассмотрим все специальные символы, которые можно использовать в формате.
День месяца | ||
---|---|---|
d | 01–31 | Число, с нулем впереди |
j | 1–31 | Число, без нуля впереди |
S | st, nd or th in the 1st, 2nd or 15th. | Английский суффикс дня месяца |
День недели | ||
l | Sunday – Saturday (Понедельник — Воскресенье) | Полное название (строчная ‘L’) |
D | Mon – Sun (Пон — Вс) | Короткое название |
N | 1 (понедельник) — 7 (воскресенье) | Номер дня недели |
w | 0 (воскресенье) — 6 (суббота) | Номер дня недели |
Месяц | ||
m | 01–12 | Число, с нулем впереди |
n | 1–12 | Число, без нуля впереди |
F | January – December (Январь — Декабрь) | Полное название |
M | Jan — Dec (Янв — Дек) | Короткое название |
t | 28 — 31 | Количество дней в месяце |
Год | ||
Y | 1999, 2003 | Число, 4 цифры |
y | 99, 03 | Число, 2 цифры |
z | 0 — 365 | Номер дня в году (начиная с 0) |
W | 34 (34-я неделя года) | Номер недели года |
L | 1 или 0 | Високосный ли это год |
Время | ||
a | am, pm | Строчный диапазон |
A | AM, PM | Прописной диапазон |
h | 01–12 | Часы (0-12), с нулем впереди |
g | 1–12 | Часы (0-12), без нуля впереди |
H | 00-23 | Часы (0-24), с нулем впереди |
G | 0-23 | Часы (0-24), без нуля впереди |
i | 00-59 | Минуты, с нулем впереди |
s | 00-59 | Секунды, с нулем впереди |
T | EST, MDT . | Аббревиатура временной зоны |
Полные дата и время | ||
c | 2004-02-12T15:19:21+00:00 | Дата в формате стандарта ISO 8601 |
r | Thu, 21 Dec 2000 16:01:07 +0200 | Дата в формате » RFC 2822 |
U | 1455880176 | Число, штамп времени Unix — количество секунд с 1 января 1970 года |
Форматы из таблицы — это стандарт PHP и также могут быть использованы для форматирования даты в PHP, например, с помощью функции date().
Примеры
Формат | Результат |
---|---|
F j, Y g:i a | November 6, 2010 12:50 am |
F j, Y | November 6, 2010 |
F, Y | November, 2010 |
g:i a | 12:50 am |
g:i:s a | 12:50:48 am |
l, F jS, Y | Saturday, November 6th, 2010 |
M j, Y @ G:i | Nov 6, 2010 @ 0:50 |
Y/m/d \a\t g:i A | 2010/11/06 at 12:50 AM |
Y/m/d \a\t g:ia | 2010/11/06 at 12:50am |
Y/m/d g:i:s A | 2010/11/06 12:50:48 AM |
Y/m/d | 2010/11/06 |
Y-m-d H:i:s | 2017-11-06 21:37:22 |
Пример с функцией WordPress
Экранирование
Если использовать символы не из таблицы, то они будут показаны как есть, например, в из примера выше. Но когда нужно, чтобы спецсимвол не обрабатывался (использовался как есть), его нужно экранировать обратным слэшем \ .
Локализация
Для перевода строк в дате вроде: November на язык сайта, используется функция date_i18n().
Также, для локализации формата можно использовать стандартные функции локализации: __(), _e() и т.д. Например:
Источник
the_time() WP 0.71
Выводит на экран время (дату) публикации текущей записи в Цикле WordPress.
Этот Тег Шаблона предназначен для использования внутри Цикла WordPress.
Идентичной этой функции является функция: the_date().
Хуки из функции
Возвращает
Использование
Примеры
#1 Выведем время публикации поста:
#2 Время в форматах 24 часа и AM/PM
Используя первый параметр функции, выведем время публикации поста в формате 24 часов (23:12):
Если нужно вывести в формате AM/PM:
#3 Вывод даты
the_time() кроме времени может выводить даты, стоит лишь указать формат:
Получим: 15 апреля 2004
Список изменений
Код the_time() the time WP 5.8.1
Cвязанные функции
loop (Цикл WP)
date time (дата время)
Записи: посты, страницы, .
Записи: посты, страницы, .
добрый день. подскажите почему у меня выводится дата без склонения, т.е. не 7 апреля 2010, а 7 апрель 2010 ? Спасибо
Для правильного склонения нужна отдельная функция, в сети есть она.
Подскажите пожалуйста, как выводить дату предыдущего и следующего поста?
как на них ссылки выводить — понятно:
previous_post_link и next_post_link
а как вот их даты? :-\
У меня 1 важный вопрос, который касается микроразметки сайта. Поисковики требуют дату в ISO 8601. У меня получается 2004-02-12T15:19:21+00:00 — поисковикам это нравится. А вот мне нет. Можно ли очеловечить эту дату? К примеру то, что вы описывали выше? Но при этом чтобы валидатор микроразметки был доволен?
Источник
Выводим дату публикации поста в WordPress. Разбираем форматы и встроенные функции движка.
При разработке информационного или новостного сайта, либо же раздела «Блог» для коммерческого сайта на WordPress, вы столкнетесь с необходимостью вывода даты публикации поста. Это простая задача, но есть некоторые нюансы использования различных функций WordPress для работы с датой.
Какие теги шаблона используются для вывода даты?
- the_date(). Этот тег получает и выводит на экран дату поста или группы постов (опубликованных в один день). Используется только внутри цикла WordPress.
- get_the_date(). Получает дату текущего поста. Для того чтобы вывести ее на вашем сайте нужно использовать код: echo get_the_date().
- the_time(). Выводит на экран время и дату публикации текущей записи.
- get_the_time(). Получает время текущей публикации. Для вывода используют конструкцию: echo get_the_time().
Важный момент! При выводе конструкции the_date() в цикле вывода постов, например на странице категории, дата будет выводиться только для последней записи с одинаковой датой публикации. Проще говоря, если вы за день опубликуете три поста, то дата будет отображаться только для последнего добавленного поста, а двух остальных она отображаться не будет.
Чтобы решить эту проблему вместо the_date(), в цикле можно использовать конструкцию echo get_the_date(),она всегда получает дату, даже если следующий (в цикле) пост был опубликован в тот же день. Второй вариант решения проблемы – это использование конструкций the_time() или же echo get_the_time(), с указанием формата в виде даты. В таком случае все записи, опубликованные даже в один день, будут иметь разное время публикации, и значение будет выводиться в цикле WordPress.
Где вносить правки?
Перед тем как я покажу примеры конструкций кода для вывода даты записи, стоит уточнить, что изменения вносятся в файлах темы, которую вы используете для своего сайта.
Для редактирования даты в записях нужно искать фалы по типу:
Для правки даты постов в категориях могут использоваться файлы:
Перед началом изменений делаете бекап файла. Далее открываете файл и находите конструкции по выводу даты, которая используется у вас в шаблоне, например:
Удаляете ее и пишите код вашей кастомной функции для даты с настройками.
Обычно дату размещают под заголовком записи, или же в конце поста.
Формат даты в WordPress
Каждая из приведенных выше функций для работы с выводом даты публикаций принимает в качестве параметров формат даты, которую вы можете настроить под свои требования.
Давайте разберемся с форматированием на примере функции the_date().
По умолчанию эта функция принимает следующие параметры.
В качестве переменной $format – указывают формат записи.
Чаще всего используют следующие коды для формирования структуры даты записи.
- Y – год в виде четырех цифр, например, 2021;
- y – год в виде двух последних цифр, 21;
- m – номер месяца с нулями, например, 02, 08, 10;
- M – сокращенное название месяца, например, Фев, Окт;
- F – полное название месяца, Февраль;
- j – день месяца без нулей, от 1 до 31;
- d – день месяца с нулями, от 01 до 31;
- l (строчная английская L) – полное название дня недели;
- D – сокращенное название дня недели, например, Пн, Вт.
Пример конструкции даты формата: 12.01.2021, будет иметь следующий вид: j.m.Y. А для вывода значения в виде 12 января 2021, нужно использовать форматирование: j F Y.
Переменная $before используется для указания тега, текста или прочего элемента, который будет отображаться перед датой. Переменная $after, делает то же самое, но только выводит значение после даты.
Переменная $echo указывает выводить или не выводить результат работы функции. Ее обычно не указывают.
Пример использования функции:
На сайте получим вывод следующего кода:
Пример использования функции the_time() для работы с датой публикации поста.
С помощью кодов форматирования вы сможете вывести любую нужную для вас конструкцию даты публикации в WordPress.
Изменение формата даты и времени из админки WordPress
Если у себя в теме вы используете функции без указания переменной $format для функций: the_date(), get_the_date(), the_time(), get_the_time(), то вы сможете менять формат для даты и времени в административной панели WordPress. Для этого переходим в раздел «Настройки» — «Общие» и спускаемся вниз страницы, где находим следующие секции настроек.
Выбираем нужный формат и нажимаем кнопку «Сохранить изменения». Формат дат для записей измениться.
Вывод даты последнего обновления поста
При редактировании записи после ее сохранения обновляется и дата последнего изменения поста. Поисковики в последнее время акцентируют внимание на актуализации и обновлении старых постов на блоге, и вывод такой информации позволит оповестить поисковые системы о том, что вы внесли изменения в контенте страницы.
За вывод даты последнего форматирования поста отвечают функции — the_modified_time() и the_modified_date().
Чтобы вывести эти данные можно использовать следующий код.
Учтите, что если запись не редактировалась, то дата выводиться не будет. Часто разработчики на блогах используют обе даты: публикации и обновления.
Можно использовать и семантическую разметку для даты.
Важный момент! После публикации даты обновления поисковики изменять ее и в результатах выдачи, что поможет повысить кликабельность, поскольку пользователь будет видеть, что статья актуальна.
На этом сегодня все, надеюсь, материал был для вас полезен.
Источник