Как перевести страницу с помощью short_code?

Всем привет. Я новичок в php, поэтому пожалуйста строго не судите.
У меня есть база, где есть 4 колонки.
Первая колонка это id, вторая это lang, третья text и четвертая это short_code
60b60abfadb96344216351.png

У меня на сайте есть текст, который в зависимости от ссылки должен меняться:
Например ссылка mysite/index.php/fr и сайт должен взять данные из базы по конктетному short_code и в зависимости от языка в ссылке страницы показать текст.

Я нашла в интернете некоторые куски кода и пробую что-то сделать, но пока ничего не получается:

<?php

function findShortCodeAndLang($short_name, $lang)
{
    global $conn;
    $sql = "SELECT * FROM bb_ads WHERE short_code = $short_name AND lang = $lang";
    $conn->set_charset('utf-8');
    $result = $conn->query($sql);
    $row = $result->fetch_all(MYSQLI_ASSOC);
    return $row[0];
}

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


<a href class="btn__color"><?php echo findShortCodeAndLang(['BUTTON_PORTFOLIO'], $lang) ?></a>


Я буду благодарна за любую помощь.
  • Вопрос задан
  • 176 просмотров
Пригласить эксперта
Ответы на вопрос 1
@HellWalk
Начать нужно с того, на чем проект? Велосипед или фреймворк?

Для популярных фреймворков уже сделаны модули мультиязычности, и стоит использовать их.

Даже если у вас велосипед - можно использовать Symfony Translations (как отдельный модуль)

Если же захочется сделать свой велосипед, то конечно, можно, но:

1) В любом случае, чтобы сделать его хорошо, придется смотреть и вникать в примеры других реализаций
2) Это долго, нужно сразу готовиться к переделкам в будущем. Хотя, с точки зрения развития, велосипедить полезно

Пример крайне упрощенного самописного модуля мультиязычности можете посмотреть в этом проекте (src/Battle/Translation/)
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы