Полезная информация


----

Начать новую тему Ответить на тему
АвторСообщение

 Сообщение Away-страничка 2011-09-19

Аватар пользователя

Многие наверное замечали, что когда ,допустим, ВКонтакте переходишь по ссылке на другой сайт, то иногда выскакивает страница с предупреждением. Так вот в данной статье я расскажу как сделать такую страничку для своего форума.
Шаг 1
Устанавливаем мод . Сам мод легок в установке, редактированию подлежит лишь один файл, вообщем за пару минут справитесь.
Шаг 2
Скачиваем архив, прикрепленный ниже
Вложение :
away.rar [1.14 KiB]
Скачиваний: 171

Единственный файлик в архиве копируем в корень форума.
Шаг 3
Открываем файл по пути
/includes/prime_links.php
 

Находим следущую строку
define('EXTERNAL_LINK_PREFIX', '');         // Example: 'http://anonym.to?'
 

и заменяем ее на это
define('EXTERNAL_LINK_PREFIX', 'http://ваш_домен.ru/away.html?');         // Example: 'http://anonym.to?'
 

Сохраняем и закачиваем обратно. Не забываем добавить запрет на индексацию этого файла в Robots.txt
Disallow: /away.html
 

В админке чистим кеш и радуемся результатам :?
Вложение :



_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!

Теги темы
Away-страничка phpbb3, редидект внешний ссылок phpbb3
          Вернуться наверх  
 


Аватар пользователя

В файле /includes/prime_links.php строка
define('INTERNAL_LINK_DOMAINS', '');
 

Заполнена ???
Должно быть так
define('INTERNAL_LINK_DOMAINS', 'http://адрес форума;http://www.адрес форума');
 


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Не было заполнено.
Заполнил, очистил кеш, обновил шаблон и темы - непомогло. Не могу понять в чем проблема.?!
C ***.org.ua не хочет работать.))



Информация о редактировании
Последний раз редактировалось Артур Пиражков 01 сен 2012, 14:23, всего редактировалось 2 раз(а).
          Вернуться наверх  
 


Аватар пользователя

Попробуйте тогда так, в /includes/prime_links.php найти
  // Not local, now check forced local domains
            if (!$is_local && INTERNAL_LINK_DOMAINS)
            {
                $is_local = $this->match_domain($url, INTERNAL_LINK_DOMAINS);
            }
 
 

Вставить после найденного
 if ($is_local)
            {
                $is_local = !$this->match_domain($url, 'адрес форума.com.ua');
            }
 


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Ура заработало!!!!
ОГРОМНОЕ СПАСИБО!!!
:dr_ink:


          Вернуться наверх  
 


Аватар пользователя

Всегда пожалуйста, обращайтесь если что :co_ol:


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Подскажите плиз теперь заметил, что внутренние ссылки тоже закрыты. Как с этим быть? Нужно что бы внутренняя перелинковка с темы на тему индексировалась. Заранее Спасибо.


          Вернуться наверх  
 


Аватар пользователя

Видимо все изза моей правки, тут либо ее используешь либо нет. Хотя дайте первые 100 строк кода и вашего /includes/prime_links.php


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

?php
/**
*
* @package phpBB3
* @version $Id: prime_links.php,v 1.3.0 2012/02/08 13:15:00 primehalo Exp $
* @copyright (c) 2007-2012 Ken F. Innes IV
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* @ignore
*/
if (!defined('IN_PHPBB'))
{
   exit;
}

