Я тоже думал как это реализовать, но в целом задача выглядит не супер сложной. Допустим, если получить из текста все теги
<p>
, то мы можем
->innertext
заменить переводом, после чего у нас в переменной $html будет уже переведенный текст
$paragraphs = $html->find( 'p' );
foreach ( $paragraphs as $key => $paragraph ) {
$paragraph->innertext = get_translate($paragraph->innertext);
}
Конечно, абзацы могут содержать инлайновые теги типо
<span>
,
<strong>
и хуже всего
<a>
. С ними сложнее, но если знать в каком точно формате их переводит переводчик, то регуляркой можно заменить обратно
Что касается api переводчиков, то они вроде все платные, но с настройкой по документации не должно возникнуть много проблем. Кстати, в мае Яндекс запустили новый сервис Yandex Translate с переводом на нейронках. Стоит это 45 руб. за 100к. символов. Стоит тестить, я считаю