W3cubDocs

/WordPress

_oembed_create_xml( array $data, SimpleXMLElement $node = null ): string|false

Creates an XML string from a given array.

Parameters

$dataarrayrequired
The original oEmbed response data.
$nodeSimpleXMLElementoptional
XML node to append the result to recursively.

Default:null

Return

string|false XML string on success, false on error.

Source

function _oembed_create_xml( $data, $node = null ) {
	if ( ! is_array( $data ) || empty( $data ) ) {
		return false;
	}

	if ( null === $node ) {
		$node = new SimpleXMLElement( '<oembed></oembed>' );
	}

	foreach ( $data as $key => $value ) {
		if ( is_numeric( $key ) ) {
			$key = 'oembed';
		}

		if ( is_array( $value ) ) {
			$item = $node->addChild( $key );
			_oembed_create_xml( $value, $item );
		} else {
			$node->addChild( $key, esc_html( $value ) );
		}
	}

	return $node->asXML();
}

Changelog

Version Description
4.4.0 Introduced.

© 2003–2024 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/_oembed_create_xml