phpBB Gallery (nickvergessen)

Поддержка старых модов или модов, созданных авторами не из нашего сообщества, а также любые вопросы, связанные с модами для phpBB 3.0.x, кроме относящихся к форуму Для авторов (phpBB 3.0.x).
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
mEx
phpBB 1.4.4
Сообщения: 197
Стаж: 19 лет 5 месяцев
Благодарил (а): 4 раза

Re: phpBB Gallery (nickvergessen)

Сообщение mEx »

Еще вопрос, почему комментарии оставленные в галереи не учитываются в кол-во сообщений, которые сотавил пользователь?
Shredder
Former team member
Сообщения: 2266
Стаж: 17 лет 9 месяцев
Благодарил (а): 283 раза
Поблагодарили: 584 раза

Re: phpBB Gallery (nickvergessen)

Сообщение Shredder »

А они и не должны учитываться, т.к. это комментарии к изображениям, а не форумные сообщения.
Аватара пользователя
TSV
phpBB 1.4.2
Сообщения: 56
Стаж: 18 лет 3 месяца
Откуда: Чита
Поблагодарили: 2 раза

Re: phpBB Gallery (nickvergessen)

Сообщение TSV »

mEx
Ещё во вкладке "Разные" есть параметр "Может видеть альбом". Тоже должно стоять "Да". Проверьте, мало ли.
Опыт позволяет нам ошибаться гораздо увереннее.
mEx
phpBB 1.4.4
Сообщения: 197
Стаж: 19 лет 5 месяцев
Благодарил (а): 4 раза

Re: phpBB Gallery (nickvergessen)

Сообщение mEx »

TSV
проверил, у всех групп, в том числе и у ботов стоит "да"
Аватара пользователя
TSV
phpBB 1.4.2
Сообщения: 56
Стаж: 18 лет 3 месяца
Откуда: Чита
Поблагодарили: 2 раза

Re: phpBB Gallery (nickvergessen)

Сообщение TSV »

Ну как вариант, т.к. фотографии скорее всего выводятся через javascript, т.е. через плагин highslide и тому подобный, можно попробовать отключить его для ботов.
Я у себя сделал так:

Код: Выделить всё

<!-- INCLUDE gallery/plugins_header.html -->
заменил на

Код: Выделить всё

<!-- IF not S_IS_BOT -->
<!-- INCLUDE gallery/plugins_header.html -->
<!-- ENDIF -->
Теперь для ботов фотографии выводятся не через javascript. Попробуй, может в этом причина. :roll:
Опыт позволяет нам ошибаться гораздо увереннее.
Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3365
Стаж: 17 лет 6 месяцев
Благодарил (а): 37 раз
Поблагодарили: 1454 раза

Re: phpBB Gallery (nickvergessen)

Сообщение Nekstati »

TSV, для Lytebox и Shadowbox это хороший способ, но если используется Highslide, бот будет видеть ошибку Яваскрипта: <a onclick="return hs.expand(this)"> — функция отсутствует. Не знаю, критично это или нет, но, по-моему, лучше это сделать так:

gallery/includes/functions.php

Код: Выделить всё

			$tpl = generate_image_link_plugins($mode);
Заменить на

Код: Выделить всё

			$tpl = !empty($user->data['is_bot']) ? '<a href="{IMAGE_URL}" title="{IMAGE_NAME}">{CONTENT}</a>' : generate_image_link_plugins($mode);
Аватара пользователя
TSV
phpBB 1.4.2
Сообщения: 56
Стаж: 18 лет 3 месяца
Откуда: Чита
Поблагодарили: 2 раза

Re: phpBB Gallery (nickvergessen)

Сообщение TSV »

Вот и решение для Highslide подоспело. :)
Хотя у меня ещё и вложенные в сообщения картинки открываются через Highslide, потому закрыл скрипт для всего форума. Не знаю хорошо или плохо от этого поисковикам, но в индексе Яши почти 4000 картинок, при условии, что в галерее их 3800. Вывод: Яша не плюётся. :)
Опыт позволяет нам ошибаться гораздо увереннее.
mEx
phpBB 1.4.4
Сообщения: 197
Стаж: 19 лет 5 месяцев
Благодарил (а): 4 раза

Re: phpBB Gallery (nickvergessen)

Сообщение mEx »

Сделал так, как написала Некстати. Прошло уже много времени, а картинки из галереи все равно не попадают в гугл и яндекс картинки. Может быть где-то надо права на папки поменять?
chikin
phpBB 1.0.0
Сообщения: 5
Стаж: 16 лет 1 месяц
Благодарил (а): 4 раза

Re: phpBB Gallery не могу оценивать(

Сообщение chikin »

добрый день, ставлю форум на локалхост, мод добавил, во всём разобрался, только оценка фоток не срабатывает, в чем может быть причина?, ставил уже 3-ы, версия 1.0.5, форума 3.0.7-PL1, в админке функция оценки включена, нажимаешь на ссылку на фотке оценить, перекидывает на фотку, но оценки там нет, написано не оценнео, помогите разобраться пожалуйста
mEx
phpBB 1.4.4
Сообщения: 197
Стаж: 19 лет 5 месяцев
Благодарил (а): 4 раза

Re: phpBB Gallery (nickvergessen)

Сообщение mEx »

mEx писал(а):Сделал так, как написала Некстати. Прошло уже много времени, а картинки из галереи все равно не попадают в гугл и яндекс картинки. Может быть где-то надо права на папки поменять?
У меня стоит на папке gallery права - 755, на внутренней папки images в папке gallery - 755, на внутренних папках в images - 777. Может мне попробовать поставить права 777 на папку images?
chikin
phpBB 1.0.0
Сообщения: 5
Стаж: 16 лет 1 месяц
Благодарил (а): 4 раза

Re: phpBB Gallery (nickvergessen)

Сообщение chikin »

fanatic писал(а):При просмотре картинок в галереи с помощью любого из скриптов Lytebox, Highslide и Shadowbox возникает проблема следующего хар-ра:
одну и ту же картинку, при перелистывании, любой из скриптов показывает два раза. Попробовал разобраться сам, но не получается.
Помогите с решением данной проблемы.
получилось разрешить? такая же штука, по два раза загружает, и только 2 кнопки вперед и назад(
Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3365
Стаж: 17 лет 6 месяцев
Благодарил (а): 37 раз
Поблагодарили: 1454 раза

Re: phpBB Gallery (nickvergessen)

Сообщение Nekstati »

Lytebox, Highslide и Shadowbox тут ни при чём. То же самое наблюдается при любом способе просмотра. chikin, напишите автору багрепорт.

По-моему, дело тут в том, что у HTTP-заголовков картинок отсутствует параметр expires, отчего браузер считает картинки перманентно устаревшими. Господа, разбирающиеся в HTTP-заголовках, подскажите, пожалуйста, что тут не так?

Код: Выделить всё

Server			nginx/0.6.35
Date			Sun, 29 Aug 2010 12:30:12 GMT
Content-Type		image/jpeg
Transfer-Encoding	chunked
Connection		keep-alive
X-Powered-By		PHP/5.2.12
Pragma			public
Content-Disposition	inline; filename*=UTF-8''Test%202
chikin
phpBB 1.0.0
Сообщения: 5
Стаж: 16 лет 1 месяц
Благодарил (а): 4 раза

Re: phpBB Gallery (nickvergessen)

Сообщение chikin »

и еще вопрос кто-нибудь выводил последние фото на главную страницу сайта, не форума, а именно самого сайта?

к примеру :
http://твой сайт.ру/forum -сдесь форум
http://твой сайт.ру - сдесь сайт - вот сюда картинки
Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3365
Стаж: 17 лет 6 месяцев
Благодарил (а): 37 раз
Поблагодарили: 1454 раза

Re: phpBB Gallery (nickvergessen)

Сообщение Nekstati »

Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3365
Стаж: 17 лет 6 месяцев
Благодарил (а): 37 раз
Поблагодарили: 1454 раза

Re: phpBB Gallery (nickvergessen)

Сообщение Nekstati »

Решение проблемы с кэшированием изображений в галерее. Картинки загружаются повторно при перелистывании страниц, при отправке комментариев и т. д., то есть попросту не кэшируются браузерами. :? Причина, как выяснилось, в том, что у картинок отсутствуют HTTP-заголовки Expires и Last-Modified и сервер не проверяет запрос браузера If-Modified-Since. А решение такое: дорабатываем скрипт, отдающий картинки браузеру, так, чтобы логика его работы соответствовала логике работы phpBB с вложениями. Появляются заголовки, появляется кэширование.

Найти в /gallery/includes/functions_image.php (строка 282):

Код: Выделить всё

		if ($this->image)
Заменить на:

Код: Выделить всё

		/**
		* Check if the browser has the file already and set the appropriate headers-
		* @returns false if a resend is in order.
		*/
		function set_modified_headers($stamp, $browser)
		{
			// let's see if we have to send the file at all
			$last_load 	=  isset($_SERVER['HTTP_IF_MODIFIED_SINCE']) ? strtotime(trim($_SERVER['HTTP_IF_MODIFIED_SINCE'])) : false;
			if (strpos(strtolower($browser), 'msie 6.0') === false)
			{
				if ($last_load !== false && $last_load >= $stamp)
				{
					if (substr(strtolower(@php_sapi_name()),0,3) === 'cgi')
					{
						// in theory, we shouldn't need that due to php doing it. Reality offers a differing opinion, though
						header('Status: 304 Not Modified', true, 304);
					}
					else
					{
						header('HTTP/1.0 304 Not Modified', true, 304);
					}
					// seems that we need those too ... browsers
					header('Pragma: public');
					header('Expires: ' . gmdate('D, d M Y H:i:s \G\M\T', time() + 31536000));
					return true;
				}
				else
				{
					header('Last-Modified: ' . gmdate('D, d M Y H:i:s', $stamp) . ' GMT');
				}
			}
			return false;
		}

		if (set_modified_headers(@filemtime($this->image_source), $user->browser))
		{
			return;
		}
		elseif ($this->image)
Вуаля, экономим трафик и нервы.

P. S. Дополнение. Если мы открываем полноразмерную картинку по прямой ссылке со страницы gallery/image_page.php, а потом открываем её же по ссылке с другой страницы (например, gallery/index.php), то картинка загружается повторно. Происходит это из-за того, что прямая ссылка, размещённая на странице gallery/image_page.php, содержит параметр view=no_count, а в остальных случаях не содержит. Браузер принимает картинку с этим параметром и картинку без параметра за две разные картинки и кэширует каждую из них отдельно. (Под прямой ссылкой здесь имеется в виду ссылка вида gallery/image.php?album_id=1&image_id=1, именно она используется скриптами Highslide/Lytebox/Shadowbox.) Параметр этот необязательный, он влияет только на подсчёт просмотров. Убираем его и получаем нормальное кэширование без каких-либо оговорок:

Код: Выделить всё

// Открыть

	gallery/image_page.php

// Найти

	'UC_IMAGE'			=> generate_image_link('medium', $gallery_config['link_imagepage'], $image_id, $image_data['image_name'], $album_id, ((substr($image_data['image_filename'], 0 -3) == 'gif') ? true : false), false),

// Заменить на

	'UC_IMAGE'			=> generate_image_link('medium', $gallery_config['link_imagepage'], $image_id, $image_data['image_name'], $album_id, ((substr($image_data['image_filename'], 0 -3) == 'gif') ? true : false)),

Вернуться в «Поддержка модов для phpBB 3.0.x»