WPSEO_Shortcode_Filter::do_filter
Parse the shortcodes.
Метод класса: WPSEO_Shortcode_Filter{}
Хуков нет.
Возвращает
null. Ничего (null).
Использование
$WPSEO_Shortcode_Filter = new WPSEO_Shortcode_Filter(); $WPSEO_Shortcode_Filter->do_filter();
Код WPSEO_Shortcode_Filter::do_filter() WPSEO Shortcode Filter::do filter Yoast 27.3
public function do_filter() {
check_ajax_referer( 'wpseo-filter-shortcodes', 'nonce' );
if ( ! isset( $_POST['data'] ) || ! is_array( $_POST['data'] ) ) {
// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Reason: WPSEO_Utils::format_json_encode is considered safe.
wp_die( WPSEO_Utils::format_json_encode( [] ) );
}
// phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized -- Reason: $shortcodes is getting sanitized later, before it's used.
$shortcodes = wp_unslash( $_POST['data'] );
$parsed_shortcodes = [];
foreach ( $shortcodes as $shortcode ) {
if ( $shortcode !== sanitize_text_field( $shortcode ) ) {
// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Reason: WPSEO_Utils::format_json_encode is considered safe.
wp_die( WPSEO_Utils::format_json_encode( [] ) );
}
$parsed_shortcodes[] = [
'shortcode' => $shortcode,
'output' => do_shortcode( $shortcode ),
];
}
// phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped -- Reason: WPSEO_Utils::format_json_encode is considered safe.
wp_die( WPSEO_Utils::format_json_encode( $parsed_shortcodes ) );
}