wpseo_replacements хук-фильтр . Yoast 1.0
Позволяет изменить то на что будет заменен плейсхолдер, который используется в шаблоне заголовка. Например %%term_hierarchy%%.
Использование
add_filter( 'wpseo_replacements', 'filter_function_name_3425', 10, 2 ); function filter_function_name_3425( $args, $args ){ // filter... return $args; }
- $args(массив)
- Массив значений плейсхолдеров. Элемент массива выглядит так:
Плейсхолдер => Значение
, например'%%term_hierarchy%%' => 'Тело > Рука'
. - $args
Дополнительная информация в виде аргументов.
protected $defaults = [ 'ID' => '', 'name' => '', 'post_author' => '', 'post_content' => '', 'post_date' => '', 'post_excerpt' => '', 'post_modified' => '', 'post_title' => '', 'taxonomy' => '', 'term_id' => '', 'term404' => '', ];
Примеры
#1 Переворачиваем порядок терминов в заголовке
// Переворачиваем порядок терминов в заголовке для всех таксономий (для плейсхолдера `term_hierarchy`) add_filter( 'wpseo_replacements', function( $replacements, $args ){ if( isset( $replacements['%%term_hierarchy%%'] ) ){ $replacement = & $replacements['%%term_hierarchy%%']; $separator = ' ' . YoastSEO()->helpers->options->get_title_separator() . ' '; $explode = array_reverse( explode( $separator, $replacement ) ); $replacement = implode( $separator, $explode ); } return $replacements; }, 10, 2 );
Где вызывается хук
wpseo_replacements
yoast/inc/class-wpseo-replace-vars.php 175
$replacements = apply_filters( 'wpseo_replacements', $replacements, $this->args );