Спойлер игровых данных с Wowhead для сайта или форума
Представляем вашему вниманию русскую версию Wowhead Tooltips. В русской версии исправлено несколько проблем с кодировкой и оптимизирован перевод.
Скрипт позволяет выводить на вашем веб-ресурсе данные о достижениях, фракциях и их наградах, гильдиях (с Оружейной), предметах (в виде текста или иконки, только по указанию игрового номера), комплектам экипировки, НИП, профилях с profiler.wowhead.com, заданиях, заклинаниях, зонах. Данные берутся с wowhead.com.
Требования для установки: PHP 5.2+, MySQL 4+, cайт в кодировке UTF-8, расширения PHP cURL (или fopen), SimpleXML.
1. Рекомендуется сделать резервную копию файлов перед их редактированием.
2. Скачайте скрипт спойлера.
3. Загрузите директорию wowhead из скачанного архива в корень установленного у вас на сервере EQDKP.
4. Откройте в браузере страницу http://адрес.вашего.сайта/wowhead/install, выполните процедуру установки.
5. Откройте ./common.php в корне директории EQDKP.
Найдите:
Сохраните и закройте, загрузите на сервер при необходимости.
6. Откройте ./viewraid.php в корне директории EQDKP.
Найдите: (около строки 140, часть функции $tpl->assign_block_vars)
Сохраните и закройте, загрузите на сервер при необходимости.
7. Откройте ./listitems.php в корне директории EQDKP.
Найдите: (около строки 108, часть функции $tpl->assign_block_vars)
Сохраните и закройте, загрузите на сервер при необходимости.
9. Наконец, откройте ./templates/<theme>/page_header.html, где <theme> - название используемой вами темы оформления.
Внутри области тэга <head></head> (рекомендуем перед закрывающим тэгом) вставьте следующий код.
/**
* custom version of nl2br which takes custom BBCodes into account
*/
function bbcode_nl2br($text)
{
// custom BBCodes might contain carriage returns so they
// are not converted into <br /> so now revert that
$text = str_replace(array("\n", "\r"), array('<br />', "\n"), $text);
return $text;
}
Сохраните и закройте, загрузите на сервер при необходимости.
5. Откройте ./styles/<ваш стиль>/template/overall_header.html и добавьте перед закрывающим тэгом </head>.
// Do the censor thang.
censorText($message['body']);
censorText($message['subject']);
// Run BBC interpreter on the message.
$message['body'] = parse_bbc($message['body'], $message['smileysEnabled'], $message['ID_MSG']);
Сохраните и закройте, загрузите на сервер при необходимости.
Для работы спойлера в подписях (опционально)
Должно работать для версий 1.x и 2.x.
1. Откройте ./Sources/Load.php и найдите:
Код:
// Set things up to be used before hand.
$gendertxt = $profile['gender'] == 2 ? $txt[239] : ($profile['gender'] == 1 ? $txt[238] : '');
$profile['signature'] = str_replace(array("\n", "\r"), array('<br>', ''), $profile['signature']);
$profile['signature'] = parse_bbc($profile['signature'], true, 'sig' . $profile['ID_MEMBER']);
Добавьте ниже:
Код:
if (!function_exists('whp_parse'))
require_once(dirname(__FILE__) . '/../wowhead/parse.php');
$profile['signature'] = whp_parse($profile['signature']);
2. Сохраните и закройте, загрузите на сервер при необходимости.
Примечание
Если после выполнения всех действий, указанных в инструкции, возникли проблемы в работе спойлера, попробуйте выполнить следующий шаг.
1. Откройте index.php
2. Найдите:
Код:
// Load the settings...
require_once(dirname(__FILE__) . '/Settings.php');
4. Сохраните и закройте, загрузите на сервер при необходимости.
После быстрой правки сообщения спойлер может перестать работать, для исправления чего потребуется перезагрузить страницу. Учтите это прежде чем обращаться с жалобами на проблемы в работе спойлера.
1. Скачайте скрипт спойлера.
2. Загрузите директорию wowhead из скачанного архива в корень папки с установленным SMF.
3. Откройте в браузере страницу http://адрес.вашего.сайта/wowhead/install, выполните процедуру установки.
4. Откройте Sources/Display.php
Найдите:
Код:
function Display()
{
global $scripturl, $txt, $modSettings, $context, $settings;
Заменить на:
Код:
function Display()
{
global $scripturl, $txt, $modSettings, $context, $settings, $boarddir;
Найдите:
Код:
// Run BBC interpreter on the message.
$message['body'] = parse_bbc($message['body'], $message['smileys_enabled'], $message['id_msg']);
Должно работать для версий 1.x и 2.x.
1. Откройте ./Sources/Load.php и найдите:
Код:
// Set things up to be used before hand.
$gendertxt = $profile['gender'] == 2 ? $txt[239] : ($profile['gender'] == 1 ? $txt[238] : '');
$profile['signature'] = str_replace(array("\n", "\r"), array('<br />', ''), $profile['signature']);
$profile['signature'] = parse_bbc($profile['signature'], true, 'sig' . $profile['ID_MEMBER']);
Добавьте ниже:
Код:
if (!function_exists('whp_parse'))
require_once(dirname(__FILE__) . '/../wowhead/parse.php');
$profile['signature'] = whp_parse($profile['signature']);
2. Сохраните и закройте, загрузите на сервер при необходимости.
Примечание
После быстрой правки сообщения спойлер может перестать работать, для исправления чего потребуется перезагрузить страницу. Учтите это прежде чем обращаться с жалобами на проблемы в работе спойлера.
Сохраните и закройте, загрузите на сервер при необходимости.
Поддержка и обслуживание: свои вопросы можете задавать в этой теме.
Использование
Скрипт позволяет выводить следующие данные:
Подробная информация о экипировке, талантах, достижениях, отношениях с фракциями, допустимо отображать только одну анкету на странице, поэтому использовать имеет смысл во вступительных заявках в гильдию.
Выводит описание достижения и условиях его получения.
Использование:[achievement {parameters}]{название или id}[/achievement] Поддерживаемые параметры: (опционально)
Для указания языка описания (если надо вывести описание не на языке, заданном по умолчанию) используйте lang="{lang}" (en - английский, es - испанский, fr - французский, de - немецкий, ru - русский).
Использование:[quest {parameters}]{название или id}[/quest] Поддерживаемые параметры: (опционально)
Для указания языка описания (если надо вывести описание не на языке, заданном по умолчанию) используйте lang="{lang}" (en - английский, es - испанский, fr - французский, de - немецкий, ru - русский).
Примеры: [quest]В военном лазарете[/quest], [quest lang="en"]12288[/quest]
Выводит описание заклинания.
Использование:[spell {parameters}]{название или id}[/spell] Поддерживаемые параметры: (опционально)
Для указания языка описания (если надо вывести описание не на языке, заданном по умолчанию) используйте lang="{lang}" (en - английский, es - испанский, fr - французский, de - немецкий, ru - русский).
Для указания определенного уровня заклинания используйте rank={#}.
Выводит карту локации. Может возникнуть глюк с подгрузкой карты (полоска загрузки не сменяется картой) - для его исправления уберите курсор с названия зоны и затем наведите на нее вновь.
Использование:[zone {parameters}]{название или id}[/zone] Поддерживаемые параметры: (опционально)
Для указания языка описания (если надо вывести описание не на языке, заданном по умолчанию) используйте lang="{lang}" (en - английский, es - испанский, fr - французский, de - немецкий, ru - русский).
Для указания отметки на карте используйте pins="{x},{y}". Вы можете указывать несколько отметок через "|".
Использование:[itemico {parameters}]{название или id}[/itemico] Поддерживаемые параметры: (опционально)
Для указания языка описания (если надо вывести описание не на языке, заданном по умолчанию) используйте lang="{lang}" (en - английский, es - испанский, fr - французский, de - немецкий, ru - русский).
Для указания определенного размера иконки используйте size=(small|medium|large). По умолчанию стоит значение medium.
Для указания героического варианта предмета используйте параметр heroic (работает только в случае, если указано название предмета).
Использование:[itemset {parameters}]{название или id}[/itemset] Поддерживаемые параметры: (опционально)
Для указания языка описания (если надо вывести описание не на языке, заданном по умолчанию) используйте lang="{lang}" (en - английский, es - испанский, fr - французский, de - немецкий, ru - русский).
Для указания героического варианта предмета используйте параметр heroic.
Использование:[npc {parameters}]{название или id}[/npc] Поддерживаемые параметры: (опционально)
Для указания языка описания (если надо вывести описание не на языке, заданном по умолчанию) используйте lang="{lang}" (en - английский, es - испанский, fr - французский, de - немецкий, ru - русский).
Для указания определенного уровня заклинания используйте map="{location}:{x},{y}", где location - название или игровой номер локации, x - координаты по горизонтали, y - координаты по вертикали.
Выводит информацию об игровом объекте (книге, контейнере, полезном ископаемом, сундуке, травах).
Использование:[object {parameters}]{название или id}[/object] Поддерживаемые параметры: (опционально)
Для указания языка описания (если надо вывести описание не на языке, заданном по умолчанию) используйте lang="{lang}" (en - английский, es - испанский, fr - французский, de - немецкий, ru - русский).
Использование:[item {parameters}]{название или id}[/item] Поддерживаемые параметры: (опционально)
Для указания языка описания (если надо вывести описание не на языке, заданном по умолчанию) используйте lang="{lang}" (en - английский, es - испанский, fr - французский, de - немецкий, ru - русский).
Для указания наложенного зачарования используйте enchant="{enchant_id}".
Для указания вставленных камней используйте gems="{gem1id},{gem2id},{gem3id}".
Для указания маленькой иконки пропишите icon.
Для указания героического варианта предмета используйте параметр heroic (работает только в случае, если указано название предмета).
Вывод данных по созданию предмета. Работает только для предметов, которые создаются при помощи ремесленных профессий. Поиск по названию не работает, только по игровому номеру предмета
Для указания языка описания (если надо вывести описание не на языке, заданном по умолчанию) используйте lang="{lang}" (en - английский, es - испанский, fr - французский, de - немецкий, ru - русский).
Для отключения показа списка материалов используйте параметр nomats
меняем в стиле сайта/форума ссылки на файлы CSS и JS, необходимые для работы спойлера (на что именно - смотрите в обновленной инструкции по установке в первом посте этой темы)
меняем права на папку wowhead/images/zones на 755 (если слетели)
для Joomla 1.5 - удаляем старый плагин и ставим новый
для vBulletin - убираем старые правки, которые мы вносили в код
В случае возникновения вопросов и проблем обращайтесь за помощью.
автором исправлен ряд ошибок в работе модулей зачарования, предметов, комплектов, заклинаний; удалена проблемная функция __autoload; изменена функция расчета среднего уровня предметов для вывода данных с Оружейной; оптимизирована работа спойлера с целью сокращения ресурсоемкости
Как обновляться?
для обновления с версии 4.2 копируем файлы новой версии КРОМЕ файла config.php
для Joomla 1.5 - удаляем старый плагин и ставим новый
очищаем кэш таблиц (при помощи /wowhead/clear_cache.php)
Всю необходимую информацию по установке см. в инструкциях в первом посте. В случае возникновения вопросов и проблем обращайтесь за помощью.
Ответ: Спойлер игровых данных с Wowhead для сайта или форума
Сообщение от StRiANON:
В случае возникновения вопросов и проблем обращайтесь за помощью.
Добрый день!
Использую vBulletin, поставил по инструкции - настройки какой-либо, окромя как при установке я не нашёл.
Как это дело вообще работает? :)
К примеру я беру http://ru.wowhead.com/item=49623 ставлю в тэги [item] ID этого предмета в сообщении получается [Темная скорбь], но никакого тултипа не появляется при наведении...
Дальше...
Подробная информация о экипировке, талантах, достижениях, отношениях с фракциями, допустимо отображать только одну анкету на странице, поэтому использовать имеет смысл во вступительных заявках в гильдию.
Использование: [recruit {parameters}]{имя}[/recruit]
Поддерживаемые параметры: (опционально)
Для указания сервера или региона используйте loc="{region},{realm}" (us - США, eu - Европа).
Примеры: [recruit]Вася[/recruit], [recruit loc="eu,Король-лич"]Петя[/recruit]
Т.е. скажем ставлю в пример себя... пишу:
[recruit]Топкин[/recruit], [recruit loc="eu,Страж Смерти"]Топкин[/recruit] - белый экран
Ответ: Спойлер игровых данных с Wowhead для сайта или форума
немного оффтопик - а есть ли способ "вытащить" иконки спелов / предметов по их id из wowhead.com или из файлов самой игры? я не хочу разводить всю эту php-систему, а хочу получить html файл и кучку иконок.
Ответ: Спойлер игровых данных с Wowhead для сайта или форума
На четверке должно нормально работать. Для DLE нету, но при наличии небольшого знания кода этого движка и PHP не составит труда подружить его со спойлером.
Ответ: Спойлер игровых данных с Wowhead для сайта или форума
Добрый день!
Я так понимаю, что за отображение всех тултипов (как отображать) отвечает файл /wowhead/css/wowheadtooltips.css
Достаточно сложно выполнен он... разобраться в нём оочень сложно :) Прошу помощи...
Проблема с отображением тултипа скиллов, хотелось бы сменить цвет, на отображение символов.
1. Как сейчас отображаются скиллы:
2. Как хотелось бы их отображать (пример символов):
Помоему когда скиллы линкуешь в чат - они как раз в таком цвете туда вставляются.
Re: Спойлер игровых данных с Wowhead для сайта или форума
Добрый день!
Установил данный спойлер на форум phpbb с дизайном PBWOW, спойлер появляется, но цвет ссылки на сайт вовхеда идет не под цвет типа вещи.
Стиль оформления форума перебивает оформление ссылок, если кто сталкивался помогите пож-та.
Re: Спойлер игровых данных с Wowhead для сайта или форума
такая проблема, установил, все работает, но когда вставляю сообщения, то он мне название достижения, квеста, итема и т.д. пишет по русски, а в самом тултипе все по английски..как исправить? заранее спасибо.
Re: Спойлер игровых данных с Wowhead для сайта или форума
Сообщение от StRiANON:
Найдите:
Код:
if (!defined('IN_PHPBB'))
{
exit;
} Добавьте ниже:
Код:
require_once($phpbb_root_path . '/wowhead/parse.php'); Затем найдите (около строки 689):
Код:
/**
* custom version of nl2br which takes custom BBCodes into account
*/
function bbcode_nl2br($text)
{
// custom BBCodes might contain carriage returns so they
// are not converted into <br /> so now revert that
$text = str_replace(array("\n", "\r"), array('<br />', "\n"), $text);
return $text;
}и после
Код:
$text = whp_parse($text); Сохраните и закройте, загрузите на сервер при необходимости.
5. Откройте ./styles/<ваш стиль>/template/overall_header.html и добавьте перед закрывающим тэгом </head>.
Код:
<!-- Wowhead Item Links -->
<link href="/./wowhead/css/wowheadtooltips.css" rel="stylesheet" type="text/css" />
<script src="http://static.wowhead.com/widgets/power.js" type="text/javascript"></script>
<script src="/./wowhead/js/armory.js.php" type="text/javascript"></script> Сохраните и закройте, загрузите на сервер при необходимости.
вы про это? но я это делал...щас три раза переделал установку и все также. перепроверил изменные коды. тоже все норм, но так же не работает.