External Link Interstitial

External Link Interstitial 1.0.4

Нет прав для скачивания

Hope

Premium
Сообщения
48,305
Решения
22
Реакции
71,872
Баллы
40,905
Пользователь Hope разместил новый ресурс:

External Link Interstitial - Отображение промежуточной страницы, если у Вас включено проксирование ссылок.

Плагин добавит отображение промежуточной страницы, если у Вас на форуме включено проксирование ссылок.

Узнать больше об этом ресурсе...
 
Огонь плагин! На страницу с редиректом и рекламу повесить можно, да и вообще единая точка выхода это неплохо. Случайно наткнулся, но именно то что надо, без правок в регулярке ссылок.
 
Кто знает, можно ли использовать данную систему для ссылок SAPE?
Или это есть не хорошо?
 
koris, а сапа тут каким боком? Обычный скрипт с редиректом, который в движок встроен но не используется.
 
Exile,
Вопрос мой к тому, что если использовать сапу применительно к ссылкам встраиваемым в топики (в контекстном варианте), то скрипт сей будет к ним применяться...
Просто будут ли такие ссылки вываливаться в error у сапы или же все будет нормально?
 
koris, потестировать работу контекстной сапы не удалось с проксированием - они https не поддерживают, пришлось от них отказаться. Но ссылка при проксировании меняется, поэтому с уверенностью скажу, что все в error уйдут.
 
Прикольно получаеться с плагином, форум на домене a.b.com а корневой домен соответсвенно b.com и если на форуме ссылка на b.com то при редиректе все равно говориться "сторонний сайт, к которому мы не имеем никакого отношения" :)))
 
Reborns, у себя поправил грязным хаком в коде, лень опцию в админке делать.

В файле library/WMTech/ExternalLinkInterstitial/ProxyOutput.php
PHP:
    protected function _outputLinkRedirect($error)
    {
        if (empty($error) &&  $this->_mode == 'link' && !preg_match('#google.com#is', $this->_url) && preg_match('#^https?:\/\/#i', $this->_url))
        {
Вот к такому виду участок приводим, где google.com - основной домен. Если переездов на другие домены не планируется - большего и не надо :speechless:
 
Можно даже не менять ничего а просто добавить в коде :-)
Код:
class WMTech_ExternalLinkInterstitial_ProxyOutput extends XFCP_WMTech_ExternalLinkInterstitial_ProxyOutput
{
    protected function _outputLinkRedirect($error)
    {
        if (empty($error) &&  $this->_mode == 'link'
                && !preg_match('#^' . XenForo_Application::getOptions()->boardUrl . '#i', $this->_url)
                && !preg_match('#google.com#is', $this->_url)
                && preg_match('#^https?:\/\/#i', $this->_url))
        {
            $error = 'show_interstitial';
            $proxyModel = XenForo_Model::create('XenForo_Model_LinkProxy');
            $proxyModel->logVisit($this->_url);
        }
        parent::_outputLinkRedirect($error);
    }
}

Хотя опция в админке конечно же лучше .. :)
 
Скажите пожалуйста, где страницу с редиректа редактировать? (сменить текст)
 
В этом плагине нет ни одной фразы
 
В этом плагине нет ни одной фразы
Да, Я смотрел в файлах плагина и нет ни одной фразы, по этому спросил, на странице Перенаправления есть текст типа "Вы собираетесь покинуть сайт... и т.д вот мне нужно сменить текст, и спросил где?
 
Поиск по фразам в админке

Локализаторы движка отожгли в одной из версии перевода:
Вы собираетесь покинуть сайт "{доска}" и перейти на другой, сторонний сайт, к которому мы не имеем никакого отношения. Нажмите на кнопку ниже, чтобы перейти к {host}.
:-D Google Translate видимо. :)
 
  • Мне нравится
Реакции: sexo
&& !preg_match('#google.com#is', $this->_url) Это понятно, а если сайтов несколько? Их перечислить такими же строками для каждой или как то по другому?
 
Через запятушку попробуйте что ли...
 
&& !preg_match('#google.com,еще сайт,еще сайт#is', $this->_url) не работает так, если домен один то работает.
 
Попробуйте добавить тогда ещё одно условие:
PHP:
&& !preg_match('#google.com#is', $this->_url)


Получится примерно так:
PHP:
if (empty($error) &&  $this->_mode == 'link'
                && !preg_match('#^' . XenForo_Application::getOptions()->boardUrl . '#i', $this->_url)
                && !preg_match('#google.com#is', $this->_url)
               && !preg_match('#site.ru#is', $this->_url)
               && preg_match('#^https?:\/\/#i', $this->_url))
        {

Но не уверен сейчас, попробуйте просто. :-)
 
будет работать конечно
Код:
                && !preg_match('#^' . XenForo_Application::getOptions()->boardUrl . '#i', $this->_url)
                && !preg_match('#google.com#', $this->_url)
                && !preg_match('#mail.ru#', $this->_url)
                && !preg_match('#yandex.ru#', $this->_url)
                && preg_match('#^https?:\/\/#i', $this->_url))

Только этот вот #is я удалил , не очень понятно зачем это , ну и без этого работает..
 
Последнее редактирование:
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу