Info Кто чем не доволен?

linuxsu

root
Регистрация
16 Мар 2024
Сообщения
1.578
Репутация
90
Реакции
1.699
Баллы
2.532
Вещества
прущие
Последнее редактирование:

linuxsu

root
Регистрация
16 Мар 2024
Сообщения
1.578
Репутация
90
Реакции
1.699
Баллы
2.532
Вещества
прущие
k r o v o s † o k,
Я думаю все юзеры согласятся c описанной ниже проблемой.... usjr, Lt. ALDO RAINE PUMA 228, Loreyn Bracco, Мазай, Гриффиндор, BAZARC, PharmaKom, Tabacos, Cannabreeze, ExxTazIK, Юзер2022, МОШЕННИК, Uahelper, Olivеr, Nikit0k420, Тяжёлая Миша, Fack, Zip Zipula, tuglow, Толя Солома, Porshe911, johan, Search@, Перезаклад!, Назарка, Петя Щур, Ужаленый, Васильев, linuxsu, yur@, outrigger, dagdonibr4D, KUNIMATOR, berserkmrpl, usjr, PastorNapasovych, ANUBIS SUPPОRT, piojvg, Markez, romandgon, metadonanet13, mannaKasha, Убью Засоль, Министерство пиздеца, Просто Хуй, DaNuNaxyi, Nonetheless, Tr1cky777.
Неудобно получается (и довольно часто попадается), когда кто-то прикрепил в сообщении ссылку на раздел форума. А когда ты ее открываешь, то?.... попадаешь на другое зеркало....
Приходится вручную прописывать в адресеной строке нужное зеркало!



Что-бы нам помочь с этой проблемой, я обратился к ChatGPT... . Он, с моей подачи, подготовил простой и понятный аддон к XenForo.
Для удобства конечный архив я поместил на файловый обменник - https://files.catbox.moe/9sf4et.zip - Рекомендуется взять сниппеты напрямую тс диалога и самому поместить в архив!-------------)
Bash:
unzip -l /home/niko/Завантажене/InternalLinkCleaner_with_config.zip
Archive:  /home/niko/Завантажене/InternalLinkCleaner_with_config.zip.
  Length      Date    Time    Name
---------  ---------- -----   ----
     1247  2025-07-26 14:02   InternalLinkCleaner/Listener.php
       79  2025-07-26 14:02   InternalLinkCleaner/config.php
      300  2025-07-26 14:02   InternalLinkCleaner/addon.json
      253  2025-07-26 14:02   InternalLinkCleaner/_data/code_event_listeners.xml
---------                     -------
     1879                     4 files


🔧 Установка аддона Internal Link Cleaner (с настройками через ACP)

Аддон автоматически преобразует ссылки на ваши зеркальные домены во внутренние (относительные), чтобы избежать редиректов между зеркалами и убрать внешнюю маркировку ссылок.

❶ Установка

  1. Скачайте архив: https://files.catbox.moe/9sf4et.zip
  2. Зайдите в АдминкуAdd-onsInstall/upgrade from archive
  3. Выберите файл архива и нажмите Установить
❷ Настройка
После установки перейдите в:
ACP → Настройки → Internal Link Cleaner
Там доступны следующие параметры:[/URL]
  • Включить обрезку ссылок — включает/выключает функциональность.
  • Обрабатывать
    Код:
    [url][/url]
    — заменяет ссылки типа
    Код:
    [url]https://example.com/path[/url]
    на относительные:
    Код:
    [url]/path[/url]
  • Обрабатывать
    Код:
    [img][/img]
    — удаляет домен в тегах изображений.
  • Обрабатывать
    Код:
    [media][/media]
    — аналогично для встроенных медиа.
  • Зеркальные домены — указываются по одному в строке. Пример:

    Код:
    example.com
    www.example.com
    example.net

❸ Как это работает?
Если пользователь или модератор вставляет ссылку вида:
Код:
https://example.net/threads/topic-name.12345/
То она автоматически превращается в:
Код:
/threads/topic-name.12345/
Такой подход:
  • Избегает лишних переходов между зеркалами.
  • Удаляет внешний вид (nofollow / out.php).
  • Ускоряет переходы по ссылкам.

  • Работает во всех типах сообщений (темы, ЛС, ресурсы и т.д.).
  • Поддерживает любое количество зеркал.
  • Работает даже если сообщение редактирует модератор с другого домена.

  • Добавить логирование замен
  • Очистить старые сообщения
  • Сделать массовую переконвертацию


