Как убрать дату публикации поста

Как в WordPress убрать дату публикации поста

Добрый день!

Сегодня я расскажу вам как в WordPress убрать дату публикации поста. Способ этот очень быстрый, легкий в применении и достаточно универсальный. Неожиданно вчера пришел в голову, когда я отвечал на вопрос по удалению даты. Конечно этот вариант может подойти не всем и, наверняка, имеет свои минусы. Вообщем, выкладываю на ваш суд. Как раз и обсудим.

Для начала, давайте напишу зачем вообще кому-то может понадобиться убирать дату публикации.

 

Зачем убирать дату публикации

1. Коммерческим сайтам дата поста не нужна. Часто на сайтах фирм к основной информации о предприятии, их товарах и услугах добавляют еще и тематические статьи. Например, фирма торгует ламинатом. На своем сайте они могут опубликовать посты о том как выбрать ламинат, как его укладывать и тому подобное. От даты публикации актуальность статей в данном случае не изменится. Ламинат как укладывали пять лет назад, так и укладывают сейчас. Конечно, технологии меняются, но статью можно отредактировать, а дата поста все-равно останется пятилетней давности. Так вот зачем её отображать? Это может ввести в заблуждение посетителей. Они посмотрят на дату и решат, что фирма, возможно, уже не работает.

2. Блоггеры, забросившие свои блоги. тоже могут убирать дату публикации статей. Чтобы поисковики не ориентировались на эту информацию при ранжировании поисковых запросов. Собственно, не только поисковики, но и люди. Многие читатели тоже обращают внимание на дату постов. Если последняя статья была опубликована давно, то человек навряд ли подпишется на этот блог и будет его посещать.

Вообщем, причины для удаления даты есть, теперь давайте разберемся как это сделать.

 

Как убрать дату публикации

Для вывода даты поста обычно используют функции: the_date(), the_time(), get_the_date(), get_the_time(), может еще какие-то есть. Функций много, у каждой свои нюансы и в разных шаблонах могут использоваться разные функции.

К тому же, вывод даты осуществляется на разных страницах: в анонсах статей, в самой статье, в архиве… (соответственно – в нескольких файлах: index.php, single.php, archive.php и т.д.)

Таким образом, обычно, ищутся в шаблоне места вывода даты и удаляются эти фрагменты кода. То есть, подход в каждом случае индивидуальный и описать универсальный метод удаления даты поста проблематично.

И вот вчера опять задают вопрос: “как убрать дату поста”. Я как раз опубликовал статью как в WordPress сделать правильные окончания в словах после чисел. И там использовался фильтр для изменения строки.

Вот я и подумал, можно ж и в этом случае с помощью фильтра изменить строку с датой на пустую.

Добавил в файл functions.php такой код:

В моем шаблоне сработало – дата поста удалилась. Единственный нюанс – если рядом с датой у вас выводится какая-то иконка, относящаяся к дате, то она не исчезнет.

В случае, если у вас для вывода даты используется другая функция, то попробуйте вот такой универсальный вариант:

Все, вы одним махом удаляете везде дату публикации. Не нужно искать по файлам шаблона где же еще выводится эта дата. И точно так же быстро можете её вернуть в случае необходимости. Закомментируйте просто добавленный фрагмент кода в functions.php.

К минусам можно отнести вызов функции, которая в конце-концов возвращает пустую строку. Т.е. сначала вызывается the_time(), потом цепляется добавленный к ней фильтр, и пусто. Вроде бы, какие-то миллисекунды затрачиваются на эти операции. Но, наверняка ж, вы используете какой-то плагин кэширования, так что убытка от этих операций будет немного. Только один раз в несколько часов – в момент создания кэша той или иной страницы.

Как вам способ удаления даты поста?

Прошу более опытных специалистов прокомментировать, поскольку сам только познаю тонкости WordPress. Может я в чем-то ошибаюсь.

Результат проверен на двух шаблонах: SmartMove (the_time()) и Twenty Fifteen (get_the_date()). Правда, в обоих случаях есть еще иконки к дате, которые, естественно, не удаляются.

И вот еще важный минус, который заставит отказаться от такого способа – это, если эти функции получения даты поста используются не только для вывода даты, но и в каких-то внутренних алгоритмах, учитывающих дату публикации. Это можно легко проверить поиском по всем файлам сайта. Возможно, в этой ситуации можно как-то включать/отключать применение фильтра. Пока не знаю.

Пробуйте, пишите о результатах. Если предложенный способ не сработает у вас и понадобится индивидуальный подход, то не забываем про WordPress помощь от моего блога.

Успехов!

P.S. Перед публикацией статьи нашел плагин (WP Post Date Remover), который убирает дату публикации поста по описанному мной принципу. Обнуляет результат работы четырех функций: the_date(), the_time(), get_the_date(), get_the_time().  Значит я на верном пути понимания WordPress! А вы можете безбоязненно применять этот способ.

Понравилась статья? Не забудьте поделиться с друзьями и коллегами:

Вы можете пропустить чтение записи и оставить комментарий. Размещение ссылок запрещено.

4 комментария к записи “Как убрать дату публикации поста”

  1. Денис Ермолаев

    У меня сработало, спасибо!!!
    Ковырял 2 дня свой блог, очень хитрая тема: “Omega” с дочерней темой “Me”
    Теперь выглядит всё отлично!

  2. Максим

    Есть один минус
    Да, даты с публикаций на сайте убирает, но в выдаче ПС по прежнему дата видна.

    • Алексей Ершов

      ПСы мгновенно ж не отреагируют на ваши изменения. Через некоторое время, когда страницы будут проиндексированы заново, дата должна исчезнуть и в поисковых системах.

  3. Triana

    Благодать))
    Спасибо, автор!) тоже закрученная тема, из страниц удалила почти сразу, а записи – весь день и все никак. Хоть так наконец сработало)

Оставить комментарий

Для размещения кода в комментарии используйте теги <pre> </pre>, например:


Подписаться, не комментируя