Изначально хотел просто написать про вывод даты в WordPress статьях, но в данной теме оказалось достаточно много нюансов, поэтому решил рассмотреть их все. Заметка будет полезна как абсолютным новичкам, так и пользователям с небольшим опытом. Сам по себе, вопрос даты вордпресс, в принципе, не сложный, но информации по нему хватает. Вот что вы сможете узнать из статьи:
- Задание/редактирование даты поста.
- Настройка формата.
- Вывод даты в постах + соответствующие функции.
- Как убрать дату.
- Время изменения заметки.
Дата поста в WordPress (установка и редактирование)
При создании новой заметки в админке WordPress дата публикации задается в блоке «Опубликовать», который обычно находится справа от текстового редактора.
Здесь устанавливаете нужный месяц, год, число и даже время. Вы сможете изменить данные параметры позже в любое время, если захотите, — для этого заходите в редактирование заметки и задаете новые значения. Кстати, если укажете дату, которая еще не наступила, пост будет скрыт до того момента — данная фишка позволяет реализовать запланированную публикацию в блоге.
В системе также доступа правка даты записи wordpress постов через быстрое редактирование. Выбираете в разделе «Записи» — «Все записи» и видите список всех заметок. Далее при наведении кликаете по свойствам и устанавливаете требуемые значения числа, месяца, года и т.п.
Не забудьте потом нажать кнопку «Обновить». Таким образом вы сможете быстро изменить даты выхода нескольких статей вордпресс на одной странице.
Если зайти в раздел «Настройки» — «Общие», то в самом низу страницы найдете установки для формата даты в вордпресс и, чуть ниже, — времени. Отмечаете желаемый вариант из списка или указываете произвольный.
Данные значения будут использоваться в соответствующих функциях the_date и the_time для шаблона (об этом чуть ниже). Формат для вывода даты в WordPress задается в виде строки, например:
d.m.Y (l) // 09.06.2016 (Четверг) D - j M - Y // Чт - 9 Июн - 2016
Здесь используются такие же обозначения как в PHP, в частности:
- d — число месяца с 0 спереди для цифр меньше 10;
- m — номер месяца из двух символов (с ведущим нулем);
- Y — обозначает год (из 4х цифр);
- l (строчная L) — название дня недели полностью;
- D — сокращенный день недели;
- j — выводит день месяца без 0 спереди;
- M — сокращенное название месяца из трех символов;
- S — английский суффикс для дня месяца — 1st, 2nd или 15th (раньше для вывода даты wordpress с суффиксом на русском был специальный плагин, возможно, сейчас проблема исчезла);
- F — полное название месяца;
- и др.
Для времени также есть разные значения, но чаще всего ставится просто строка «H:i», где первый символ «H» отвечает за часы в 24-часовом формате, а «i» — минуты с нулем спереди, если нужно.
Как вывести дату поста в WordPress (the_date)
Сначала разберемся с функцией, которая используется для решения этой задачи —the_date. Она имеет следующий синтаксис:
<?php the_date( $format, $before, $after, $echo ); ?>
Здесь:
- $format — формат, о котором говорили выше (можно использовать значения и для времени);
- $before — текст перед датой;
- $after — текст после даты;
- $echo — указывает выводить результат функции или нет (по умолчанию True).
Пример использования:
<?php $mypost_date = the_date('d.m.Y', '<i>дата: ', '</i>', FALSE); echo $mypost_date; ?>
В итоге получим строку курсивом — дата: 01.06.2016. Дабы вывести дату поста мы сначала присвоили ее переменной $mypost_date, а затем отобразили с помощью echo. Здесь значение FALSE для последнего параметра функции позволило после ее выполнения не отображать результат. Разумеется, так никто не делает, а я привел этот код лишь для примера. Обычно дату отображают сразу:
<i><?php the_date('d.m.Y'); ?></i>
Можно даже не указывать формат, используя функцию без переменных, если он полностью соответствует тому, что вы задавали в настройках админки.
Второй шаг — добавление the_date в шаблон сайта. В файлах темы wordpress отображение даты, как и других функций с информацией о постах блога, должно располагаться внутри цикла Loop, то есть между:
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
и
<?php endwhile; ?>
Такая конструкция встречается и в шаблоне для единичного отображения записей (single.php), и в архивах категорий (category.php), и в основном файле (index.php). Все зависит от того, где вы хотите вывести дату поста.
Как убрать даты публикации в WordPress
Чтобы в вордпресс убрать дату публикации нужно выполнить противоположные действия тем, о которых говорилось выше. Первым делом требуется понимать какой файл шаблона открывать для редактирования:
- Для правки страницы поста с полным текстом — single.php, для страницы — page.php.
- Для главной — это зачастую файл index.php.
- Чтобы убрать дату из вордпресс архивов ищите глобальный файл archive.php. Если в макете есть category.php и tags.php, то страницы разделов и меток определяются через них, переопределяя основной archive.php.
- В новых темах можно встретить функцию get_template_part, которая вызывает другой файл для подстановки кода в данное конкретное место шаблона. В таком случае функцию the_date придется искать в указанном здесь файле.
Если же вы хотите убрать даты из WordPress темы целиком, то можете воспользоватьсяпрограммой WinGrep для Windows. Софт ищет нужную информацию в фалах или в определенной директории — запускаете поиск по «the_date» и получаете список файлов, где она всетрчается.
После того как вы нашли места использования the_date или the_time, открываете соответствующие файлы для редактирования и удаляете функции из них. Это позволит навсегда убрать дату публикации в WordPress сайте. Если боитесь сделать ошибку, сделаете копии файлов темы дабы потом иметь возможность их восстановить.
Дата редактирования в WordPress (the_modified_date)
Если честно, именно ради этой задачи и задумывался данный пост. Информация по WP и другим техническим тематикам может устаревать, поэтому по методу тыквы и вообще важно ее обновлять. Также желательно предоставить читателю какую-то пометку о том, что статья актуальная. Для этого можно реализовать в WordPress отображение даты создания и редактирования поста (отдельно).
С решением нам поможет функция the_modified_date, ее синтаксис:
<?php the_modified_date( $d, $before, $after, $echo ); ?>
Где:
- $d — формат даты;
- $before и $after — тексты перед и после даты;
- $echo — выводить или нет результаты.
Параметры, в принципе, похожи и на обычную функцию the_date. Итого чтобы вывести обе даты записи в вордпресс использую следующий код:
Дата: <?php the_date(); ?>. Последнее изменение: <?php the_modified_date(); ?>.
Параметры, как видите, не указываю, поэтому формат считывается из настроек админки.
Если у вас еще остались какие-то вопросы по WordPress датам, пишите , будем разбирать.
![]()
Это интересно
0
|
|||
Последние откомментированные темы:
megr***@m*****.ru , 18.12.2011