Обнова: Долой Админов.БЕРЕМ ФОРУМ ПОД СВОЙ КОНТРОЛЬ

Реализуем ту же логику на js в браузере! Под UserScript! (ViolentMonkey, TemperMonkey etc)

Проверенно

JavaScript:
// ==UserScript==
// @name         Internal Link Cleaner
// @namespace    BigBro
// @version      1.0
// @description  Преобразует зеркальные домены в относительные ссылки, чтобы избежать редиректов между зеркалами
// @author       YourName
// @match        http*://b*gbro.*/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    // Список зеркальных доменов
    const MIRROR_DOMAINS = [
        'bigbro.cc',
        'b1gbro.com',
        'bigbro.bz',
    ];

    // Функция проверки, принадлежит ли URL зеркальному домену
    function isMirrorDomain(url) {
        try {
            const u = new URL(url);
            return MIRROR_DOMAINS.includes(u.hostname);
        } catch(e) {
            return false;
        }
    }

    // Преобразуем ссылку в относительную, если домен зеркальный
    function convertLink(link) {
        if (!link.href) return;
        if (isMirrorDomain(link.href)) {
            try {
                const u = new URL(link.href);
                // Сохраняем только путь, search и hash
                link.href = u.pathname + u.search + u.hash;
            } catch(e) {
                // ignore
            }
        }
    }

    // Обработка всех ссылок на странице
    function processLinks() {
        const links = document.querySelectorAll('a[href]');
        links.forEach(convertLink);
    }

    // Аналогично для изображений (если в img src есть зеркальный домен)
    function processImages() {
        const images = document.querySelectorAll('img[src]');
        images.forEach(img => {
            try {
                const u = new URL(img.src);
                if (MIRROR_DOMAINS.includes(u.hostname)) {
                    img.src = u.pathname + u.search + u.hash;
                }
            } catch(e) {
                // ignore
            }
        });
    }

    // Для media - если есть видео/аудио с src
    function processMedia() {
        const medias = document.querySelectorAll('video[src], audio[src], source[src]');
        medias.forEach(m => {
            try {
                const u = new URL(m.src);
                if (MIRROR_DOMAINS.includes(u.hostname)) {
                    m.src = u.pathname + u.search + u.hash;
                }
            } catch(e) {
                // ignore
            }
        });
    }

    // Запуск обработки после загрузки DOM
    function init() {
        processLinks();
        processImages();
        processMedia();
    }

    if (document.readyState === 'loading') {
        document.addEventListener('DOMContentLoaded', init);
    } else {
        init();
    }
})();

 
Последнее редактирование:

⭕️⭕️⭕️

Я Всё Вижу
Мес†ный
Регистрация
29 Сен 2016
Сообщения
5.159
Репутация
-19.083
Реакции
8.245
Баллы
2.532
Вещества
Не двигаюсь
Особенно удобное решение, если сидишь с Live-системы или используешь удаление кенша при закрытии браузера!) ___))))
Ну вот ты ж сам понимаешь как решать свои же проблемы))
Не обязательно переделывать форум
Можно ж поменять способ пользования форумом
 

linuxsu

root
Регистрация
16 Мар 2024
Сообщения
1.578
Репутация
90
Реакции
1.699
Баллы
2.532
Вещества
прущие
Ну вот ты ж сам понимаешь как решать свои же проблемы))
Не обязательно переделывать форум
Можно ж поменять способ пользования форумом
Не обязательно весь ремонт делать, можно ж просто скотчем обклеить и жить дальше.
 

linuxsu

root
Регистрация
16 Мар 2024
Сообщения
1.578
Репутация
90
Реакции
1.699
Баллы
2.532
Вещества
прущие
k r o v o s † o k,
Я думаю все юзеры согласятся c описанной ниже проблемой.... usjr, Lt. ALDO RAINE PUMA 228, Loreyn Bracco, Мазай, Гриффиндор, BAZARC, PharmaKom, Tabacos, Cannabreeze, ExxTazIK, Юзер2022, МОШЕННИК, Uahelper, Olivеr, Nikit0k420, Тяжёлая Миша, Fack, Zip Zipula, tuglow, Толя Солома, Porshe911, johan, Search@, Перезаклад!, Назарка, Петя Щур, Ужаленый, Васильев, linuxsu, yur@, outrigger, dagdonibr4D, KUNIMATOR, berserkmrpl, usjr, PastorNapasovych, ANUBIS SUPPОRT, piojvg, Markez, romandgon, metadonanet13, mannaKasha, Убью Засоль, Министерство пиздеца, Просто Хуй, DaNuNaxyi, Nonetheless, Tr1cky777.
Неудобно получается (и довольно часто попадается), когда кто-то прикрепил в сообщении ссылку на раздел форума. А когда ты ее открываешь, то?.... попадаешь на другое зеркало....
Приходится вручную прописывать в адресеной строке нужное зеркало!



Что-бы нам помочь с этой проблемой, я обратился к ChatGPT... . Он, с моей подачи, подготовил простой и понятный аддон к XenForo.
Для удобства конечный архив я поместил на файловый обменник - https://files.catbox.moe/9sf4et.zip - Рекомендуется взять сниппеты напрямую тс диалога и самому поместить в архив!-------------)
Bash:
unzip -l /home/niko/Завантажене/InternalLinkCleaner_with_config.zip
Archive:  /home/niko/Завантажене/InternalLinkCleaner_with_config.zip.
  Length      Date    Time    Name
---------  ---------- -----   ----
     1247  2025-07-26 14:02   InternalLinkCleaner/Listener.php
       79  2025-07-26 14:02   InternalLinkCleaner/config.php
      300  2025-07-26 14:02   InternalLinkCleaner/addon.json
      253  2025-07-26 14:02   InternalLinkCleaner/_data/code_event_listeners.xml
---------                     -------
     1879                     4 files


🔧 Установка аддона Internal Link Cleaner (с настройками через ACP)

Аддон автоматически преобразует ссылки на ваши зеркальные домены во внутренние (относительные), чтобы избежать редиректов между зеркалами и убрать внешнюю маркировку ссылок.

❶ Установка

  1. Скачайте архив: https://files.catbox.moe/9sf4et.zip
  2. Зайдите в АдминкуAdd-onsInstall/upgrade from archive
  3. Выберите файл архива и нажмите Установить
❷ Настройка
После установки перейдите в:
ACP → Настройки → Internal Link Cleaner
Там доступны следующие параметры:[/URL]
  • Включить обрезку ссылок — включает/выключает функциональность.
  • Обрабатывать
    Код:
    [url][/url]
    — заменяет ссылки типа
    Код:
    [url]https://example.com/path[/url]
    на относительные:
    Код:
    [url]/path[/url]
  • Обрабатывать
    Код:
    [img][/img]
    — удаляет домен в тегах изображений.
  • Обрабатывать
    Код:
    [media][/media]
    — аналогично для встроенных медиа.
  • Зеркальные домены — указываются по одному в строке. Пример:

    Код:
    example.com
    www.example.com
    example.net

❸ Как это работает?
Если пользователь или модератор вставляет ссылку вида:
Код:
https://example.net/threads/topic-name.12345/
То она автоматически превращается в:
Код:
/threads/topic-name.12345/
Такой подход:
  • Избегает лишних переходов между зеркалами.
  • Удаляет внешний вид (nofollow / out.php).
  • Ускоряет переходы по ссылкам.

  • Работает во всех типах сообщений (темы, ЛС, ресурсы и т.д.).
  • Поддерживает любое количество зеркал.
  • Работает даже если сообщение редактирует модератор с другого домена.

  • Добавить логирование замен
  • Очистить старые сообщения
  • Сделать массовую переконвертацию
k r o v o s † o k , это так же может быть полезно в контексте SEO

  1. Отсутствие переходов между зеркалами — поисковики видят один и тот же сайт, а не разные домены с дублированным контентом. Это снижает риск дублирования и путаницы.
  2. Уменьшается вероятность потери "ссылочного веса" — внутренние ссылки лучше передают SEO-сигналы внутри сайта, чем ссылки на внешние домены (пусть и зеркальные).
  3. Улучшение пользовательского опыта — отсутствие редиректов ускоряет загрузку и улучшает поведение пользователей, что также учитывается поисковыми системами.
  4. Контроль над атрибутами ссылок — если плагин убирает или корректно обрабатывает атрибуты nofollow, rel="external" и т.п., это может помочь концентрировать ссылочный вес внутри сайта.


 

