get_feed_language(); if ( $feed_language && $CTX_TRP_RENDERER ) { // Remove empty strings. $translatable_strings = array_filter( explode( PHP_EOL, $output ), function ( $paragragh ) { if ( strlen( $paragragh ) > 1 ) { return $paragragh; } } ); $translated_strings = []; $translatable_strings = array_values( $translatable_strings ); foreach ( $translatable_strings as $translatable_string ) { $translatable_string = trim( $translatable_string ); $translated_string = $CTX_TRP_RENDERER->process_strings( [ $translatable_string ], $feed_language ); if ( count( $translated_string ) ) { $translated_strings[] = $translated_string[0]; } } if ( count( $translated_strings ) ) { $output = implode( ' ', $translated_strings ); } if ( self::should_modify_url( $feed_language ) ) { $output = self::get_modified_url( $output, $feed_language ); } } return $output; } /** * @param $feed_language * * @return bool */ private static function should_modify_url( $feed_language ) { global $TRP_LANGUAGE; return $feed_language != $TRP_LANGUAGE; } /** * @param $output * @param $feed_language * * @return mixed|string */ private static function get_modified_url( $output, $feed_language ) { $exploded_output = explode( home_url(), $output ); if ( count( $exploded_output ) > 1 ) { $output = home_url() . self::get_url_slug( $feed_language ) . explode( home_url(), $output )[1]; } return $output; } /** * @param $feed_language * * @return string */ private static function get_url_slug( $feed_language ) { global $CTX_TRP_Url_Converter; $slug = $CTX_TRP_Url_Converter->get_url_slug( $feed_language ); return $slug ? '/' . $slug : ''; } }