/**
* Include only once.
*/
if (!class_exists('prime_links'))
{
   // Options
   define('PRIME_LINKS_ENABLE', true);         // Enable this MOD?
   define('USE_TARGET_ATTRIBUTE', false);      // The attribute "target" is not valid for STRICT doctypes.
   define('HIDE_LINKS_FROM_GUESTS', false);   // Hide external links from guests? If this is a string, then the text of the link will be replaced with this string.
   define('EXTERNAL_LINK_PREFIX', 'http://prizok.org.ua/away.html?');         // Example: 'http://anonym.to?'
   define('INTERNAL_LINK_DOMAINS', 'http://prizok.org.ua;http://www.prizok.org.ua');      // List of domains to be considered local, separated by semicolons. Example: 'http://www.alternate-domain.com'
   define('FORBIDDEN_DOMAINS', '');         // List of domains for which links should be removed, separated by semicolons. Example: 'http://www.porn.com'
   define('FORBIDDEN_NEW_URL', '#');         // URL to insert in place of any removed links. Example: 'http://www.google.com' or '#top'

   // Link relationships
   define('INTERNAL_LINK_REL', '');
   define('EXTERNAL_LINK_REL', 'nofollow');

   // Link targets (setting to FALSE will remove the link)
   define('INTERNAL_LINK_TARGET', '');
   define('EXTERNAL_LINK_TARGET', '_blank');

   // Link classes
   define('INTERNAL_LINK_CLASS', 'postlink-local');
   define('EXTERNAL_LINK_CLASS', 'postlink');

   // Link file types (separate file extensions with a vertical bar "|")
   define('PDF_LINK_TYPES', 'pdf');
   define('IMG_LINK_TYPES', 'gif|jpg|jpeg|png|bmp');
   define('ZIP_LINK_TYPES', 'zip|rar|7z');

   // Special cases for specific link types. Separate file extensions with a vertical bar (|).
   define('EXTERNAL_LINK_TYPES', '');         // Example 1: 'pdf|gif|jpg|jpeg|png|bmp|zip|rar|7z'
   define('INTERNAL_LINK_TYPES', '');         // Example 2: PDF_LINK_TYPES . '|' . IMG_LINK_TYPES . '|' . ZIP_LINK_TYPES
   define('SKIP_LINK_TYPES', '');            // Don't process links to these file types
   define('SKIP_PREFIX_TYPES', '');         // Don't add an external link prefix for these file types

   // Link classes for specific file types.
   global $link_type_classes;
   $link_type_classes = array(
      PDF_LINK_TYPES   => 'pdf-link',
      IMG_LINK_TYPES   => 'img-link',
      ZIP_LINK_TYPES   => 'zip-link',
   );

   /**
   */
   function prime_links($text = null)
   {
      if (PRIME_LINKS_ENABLE)
      {
         if(is_string($text))
         {
            $prime_links = new prime_links();
            $text = $prime_links->modify_links($text);
         }
         else if ((EXTERNAL_LINK_TARGET || EXTERNAL_LINK_REL) && $text === null)
         {
            global $template;
            $external_target = !EXTERNAL_LINK_TARGET ? '' : (USE_TARGET_ATTRIBUTE === true ? (' target="' . EXTERNAL_LINK_TARGET . '"') : (' onclick="this.target=\'' . EXTERNAL_LINK_TARGET . '\';"'));
            $external_rel = !EXTERNAL_LINK_REL ? '' : ' rel="' . EXTERNAL_LINK_REL . '"';
            $template->assign_vars(array(
               'EXTERNAL_LINK_TARGET' => $external_target,
               'EXTERNAL_LINK_REL'   => $external_rel,
               'EXTERNAL_LINK_ATTRIBUTES' => $external_target . $external_rel,
            ));
            if (isset($template->_tpldata['forumrow']))
            {
               $prime_links = new prime_links();
               $key = sizeof($template->_tpldata['forumrow']) - 1;
               if (empty($template->_tpldata['forumrow'][$key]['S_IS_LINK']) || $prime_links->is_link_local($template->_tpldata['forumrow'][$key]['U_VIEWFORUM']))
               {
                  $external_target = '';
                  $external_rel = '';
               }
               $template->alter_block_array('forumrow', array(
                  'EXTERNAL_LINK_TARGET' => $external_target,
                  'EXTERNAL_LINK_REL' => $external_rel,
                  'EXTERNAL_LINK_ATTRIBUTES' => $external_target . $external_rel,
               ), true, 'change');
            }
         }
      }
 



Информация о редактировании
Последний раз редактировалось Артур Пиражков 04 сен 2012, 16:03, всего редактировалось 1 раз.
          Вернуться наверх  
 


Аватар пользователя

А если убрать ту правку, о которой я выше писал ссылки не скрываются??


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Нет не скрываются. Только что попробовал назад изменить.


          Вернуться наверх  
 


Аватар пользователя

Значит это уже нерешаемая диллема, нужно чем то жертвовать ибо решения другого нет к сожалению


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Спасибо за помощь. Вернул все назад поумолчанию. ORG.UA нечасто встречаются, а внутренняя перелинковка-нужное дело.


          Вернуться наверх  
 


Аватар пользователя

Всегда пожалуйста))


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Я сделал все инструкции для установки этого мода, в том числе и установку мода Прайме Линкс.
Заметил вот какую штуку.
Если делать ссылку ВВ кодом URL=, то действительно идёт редирект с этой авай страничкой.
А вот если вставлять внешнюю ссылку кодом с кнопкой -
ТО такой странички и нету. ВОТ.
Как решить? Не запрещать же этот ВВ код просто из-за недоработки мода.


          Вернуться наверх  
 


Аватар пользователя

Нуу я давно знал об этом, решения пока не могу найти


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

DeaDRoMeO писал(а):

if ($is_local)
{
$is_local = !$this->match_domain($url, 'адрес форума.com.ua');
}

Мне тоже это помогло


          Вернуться наверх  
 


Аватар пользователя

А как сделать, что бы нужные мне ссылки открывались без страницы "away"?


          Вернуться наверх  
 


Аватар пользователя

Просто добавьте нужные домены в исключение))


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

DeaDRoMeO писал(а):

Просто добавьте нужные домены в исключение))

А где именно?)))))


          Вернуться наверх  
 


Аватар пользователя

Открываем файл includes/prime_links.php и находим код, примерно такой
define('INTERNAL_LINK_DOMAINS', 'http://адрес форума;http://www.адрес форума');
 

И добавляем в этот код домены для исключения, допустим так
define('INTERNAL_LINK_DOMAINS', 'http://адрес форума;http://www.адрес форума;http://домен-исключение1;http://домен-исключение2');
 


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 
 
Начать новую тему Ответить на тему


Дополнительные возможности

Оставить свой комментарий

Поделиться темой с помощью

Ссылки на тему

Прямая ссылка:
BB-код для форумов, сайтов, блогов:
HTML ссылка:
 


Самая неформальная поддержка phpBB :P