Style-selector phpbb 3
Автор мода - Alice
1. Выпишите номера стилей, активированных на вашем форуме.
2. Отредактируйте следующий код:
Если Ваш форум не имеет своего домена:
Если Ваш форум имеет свой домен:
Номера стилей, названия стилей, адрес форума замените на свои.
Если надо убрать пункт в селекторе:
удалите в теге селект лишний <option value="style=номер стиля"> Название стиля </option> ,
а также в теге скрипт удалите лишние условия:
else if (ttt.indexOf('style=номер стиля') != -1) ttt=ttt.replace('style=номер стиля', nst);
Чтобы добавить пункт в селекторе:
1. Добавьте перед </select> очередной <option value="style=номер стиля"> Название стиля </option>
2. Допишите перед else if (ttt=='') ttt='?'+nst; очередное условие else if (ttt.indexOf('style=номер стиля') != -1) ttt=ttt.replace('style=номер стиля', nst);
ВАЖНО! Если Вы включаете в селектор стили, содержащие как однозначные, так и двух-, трех- значные номера, то номера стилей в коде скрипта следует расположить в порядке убывания. Как номера стилей будут располагаться в теге селект - значения не имеет.
3. Получившийся код включите в шаблон overall_heder каждого стиля, который будет в селекторе.
Втыкать код надо, естес-но, в пространство между тегами <body></body>, а там уж насколько фантазии и умения хватит.
Пример кода для форума, не имеющего своего домена.
На демо-форуме с адресом http://styleselector.fatbb.ru установлены и активированы стили:
prosilver номер 1
subsilver2 номер 5
eTech номер 11
RedSilver3 номер 12.
Код, установленный в овералл_хедер каждого стиля:
Пример кода для форума, имеющего свой домен:
Итак, как сделать такой селектор.Alice писал(а):Это моя маленькая модификация для форумов в системе 4админс (потянет также для форумов в системе гетбб), на которых используется несколько стилей.
На порталах наших форумов предусмотрены селектор демонстрации установленных и активированных стилей. Однако, код этого селектора работает только на портале, потому что используемые в нем переменные не передаются в другие шаблоны.
Моя модификация заключается в том, что позволяет сделать такой селектор в шапке форума или в футере форума. Установив такую игрушку, Вы сможете менять стиль, находясь на любой страничке Вашего форума при этом после выбора стиля Вы останетесь на той же странице.
В принципе, код уже выкладывался в другой теме. Но там всю тему надо читать, чтобы все правильно сделать.
1. Выпишите номера стилей, активированных на вашем форуме.
2. Отредактируйте следующий код:
Если Ваш форум не имеет своего домена:
Код: Выделить всё
<div> <script type="text/javascript">// <![CDATA[
function jumpStyle(selObj)
{
nst=selObj.options[selObj.selectedIndex].value
ttt=window.location.search;
if (ttt.indexOf('style=номер стиля') != -1) ttt=ttt.replace('style=номер стиля', nst);
else if (ttt.indexOf('style=номер стиля') != -1) ttt=ttt.replace('style=номер стиля', nst);
else if (ttt.indexOf('style=номер стиля') != -1) ttt=ttt.replace('style=номер стиля', nst);
else if (ttt.indexOf('style=номер стиля') != -1) ttt=ttt.replace('style=номер стиля', nst);
else if (ttt.indexOf('style=номер стиля') != -1) ttt=ttt.replace('style=номер стиля', nst);
else if (ttt=='') ttt='?'+nst;
else ttt=ttt+'&'+nst
if (window.location.hostname=='адрес вашего форума в системе 4админс без http://www') window.location.href='http://адрес вашего форума в системе 4админс без http://www'+window.location.pathname+ttt+window.location.hash
if (window.location.hostname=='адрес вашего форума в системе 4админс c www, но без http://')
window.location.href='http://www.адрес вашего форума в системе 4админс без http://www'+window.location.pathname+ttt+window.location.hash
}
// ]]>
</script>
<select onchange="jumpStyle(this)">
<option>Выберите стиль</option>
<option value="style=номер стиля"> Название стиля </option>
<option value="style=номер стиля"> Название стиля </option>
<option value="style=номер стиля"> Название стиля </option>
<option value="style=номер стиля"> Название стиля </option>
</select>
</div>
Если Ваш форум имеет свой домен:
Код: Выделить всё
<div> <script type="text/javascript">// <![CDATA[
function jumpStyle(selObj)
{
nst=selObj.options[selObj.selectedIndex].value
ttt=window.location.search;
if (ttt.indexOf('style=номер стиля') != -1) ttt=ttt.replace('style=номер стиля', nst);
else if (ttt.indexOf('style=номер стиля') != -1) ttt=ttt.replace('style=номер стиля', nst);
else if (ttt.indexOf('style=номер стиля') != -1) ttt=ttt.replace('style=номер стиля', nst);
else if (ttt.indexOf('style=номер стиля') != -1) ttt=ttt.replace('style=номер стиля', nst);
else if (ttt.indexOf('style=номер стиля') != -1) ttt=ttt.replace('style=номер стиля', nst);
else if (ttt=='') ttt='?'+nst;
else ttt=ttt+'&'+nst
if (window.location.hostname=='адрес вашего форума в системе 4админс без http://www'||window.location.hostname=='адрес вашего домена без http://') window.location.href='адрес вашего домена с http://'+window.location.pathname+ttt+window.location.hash
if (window.location.hostname=='адрес вашего форума в системе 4админс с www, но без http://'||window.location.hostname=='адрес вашего домена второго уровня без http://')
window.location.href='адрес вашего домена второго уровня с http://'+window.location.pathname+ttt+window.location.hash
}
// ]]>
</script>
<select onchange="jumpStyle(this)">
<option>Выберите стиль</option>
<option value="style=номер стиля"> Название стиля </option>
<option value="style=номер стиля"> Название стиля </option>
<option value="style=номер стиля"> Название стиля </option>
<option value="style=номер стиля"> Название стиля </option>
</select>
</div>
Если надо убрать пункт в селекторе:
удалите в теге селект лишний <option value="style=номер стиля"> Название стиля </option> ,
а также в теге скрипт удалите лишние условия:
else if (ttt.indexOf('style=номер стиля') != -1) ttt=ttt.replace('style=номер стиля', nst);
Чтобы добавить пункт в селекторе:
1. Добавьте перед </select> очередной <option value="style=номер стиля"> Название стиля </option>
2. Допишите перед else if (ttt=='') ttt='?'+nst; очередное условие else if (ttt.indexOf('style=номер стиля') != -1) ttt=ttt.replace('style=номер стиля', nst);
ВАЖНО! Если Вы включаете в селектор стили, содержащие как однозначные, так и двух-, трех- значные номера, то номера стилей в коде скрипта следует расположить в порядке убывания. Как номера стилей будут располагаться в теге селект - значения не имеет.
3. Получившийся код включите в шаблон overall_heder каждого стиля, который будет в селекторе.
Втыкать код надо, естес-но, в пространство между тегами <body></body>, а там уж насколько фантазии и умения хватит.
Пример кода для форума, не имеющего своего домена.
На демо-форуме с адресом http://styleselector.fatbb.ru установлены и активированы стили:
prosilver номер 1
subsilver2 номер 5
eTech номер 11
RedSilver3 номер 12.
Код, установленный в овералл_хедер каждого стиля:
Код: Выделить всё
<div><script type="text/javascript">// <![CDATA[
function jumpStyle(selObj)
{
nst=selObj.options[selObj.selectedIndex].value
ttt=window.location.search;
if (ttt.indexOf('style=12') != -1) ttt=ttt.replace('style=12', nst);
else if (ttt.indexOf('style=11') != -1) ttt=ttt.replace('style=11', nst);
else if (ttt.indexOf('style=5') != -1) ttt=ttt.replace('style=5', nst);
else if (ttt.indexOf('style=1') != -1) ttt=ttt.replace('style=1', nst);
else if (ttt=='') ttt='?'+nst;
else ttt=ttt+'&'+nst
if (window.location.hostname=='styleselector.fatbb.ru') window.location.href='http://styleselector.fatbb.ru'+window.location.pathname+ttt+window.location.hash
if (window.location.hostname=='www.styleselector.fatbb.ru')
window.location.href='http://www.styleselector.fatbb.ru'+window.location.pathname+ttt+window.location.hash
}
// ]]>
</script>
<select onchange="jumpStyle(this)">
<option>Выберите стиль</option>
<option value="style=1"> prosilver </option>
<option value="style=5"> subsilver2 </option>
<option value="style=11"> eTech </option>
<option value="style=12"> RedSilver3 </option>
</select>
</div>
Пример кода для форума, имеющего свой домен:
Код: Выделить всё
<div class="style_change"> <script type="text/javascript">// <![CDATA[
function jumpStyle(selObj)
{
nst=selObj.options[selObj.selectedIndex].value
ttt=window.location.search;
if (ttt.indexOf('style=42') != -1) ttt=ttt.replace('style=42', nst);
else if (ttt.indexOf('style=11') != -1) ttt=ttt.replace('style=11', nst);
else if (ttt.indexOf('style=33') != -1) ttt=ttt.replace('style=33', nst);
else if (ttt.indexOf('style=28') != -1) ttt=ttt.replace('style=28', nst);
else if (ttt=='') ttt='?'+nst;
else ttt=ttt+'&'+nst
if (window.location.hostname=='foxlodge.fatbb.ru'||window.location.hostname=='foxlodge.info') window.location.href='http://foxlodge.info'+window.location.pathname+ttt+window.location.hash
if (window.location.hostname=='www.foxlodge.fatbb.ru'||window.location.hostname=='www.foxlodge.info')
window.location.href='http://www.foxlodge.info'+window.location.pathname+ttt+window.location.hash
}
// ]]>
</script>
<select onchange="jumpStyle(this)">
<option>Выбор стиля</option>
<option value="style=42"> subsilver2 </option>
<option value="style=11"> Black Pearl </option>
<option value="style=33"> RedSilver3 </option>
<option value="style=28"> 610nm_azul </option>
</select>
</div>
Поделитесь ссылкой.
HTML код
BBCode
Link
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей