Title: WP_HTML_Text_Replacement
Published: March 29, 2023
Last modified: February 24, 2026

---

# class WP_HTML_Text_Replacement {}

## In this article

 * [Description](https://developer.wordpress.org/reference/classes/wp_html_text_replacement/?output_format=md#description)
    - [See also](https://developer.wordpress.org/reference/classes/wp_html_text_replacement/?output_format=md#see-also)
 * [Methods](https://developer.wordpress.org/reference/classes/wp_html_text_replacement/?output_format=md#methods)
 * [Source](https://developer.wordpress.org/reference/classes/wp_html_text_replacement/?output_format=md#source)
 * [Changelog](https://developer.wordpress.org/reference/classes/wp_html_text_replacement/?output_format=md#changelog)

[ Back to top](https://developer.wordpress.org/reference/classes/wp_html_text_replacement/?output_format=md#wp--skip-link--target)

This class’s access is marked private. This means it is not intended for use by 
plugin or theme developers, only by core. It is listed here for completeness.

Core class used by the HTML tag processor as a data structure for replacing existing
content from start to end, allowing to drastically improve performance.

## 󠀁[Description](https://developer.wordpress.org/reference/classes/wp_html_text_replacement/?output_format=md#description)󠁿

This class is for internal usage of the [WP_HTML_Tag_Processor](https://developer.wordpress.org/reference/classes/wp_html_tag_processor/)
class.

### 󠀁[See also](https://developer.wordpress.org/reference/classes/wp_html_text_replacement/?output_format=md#see-also)󠁿

 * [WP_HTML_Tag_Processor](https://developer.wordpress.org/reference/classes/wp_html_tag_processor/)

## 󠀁[Methods](https://developer.wordpress.org/reference/classes/wp_html_text_replacement/?output_format=md#methods)󠁿

| Name | Description | 
| [WP_HTML_Text_Replacement::__construct](https://developer.wordpress.org/reference/classes/wp_html_text_replacement/__construct/) | Constructor. |

## 󠀁[Source](https://developer.wordpress.org/reference/classes/wp_html_text_replacement/?output_format=md#source)󠁿

    ```php
    class WP_HTML_Text_Replacement {
    	/**
    	 * Byte offset into document where replacement span begins.
    	 *
    	 * @since 6.2.0
    	 *
    	 * @var int
    	 */
    	public $start;

    	/**
    	 * Byte length of span being replaced.
    	 *
    	 * @since 6.5.0
    	 *
    	 * @var int
    	 */
    	public $length;

    	/**
    	 * Span of text to insert in document to replace existing content from start to end.
    	 *
    	 * @since 6.2.0
    	 *
    	 * @var string
    	 */
    	public $text;

    	/**
    	 * Constructor.
    	 *
    	 * @since 6.2.0
    	 *
    	 * @param int    $start  Byte offset into document where replacement span begins.
    	 * @param int    $length Byte length of span in document being replaced.
    	 * @param string $text   Span of text to insert in document to replace existing content from start to end.
    	 */
    	public function __construct( int $start, int $length, string $text ) {
    		$this->start  = $start;
    		$this->length = $length;
    		$this->text   = $text;
    	}
    }
    ```

[View all references](https://developer.wordpress.org/reference/files/wp-includes/html-api/class-wp-html-text-replacement.php/)
[View on Trac](https://core.trac.wordpress.org/browser/tags/6.9.4/src/wp-includes/html-api/class-wp-html-text-replacement.php#L22)
[View on GitHub](https://github.com/WordPress/wordpress-develop/blob/6.9.4/src/wp-includes/html-api/class-wp-html-text-replacement.php#L22-L64)

## 󠀁[Changelog](https://developer.wordpress.org/reference/classes/wp_html_text_replacement/?output_format=md#changelog)󠁿

| Version | Description | 
| [6.5.0](https://developer.wordpress.org/reference/since/6.5.0/) | Replace `end` with `length` to more closely match `substr()`. | 
| [6.2.0](https://developer.wordpress.org/reference/since/6.2.0/) | Introduced. |

## User Contributed Notes

You must [log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Fclasses%2Fwp_html_text_replacement%2F)
before being able to contribute a note or feedback.