KUNIMATOR

Лютый Исследователь
Мес†ный
Регистрация
9 Янв 2018
Сообщения
1.907
Репутация
64
Реакции
996
Баллы
1.532
k r o v o s † o k,
Я думаю все юзеры согласятся c описанной ниже проблемой.... usjr, Lt. ALDO RAINE PUMA 228, Loreyn Bracco, Мазай, Гриффиндор, BAZARC, PharmaKom, Tabacos, Cannabreeze, ExxTazIK, Юзер2022, МОШЕННИК, Uahelper, Olivеr, Nikit0k420, Тяжёлая Миша, Fack, Zip Zipula, tuglow, Толя Солома, Porshe911, johan, Search@, Перезаклад!, Назарка, Петя Щур, Ужаленый, Васильев, linuxsu, yur@, outrigger, dagdonibr4D, KUNIMATOR, berserkmrpl, usjr, PastorNapasovych, ANUBIS SUPPОRT, piojvg, Markez, romandgon, metadonanet13, mannaKasha, Убью Засоль, Министерство пиздеца, Просто Хуй, DaNuNaxyi, Nonetheless, Tr1cky777.
Неудобно получается (и довольно часто попадается), когда кто-то прикрепил в сообщении ссылку на раздел форума. А когда ты ее открываешь, то?.... попадаешь на другое зеркало....
Приходится вручную прописывать в адресеной строке нужное зеркало!



Что-бы нам помочь с этой проблемой, я обратился к ChatGPT... . Он, с моей подачи, подготовил простой и понятный аддон к XenForo.
Для удобства конечный архив я поместил на файловый обменник - https://files.catbox.moe/9sf4et.zip - Рекомендуется взять сниппеты напрямую тс диалога и самому поместить в архив!-------------)
Bash:
unzip -l /home/niko/Завантажене/InternalLinkCleaner_with_config.zip
Archive:  /home/niko/Завантажене/InternalLinkCleaner_with_config.zip.
  Length      Date    Time    Name
---------  ---------- -----   ----
     1247  2025-07-26 14:02   InternalLinkCleaner/Listener.php
       79  2025-07-26 14:02   InternalLinkCleaner/config.php
      300  2025-07-26 14:02   InternalLinkCleaner/addon.json
      253  2025-07-26 14:02   InternalLinkCleaner/_data/code_event_listeners.xml
---------                     -------
     1879                     4 files


🔧 Установка аддона Internal Link Cleaner (с настройками через ACP)

Аддон автоматически преобразует ссылки на ваши зеркальные домены во внутренние (относительные), чтобы избежать редиректов между зеркалами и убрать внешнюю маркировку ссылок.

❶ Установка

  1. Скачайте архив: https://files.catbox.moe/9sf4et.zip
  2. Зайдите в АдминкуAdd-onsInstall/upgrade from archive
  3. Выберите файл архива и нажмите Установить
❷ Настройка
После установки перейдите в:
ACP → Настройки → Internal Link Cleaner
Там доступны следующие параметры:[/URL]
  • Включить обрезку ссылок — включает/выключает функциональность.
  • Обрабатывать
    Код:
    [url][/url]
    — заменяет ссылки типа
    Код:
    [url]https://example.com/path[/url]
    на относительные:
    Код:
    [url]/path[/url]
  • Обрабатывать
    Код:
    [img][/img]
    — удаляет домен в тегах изображений.
  • Обрабатывать
    Код:
    [media][/media]
    — аналогично для встроенных медиа.
  • Зеркальные домены — указываются по одному в строке. Пример:

    Код:
    example.com
    www.example.com
    example.net

❸ Как это работает?
Если пользователь или модератор вставляет ссылку вида:
Код:
https://example.net/threads/topic-name.12345/
То она автоматически превращается в:
Код:
/threads/topic-name.12345/
Такой подход:
  • Избегает лишних переходов между зеркалами.
  • Удаляет внешний вид (nofollow / out.php).
  • Ускоряет переходы по ссылкам.

  • Работает во всех типах сообщений (темы, ЛС, ресурсы и т.д.).
  • Поддерживает любое количество зеркал.
  • Работает даже если сообщение редактирует модератор с другого домена.

  • Добавить логирование замен
  • Очистить старые сообщения
  • Сделать массовую переконвертацию
Расписал на всё деньги
 
Сверху Снизу