Links
Comment on page

Exemple of snippet to translate search from JetSearch plugin

In this example, we use custom code to translate the search result provide by the plugin jetSearch
add_action( 'jet-search/ajax-search/search-query', 'modify_weglot_search_query', 10, 2 );
function modify_weglot_search_query($instance,$args){
$parser_services = weglot_get_service( 'Parser_Service_Weglot' );
$parser = $parser_services->get_parser();
$language_services = weglot_get_service( 'Language_Service_Weglot' );
$request_url_services = weglot_get_service( 'Request_Url_Service_Weglot' );
$original_language = $language_services->get_original_language()->getInternalCode();
$destination_languages = weglot_get_destination_languages();
$current_language = weglot_get_current_language();
if($original_language === $current_language){
return;
}
foreach ($destination_languages as $destination){
if($destination['language_to'] === $current_language && !empty($destination['custom_code'])){
$current_language = substr($destination['custom_code'], 0, 2);
}
}
if ( ! empty( $instance->search_query['s'] ) ) {
$new_search = $parser->translate( $instance->search_query['s'], $current_language, $original_language );
$instance->search_query['s'] = $new_search;
}
}
add_filter( 'weglot_ajax_no_translate', 'custom_weglot_ajax_no_translate' );
function custom_weglot_ajax_no_translate( $ajax_action_array ){
unset($ajax_action_array[16]);
return $ajax_action_array;
}
add_filter( 'weglot_add_json_keys', 'custom_weglot_add_json_keys' );
function custom_weglot_add_json_keys( $keys ){
$keys[] = 'title';
$keys[] = 'link';
$keys[] = 'before_title';
$keys[] = 'posts';
return $keys;
}
add_filter( 'weglot_html_treat_page', 'custom_weglot_html_treat_page_1' );
function custom_weglot_html_treat_page_1( $html ) {
$s = '{data.thumbnail}}';
$r= '{{{data.thumbnail}}}';
$html = str_replace( $s, $r, $html );
$html = str_replace( '{{{{', '{{{', $html );
return $html;
}