'wpLingua AJAX debug', 'action' => $action, 'request_uri' => $wplng_request_uri, 'value' => $output, 'translated' => $output_translated, ); error_log( var_export( $debug, true ) ); } return $output_translated; } /** * Callback function for output buffering to process and modify sitemap XML content. * * @param string $content The original XML content. * @return string The modified XML content with added tags or the original content if no changes are made. */ function wplng_ob_callback_sitemap_xml( $content ) { return wplng_sitemap_add_hreflang_links( $content ); } /** * wpLingua OB Callback function : Translate pages * * @param string $html * @return string */ function wplng_ob_callback_page( $content ) { if ( wplng_str_is_json( $content ) ) { $content = apply_filters( 'wplng_intercepted_json', $content ); $content = wplng_translate_json( $content ); $content = apply_filters( 'wplng_translated_json', $content ); } elseif ( wplng_str_is_html( $content ) ) { $args = array(); if ( current_user_can( 'edit_posts' ) ) { if ( ! empty( $_GET['wplng-mode'] ) ) { switch ( $_GET['wplng-mode'] ) { case 'editor': $args['mode'] = 'editor'; break; case 'list': $args['mode'] = 'list'; break; } } $load_in_progress_enabled = apply_filters( 'wplng_enable_in_progress_feature', get_option( 'wplng_load_in_progress', false ) ); if ( $load_in_progress_enabled ) { $args['load'] = 'enabled'; if ( ! empty( $_GET['wplng-load'] ) && ( $_GET['wplng-load'] === 'translated' || $_GET['wplng-load'] === 'disabled' ) ) { $args['load'] = $_GET['wplng-load']; wplng_do_not_cache_page(); } } } $content = apply_filters( 'wplng_intercepted_html', $content ); $content = wplng_translate_html( $content, $args ); $content = apply_filters( 'wplng_translated_html', $content ); } return $content; } /** * wpLingua OB Callback function : /wp-json/ * * @param string $output * @return string */ function wplng_ob_callback_wp_json( $output ) { global $wplng_request_uri; $output_translated = $output; if ( wplng_str_is_json( $output ) ) { $output_translated = apply_filters( 'wplng_intercepted_json', $output_translated ); $output_translated = wplng_translate_json( $output_translated ); $output_translated = apply_filters( 'wplng_translated_json', $output_translated ); } // Print debug data in debug.log file if ( true === WPLNG_DEBUG_REST ) { $debug = array( 'title' => 'wpLingua /wp-json/ debug', 'request_uri' => $wplng_request_uri, 'value' => $output, 'translated' => $output_translated, ); error_log( var_export( $debug, true ) ); } return $output_translated; }