Как сделать двуязычный перевод для блога?

У меня есть страничка где я делаю выборку текста по id из базы данных для двух языков.

База данных имеет три колонки (id, en и ru) и я просто обращаюсь к нужному id

$lang = '';
if ((isset($_GET['language']) && $_GET['language'] == 'en') || !isset($_GET['language'])) {
    $lang = 'en';
} else {
    $lang = 'pl';
}

function findTranstationIdAndLang($translation_id, $lang) {
    $conn = new mysqli('localhost', 'root', '', 'site');
    $sql = "SELECT * FROM blog_text WHERE id = $translation_id";
    $conn->set_charset('utf-8');
    $result = $conn->query($sql);
    $row = $result->fetch_all(MYSQLI_ASSOC);    
    return (isset($row[0]) && isset($row[0][$lang])) ? $row[0][$lang] : '';
}


<h1><?= findTranstationIdAndLang(1, $lang) ?></h1>

Но кроме этого на этой же странице есть секция где должны находиться блоги. По подсказке с предыдущего вопроса на форуме я узнала что можно не создавать отдельные таблички для двух языков блога, а сделать что-то по примере id, title, title_en, description и description_en

Теперь меня интересует вопрос, если я например получаю с БД эти колонки

SELECT title_en AS title, description_en AS description FROM blog_posts


То как мне в конструкции foreach отразить, например, по моей ссылке mysite.ru/blog/?language=en только данные из колонки, имеющие окончание _en (description_en и title_en), или по ссылке mysite.ru/blog/?language=ru все колонки которые не имеют этого окончания?
  • Вопрос задан
  • 64 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы