> For the complete documentation index, see [llms.txt](https://developers.weglot.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.weglot.com/wordpress/use-cases/weglot-translate-on-elementor.md).

# Weglot translate on Elementor

With the code below, we force the translation of content generated by Elementor, using the `elementor/frontend/the_content` filter.

```php
use Weglot\Parser\Parser;
use Weglot\Parser\ConfigProvider\ServerConfigProvider;

function weglot_content_check( $content ) {

	$request_url_services = weglot_get_service( 'Request_Url_Service_Weglot' );
	$parser_services      = weglot_get_service( 'Parser_Service_Weglot' );
	$generate_switcher    = weglot_get_service( 'Generate_Switcher_Service_Weglot' );
	$replace_url_services = weglot_get_service( 'Replace_Url_Service_Weglot' );
	$current_language     = $request_url_services->get_current_language()->getExternalCode();
	$original_language    = weglot_get_original_language();

	$content = $generate_switcher->generate_switcher_from_dom( $content );
	if ( $original_language == $current_language ) {
		return $content;
	}

	$config  = new ServerConfigProvider();
	$client  = $parser_services->get_client();
	$parser  = new Parser( $client, $config, [] );
	$content = $parser->translate( $content, $original_language, $current_language );
	$content = $replace_url_services->replace_link_in_dom( $content );

	return $content;
}
add_action( 'elementor/frontend/the_content', 'weglot_content_check' );
```
