Здравствуйте, дамы и господа, в этой статье расскажу о том, как сделать шорткоды, которые позволят в Title и Description Rank Math, а также в заголовках статей (H1) WordPress выводить автоматически следующий год, и они будут меняться при изменении текущего года без вашего вмешательства. Также этот шорткод можно добавлять и тело статьи.

Например, вы хотите, чтобы в 2024 году в заголовке автоматически выводился 2025 год. Если, вы пишете статью о том, что нужно будет делать в следующем году. И статья будет актуальна и потом, даже без изменений в контенте, подобная фишка может вам пригодиться. По крайней мере, вам не придётся менять год самостоятельно.

Заметьте, пример с годами, который разместил выше, работает именно с помощью шорткодов, которые вас научу создавать. Давайте начнём.

Делаем автоматический вывод следующего года в заголовке (H1) и теле контента в WordPress

Итак, нам нужно реализовать вывод года в стиле «год +1». То бишь, если у нас идёт 2024 год, то нам нужно сделать, чтобы отображался 2025 год. Даже если вы желаете реализовать это только в Rank Math, то вам всё равно придётся сделать то, что написано здесь.

Итак, для начала вам понадобится дочерняя тема или собственный плагин. Конечно, можно код добавить прямо в functions.php, но при любом обновлении он слетит. И даже добавлять в дочернюю тему не стоит. Любой код, который должен работать независимо от выбора темы, лучше добавить в кастомный плагин, чтобы смена темы на данный код не влияла.

Я рассказывал о том, как автоматически выводить текущий год в H1, title и description, здесь принцип тот же. Только к году нам нужно прибавить +1.

Варианта 2:

  1. Используем префиксный инкремент, который всегда будет прибавлять единицу.
  2. Используем операцию сложения формата «текущий год + 1».

Что первый способ, что второй одинаково хороши для данной задачи. Разницы нет. С префиксным инкрементом могут быть проблемы только в том случае, если год станет неопределённым. Например, из-за сбоя на сервере. Но проблемы с работой инкремента тогда вас будут волновать в последнюю очередь. Объяснять в рамках статьи это не буду.

Итак, код для первого варианта:

add_shortcode( 'yearone' , 'current_year_one' );
function current_year_one() {
$year = date("Y");
$yearone = (++$year);
return "$yearone";
}
add_filter( 'the_title', 'do_shortcode' );

Фактически в данном случае мы объявили переменную, которая отвечает за вывод кода, а потом с помощью префиксного инкремента прибавили к этому значению единицу и вернули новую переменную.

Если вам не нравится данный способ или он по какой-то причине не работает, то можете использовать такой вариант:

add_shortcode( 'yearone' , 'current_year_one' );
function current_year_one() {
$year = date("Y");
$yearone = ($year + 1);
return "$yearone";
}
add_filter( 'the_title', 'do_shortcode' );

Здесь мы уже используем обычную операцию сложения в формате «год +1» и спокойно выводим следующий год.

А теперь вы можете в H1 или в контент добавить такой шорткод:

[yearone]

Эти два варианта вполне решают вашу задачу. Ну а если вам нужно сделать формат «текущий год + 5 лет»? Тогда просто видоизменяем тот код, который размести выше.

add_shortcode( 'yearone' , 'current_year_one' );
function current_year_one() {
$year = date("Y");
$yearone = ($year + 5);
return "$yearone";
}
add_filter( 'the_title', 'do_shortcode' );

Как видите, в переменную:

$yearone = ($year + 5);

Я просто добавил 5 лет вместо одного. Вы можете указывать любой год, который вам удобен.

И добавлю бонус для тех, кто желает показать свою ветреность и непостоянство. Мы будем выводить рандомный год. Для этого добавляем такой код:

add_shortcode( 'whatyear' , 'current_year_one' );
function current_year_one() {
$year = date("Y");
$randomyear = rand(1 , 100);
$whatyear = ($year + $randomyear);
return "$whatyear";
}
add_filter( 'the_title', 'do_shortcode' );

При каждой перезагрузке страницы к текущему году будет прибавляться от 1 до 100 лет. С помощью переменной year мы просто задаём начальным числом текущий год в качестве нижней планки. А дальше уже будет к году прибавляться рандомный год от 1 до 100.

Если хотите полный рандом, то в строке:

$randomyear = rand( );

Просто уберите все числа. Готово, теперь ваш год от 2024 до 264, таким образом вы сможете удивить и посетителей, и поисковые системы.

Пример отображения рандомного года в H1

А в статьи, H1, Title или Description добавляйте такой шорткод:

[whatyear]

Не забудьте добавить эту страницу в исключения кеширования. Иначе все будут видеть последний закешированный результат.

Ладно, пошутили и хватит. Теперь давайте настроим отображение следующего года в Rank Math.

Автоматическое добавление следующего года в title и description Rank Math

Итак, чтобы в title и description Rank Math добавить автоматический вывод года в формате «текущий год +1» да и любой другой вариант отображения года, кроме текущего, нам нужно, чтобы наши шорткоды отображались в плагине Rank Math. Изначально это не работает.

Для того, чтобы всё заработало, нам нужно в собственный плагин или functions.php дочерней темы добавить новый хук:

add_filter(
	'rank_math/frontend/title',
	function ( $title ) {
		return do_shortcode( $title );}
);
add_filter( 'the_title', 'do_shortcode' );

Этот код позволяет плагину Rank Math анализировать шорткоды, соответственно, плагин сможет их отображать.

И теперь мы можем просто добавлять шорткоды в title в плагине Rank Math.

Шорткод для вывода следующего года в Title Rank Math

Как видите, проблем никаких нет, сложностей практически никаких нет.

Если вам нужна аналогичная функция для описания (description), тогда добавляем аналогичный код, но для описания:

add_filter(
	'rank_math/frontend/description',
	function ( $description ) {
		return do_shortcode( $description );}
);
add_filter( 'the_title', 'do_shortcode' );

Готово, теперь можете просто добавлять свои шорткоды, которые создавали чуть раньше, в description Rank Math.

Шорткод для вывода следующего года в Description Rank Math

Сделать автоматическое отображение не текущего года вполне реально

И даже особо потеть не придётся. Вам просто нужно скопировать код и добавить его себе на сайт. Кстати, с WooCommerce это тоже работает.

Надеюсь, эта статья вам помогла, и вы сумели реализовать свою задумку. На этом с вами прощаюсь, желаю успехов и всего доброго!

Насколько публикация полезна?

Нажмите на звезду, чтобы оценить!

Средняя оценка 0 / 5. Количество оценок: 0

Оценок пока нет. Поставьте оценку первым.

Если материалы с данного сайта были полезны, и вы желаете поддержать блог, то можете воспользоваться формой по ссылке: Донат на поддержку блога