: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
namespace Yoast\WP\SEO\Presenters;
* Presenter class for the schema object.
class Schema_Presenter extends Abstract_Indexable_Presenter {
protected $key = 'schema';
* Returns the schema output.
* @return string The schema tag.
public function present() {
'_deprecated' => 'Please use the "wpseo_schema_*" filters to extend the Yoast SEO schema data - see the WPSEO_Schema class.',
* Filter: 'wpseo_json_ld_output' - Allows disabling Yoast's schema output entirely.
* @param mixed $deprecated If false or an empty array is returned, disable our output.
$return = \apply_filters( 'wpseo_json_ld_output', $deprecated_data, '' );
if ( $return === [] || $return === false ) {
* Action: 'wpseo_json_ld' - Output Schema before the main schema from Yoast SEO is output.
\do_action( 'wpseo_json_ld' );
if ( \is_array( $schema ) ) {
$output = WPSEO_Utils::format_json_encode( $schema );
$output = \str_replace( "\n", \PHP_EOL . "\t", $output );
return '<script type="application/ld+json" class="yoast-schema-graph">' . $output . '</script>';
* Gets the raw value of a presentation.
* @return array The raw value.
return $this->presentation->schema;