|
Поделиться

Запрет картинок с внешних сайтов - Disallow external images

Предоставляет гибкие настройки по запрещению картинок с посторонних сайтов, побуждая участников форума использовать встроенную в phpBB систему вложений

Здесь вы можете скачать и получить поддержку по модам, созданным командой нашего сайта. Пожалуйста, не пишите и не задавайте вопросов, связанных с чужими разработками, используйте для этого форум ниже.

Сообщение Shredder » 10.11.13 14:09

Мод позволяет запретить пользователям размещать картинки с посторонних сервисов, будь то фотохостинги или любые другие сайты. Размещение изображений будет доступно только через систему вложений. Если пользователь попытается разместить картинку с постороннего сайта, то ему будет выдано предупреждение, что этого делать нельзя. Полезно в тех случаях, когда вы хотите хранить все изображения на своём сервере, без опасений потерять их в случае удаления на фотохостингах, без тормозов при открытии картинок и без необходимости просмотра всякой ненужной рекламы, которая обычно в изобилии присутствует на таких сайтах. Загрузка через вложения также помогает избавиться от лишних внешних ссылок, что хорошо сказывается в плане SEO.

Настраивается через админку.

acp.png


Скачать МОД:
disallow_external_images_1_0_4.zip
(190.76 КБ) Скачиваний: 521

Переводы на другие языки:
Украинский

Возможности:
  • Выбор, запрещать посторонние картинки только в публичных сообщениях или и в ЛС также.
  • Права доступа, позволяющие на уровне отдельных форумов дать выбранным пользователям или группам возможность размещать изображения с посторонних сайтов.
  • Возможность указать список разрешённых доменов, с которых пользователям будет позволено постить ссылки на картинки.
  • Выбор запрещаемых файловых расширений.
  • Возможность выбрать, через какие bb-коды нельзя добавлять картинки (например, img и hsimg), или же запретить сразу все посторонние картинки, включая обычные ссылки на них.
  • Выбор предупреждения, которое выводится пользователю, когда он пытается добавить картинку через посторонний сервис.

Важные замечания по установке и настройке:

  • При установке мод добавляет ваш сайт в список разрешённых доменов, копируя имя домена из меню "Настройки сервера", находящегося в администраторском разделе. Поэтому проверьте, чтобы там были правильные настройки, а то видел у некоторых localhost и даже чужие левые сайты.
  • По умолчанию в настройках мода стоит блокировка картинок размещённых только через определённые теги - img и hsimg. Если вы хотите заблокировать вообще все картинки, включая даже обычные ссылки на них, то оставьте строчку "Блокируемые теги" пустой.
  • До версии 1.0.2 через этот мод можно было запретить не все ссылки, а только те, в которых явно присутствовало расширение файла. В версии 1.0.2 появилась новая опция, позволяющая обнаруживать картинки без расширений, подробнее читайте здесь: Запрет картинок с внешних сайтов - Disallow external images

Язык в инструкции - только русский. Кто желает, можете перевести на английский и остальные.
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.
Shredder
Администратор
 
Сообщения: 867
Зарегистрирован: 22.08.13 09:05

Сообщение romeo_piter » 18.11.13 14:46

Shredder, не подскажете, что надо переписать в коде, чтобы он распространял влияние только на некоторые форумы, а не на все.
Грубо говоря, запрет на внешние картинки нужен только в некоторых форумах.

Думаю, многим подобное изменение было полезно.

Спасибо.
romeo_piter
 
Сообщения: 4
Зарегистрирован: 18.11.13 14:44

Сообщение Shredder » 18.11.13 20:15

Если вариант без админки, то открыть includes/message_parser.php, найти:

Код: Выделить всё
		global $post_id;

		if (

Заменить на:
Код: Выделить всё
		global $forum_id, $post_id;

		if (in_array($forum_id, array(2, 4)) && 

Вместо 2, 4 будет список ваших собственных id форумов через запятую, в которых картинки разрешены.

Если с админкой, то делать полноценную новую версию мода. И в таком случае, мне кажется, лучше будет сделать "разрешённые форумы" - подобно уже имеющимся разрешённым сайтам. В этих форумах картинки будут разрешены, во всех остальных - запрещены.
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.
Shredder
Администратор
 
Сообщения: 867
Зарегистрирован: 22.08.13 09:05

Сообщение romeo_piter » 18.11.13 21:53

А чем мешает админка, если мы напишем так:

Код: Выделить всё
global $forum_id, $post_id;

if (((($config['dei_enabled'] && isset($post_id)) || ($config['dei_enabled_pm'] && !isset($post_id))) && $config['dei_extensions']) && (in_array($forum_id, array(2, 4))
		{
romeo_piter
 
Сообщения: 4
Зарегистрирован: 18.11.13 14:44

Сообщение Shredder » 18.11.13 23:32

Не понял вопроса.

P.s. Ваш код работать не будет. Там не хватает скобок, и по-моему даже не одной.
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.
Shredder
Администратор
 
Сообщения: 867
Зарегистрирован: 22.08.13 09:05

Сообщение Alex » 19.11.13 16:38

Очень нравится данный мод, особенно он полезен молодым сообществам, чтобы фотографии никуда не пропадали.

Интересует такой вопрос, к примеру есть аккаунт на яндекс фотках: fotki.yandex.ru/users/НикПользователя. Как правильно прописать так, чтобы фотки могли отображаться с аккаунта только этого пользователя, а не со всех яндекс фоток ?

И поддерживает ли мод ББ код в предупреждении ?
Alex
 
Сообщения: 65
Зарегистрирован: 19.11.13 16:30

Сообщение Shredder » 19.11.13 22:01

Насчёт поддержки Яндекса, попробуйте так:
В includes/message_parser.php найти:
Код: Выделить всё
!$dei_domains

добавить на этой же строке перед:
Код: Выделить всё
!preg_match('#(?:fotki\.yandex\.ru\/users\/ВашНик\/)#iu', $match) || 

Ник не забудьте подставить свой.
По идее, должно сработать. Не проверял.

Alex писал(а):И поддерживает ли мод ББ код в предупреждении ?

Если имеется в виду: сделать в тексте предупреждения выделение с помощью какого-нибудь bb-кода, то нет. При использовании стандартного (из языковой переменной) предупреждения - дело не в моде, т.к. мод использует стандартную систему вывода предупреждений в phpBB3, а в ней, насколько мне помнится, такой поддержки нет. Для собственного (заданного в админке) предупреждения - тоже нет, но такую возможность наверное сделать можно, надо посмотреть.

Добавлено спустя 17 минут 45 секунд:
Посмотрел: собственное предупреждение тоже идёт через эту стандартную систему phpBB (по-иному - никак). Так что увы, но без дополнительных копаний в движке и переделок его функций показа ошибок - нет.
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.
Shredder
Администратор
 
Сообщения: 867
Зарегистрирован: 22.08.13 09:05

Сообщение Alex » 19.11.13 22:37

У меня была идея под предупреждением выводить 3 ссылки:
1. Инструкция по добавлению картинки;
2. Инструкция, как уменьшить размер картинки;
3. Инструкция, как оптимизировать картинку, если она все равно весит много.

Все ссылки должны открываться в отдельных вкладках, чтобы пользователь не ушел со страницы.

На мой взгляд это довольно-таки будет полезно, чтобы пользователь не брался за голову, когда у него картинка весит больше ограничений на форуме.
Alex
 
Сообщения: 65
Зарегистрирован: 19.11.13 16:30

Сообщение Shredder » 19.11.13 23:43

Здесь нужен уже другой - отдельный мод, поскольку за рамки этого данная задача выходит полностью. Рекомендую создать запрос в соответствующем форуме на phpbbguru, может кто-то уже знает такой или подскажет идею, как его сделать. Если нет, то может быть попробую сам, когда будет возможность.
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.
Shredder
Администратор
 
Сообщения: 867
Зарегистрирован: 22.08.13 09:05

Сообщение Alex » 20.11.13 00:30

Понял, спасибо.
Alex
 
Сообщения: 65
Зарегистрирован: 19.11.13 16:30

Сообщение cefp » 20.11.13 09:05

Может мод Resize images with the true diemensions version 0.32 ? Уменьшает картинки при загрузке.
cefp
 
Сообщения: 44
Зарегистрирован: 15.10.13 02:28

Сообщение Shredder » 26.11.13 00:11

Alex писал(а):Интересует такой вопрос, к примеру есть аккаунт на яндекс фотках: fotki.yandex.ru/users/НикПользователя. Как правильно прописать так, чтобы фотки могли отображаться с аккаунта только этого пользователя, а не со всех яндекс фоток ?
Shredder писал(а):попробуйте так:
В includes/message_parser.php найти:

Что-то я похоже ступил. Не надо ничего править в php-файлах, просто укажите fotki.yandex.ru/users/НикПользователя в списке разрешённых сайтов. Обновил версию мода, исправил там небольшой баг, из-за которого не пропускались поддомены разрешённых доменов, и заодно уточнил инструкцию по добавлению исключений (в языковой переменной DEI_DOMAINS_EXPLAIN)
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.
Shredder
Администратор
 
Сообщения: 867
Зарегистрирован: 22.08.13 09:05

Сообщение Alex » 07.12.13 11:43

Наконец-то дошли руки до установки мода. Все встало через автомод как надо. Единственное, чтобы увидеть настройки надо было очистить кеш.

Спасибо большое за модификацию ;)
Alex
 
Сообщения: 65
Зарегистрирован: 19.11.13 16:30

Сообщение Shredder » 09.12.13 06:40

Выпущена версия 1.0.2. Изменения:

  • Добавлены права доступа, позволяющие дать выбранным пользователям или группам возможность размещать изображения с посторонних сайтов. Для разрешения картинок в каком-либо форуме нужно установить форумное право "Может размещать картинки с посторонних сайтов" на вкладке "Разное". Для разрешения картинок в ЛС нужно установить пользователю или группе глобальное право "Может размещать картинки с посторонних сайтов в ЛС" на вкладке "Личные сообщения".
  • Добавлена форсированная проверка ссылок. Данная функция действует независимо от проверки запрещённых расширений и позволяет запретить картинки без явного наличия расширения в ссылках. Метод проверки выбирается в админке. Пока доступны два метода:
    1. cUrl - рекомендуемый метод. Самый быстрый и безопасный. Для работы этой функции необходимо, чтобы на сервере было установлено расширение cUrl.
    2. getimagesize. Наименее быстрый и безопасный. Выбирайте только в том случае, если на сервере отсутствует cUrl и его нельзя установить. Метод требует включённого параметра allow_url_fopen в PHP.

    Оба метода могут замедлить отправку сообщений, содержащих ссылки, особенно при работе через getimagesize или на версиях PHP меньше 5. Без этого пока никак, потому что для проверки ссылок без расширений происходит опрос всех посторонних ссылок методами PHP и получение ответа от них. В полученном ответе скрипт смотрит, картинка это или нет.
По вопросам установки cUrl или включения allow_url_fopen обращайтесь к своему хостеру.
Выполняю работы по phpBB3 на заказ. Пишите в личку или на почту.
Бесплатная поддержка - только в темах.
Shredder
Администратор
 
Сообщения: 867
Зарегистрирован: 22.08.13 09:05

Сообщение romeo_piter » 11.12.13 22:51

Добрый вечер.

Не подскажете, возможно ли сразу прописать права на разрешенные, как для форумов, так и для ЛС, чтобы не ковыряться потом и не прописывать. Как я понимаю, права устанавливаются в инсталляторе, и где-то там что-то вероятно можно подправить? :)
romeo_piter
 
Сообщения: 4
Зарегистрирован: 18.11.13 14:44

След.

Вернуться в Модификации сайта phpBB-Work.ru

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron