wp_replace_in_html_tags() WP 4.2.3
Replace characters or phrases within HTML elements only.
Хуков нет.
Возвращает
Строку
. The formatted text.
Использование
wp_replace_in_html_tags( $haystack, $replace_pairs );
- $haystack(строка) (обязательный)
- The text which has to be formatted.
- $replace_pairs(массив) (обязательный)
- In the form array('from' => 'to', ...).
Список изменений
С версии 4.2.3 | Введена. |
Код wp_replace_in_html_tags() wp replace in html tags WP 5.7.1
function wp_replace_in_html_tags( $haystack, $replace_pairs ) {
// Find all elements.
$textarr = wp_html_split( $haystack );
$changed = false;
// Optimize when searching for one item.
if ( 1 === count( $replace_pairs ) ) {
// Extract $needle and $replace.
foreach ( $replace_pairs as $needle => $replace ) {
}
// Loop through delimiters (elements) only.
for ( $i = 1, $c = count( $textarr ); $i < $c; $i += 2 ) {
if ( false !== strpos( $textarr[ $i ], $needle ) ) {
$textarr[ $i ] = str_replace( $needle, $replace, $textarr[ $i ] );
$changed = true;
}
}
} else {
// Extract all $needles.
$needles = array_keys( $replace_pairs );
// Loop through delimiters (elements) only.
for ( $i = 1, $c = count( $textarr ); $i < $c; $i += 2 ) {
foreach ( $needles as $needle ) {
if ( false !== strpos( $textarr[ $i ], $needle ) ) {
$textarr[ $i ] = strtr( $textarr[ $i ], $replace_pairs );
$changed = true;
// After one strtr() break out of the foreach loop and look at next element.
break;
}
}
}
}
if ( $changed ) {
$haystack = implode( $textarr );
}
return $haystack;
}