Показать сообщение отдельно
  #1 (permalink)  
Старый 23.01.2024, 18:23
Кандидат Javascript-наук
Отправить личное сообщение для mik888em Посмотреть профиль Найти все сообщения от mik888em
 
Регистрация: 21.06.2020
Сообщений: 145

Почему на WP сайте код (плагин AJAX Load More) не грузит страницы исходя из языка?
Код для плагина AJAX Load More должен грузить в бесконечном скролле , при подходе к нижней границе страницы - страницы исходя из полученного языка материнской (текущей загруженной страницы).

Но почему-то грузит страницы как и без кода, то есть на произвольных языках.

Например на португальской странице плагин грузит страницы у которых в url не на португальском:
1q.jpg


на ru странице плагин грузит страницы у которых в url не на русском (еще не доделал на ru замену):
2q.jpg

Да, я есть еще не доделал что если страница на ru , чтоб он грузил внизу страницы на ru, но это не суть важно, т.к. даже на том же pt
языке который вроде я сделал, он не подсовывает в загрузку строго на pt языке.

код:
console.log('Начало работы скрипта Ajax Load More...');

// Получаем путь текущего URL
var currentUrl = window.location.pathname;
console.log('Текущий URL:', currentUrl);

// Регулярное выражение для определения языкового кода
var languageRegex = /^\/(zh|tr|pt|ja|it|id|fr|es|en|de)\//; 
var languagePath = currentUrl.match(languageRegex) ? currentUrl.match(languageRegex)[1] : '';

if (!languagePath) {
    languagePath = 'ru';
    console.log('Языковой путь: ru');
} else {
    console.log('Языковой путь:', languagePath);
}

// Функция для изменения запроса Ajax Load More перед отправкой
window.almOnLoad = function(alm) {
    console.log('Перед отправкой запроса Ajax Load More');
    // Если языковой код присутствует и не 'ru', модифицируем путь для AJAX-запроса
    if(languagePath !== 'ru') {
        alm.ajaxurl = alm.ajaxurl.replace('/wp-admin/admin-ajax.php', '/' + languagePath + '/wp-admin/admin-ajax.php');
        console.log('Модифицированный путь AJAX-запроса:', alm.ajaxurl);
    } else {
        // Если код 'ru' или отсутствует, используем стандартный путь AJAX-запроса
        console.log('Стандартный путь AJAX-запроса для русского языка.');
    }
};

console.log('Скрипт Ajax Load More настроен.');
Ответить с цитированием