wp_replace_in_html_tags() – Replace characters or phrases within HTML elements only.
You appear to be a bot. Output may be restricted
Description
Replaces characters or phrases within HTML elements only.
Usage
$string = wp_replace_in_html_tags( $haystack, $replace_pairs );
Parameters
- $haystack
- ( string ) required – The text which has to be formatted.
- $replace_pairs
- ( array ) required – In the form array('from' => 'to', …).
Returns
string The formatted text.
Source
File name: wordpress/wp-includes/formatting.php
Lines:
1 to 41 of 41
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; }