Предпросмотр тем на форуме для uCoz
|
|
workman | Пятница, 03 Июля 2015, 15:50 | Сообщение 1 |
| Скрипт выполняет функцию для просмотра форума по темам, и все делается так, что вы не заходите на этот модуль. Где все можно узнать с главной или где будет установлен скрипт. Предпочитается устанавливать на сайты, где реально активный форум, что создаются темы постоянно.
Данный скрипт ставим в общий вид страниц форума перед /body
Код <script type="text/javascript"> $('.threadNametd').each(function() { var a_link = $(this).find("a:first").attr('href'); var nt = $(this).text(); a_img = $("<img/>").attr({src: 'https://diz-cs.ru/newicoforum/prev.png',style: 'float:right',border:'0',title: 'Предпросмотр темы'}); $(this).prepend(a_img); $(a_img).click(function() { $('.themei').load(a_link+' .themeo:first',function() { new _uWnd('theq','Предпросмотр темы "'+nt+'"',400,100,{align:0,shadow:0,close:1,autosize:1,maxh:500,minh:100,resize:1,icon: 'https://diz-cs.ru/newicoforum/eye.png'}, $(".themei").html() ) }); }); }); </script> <div style="display:none;"><div class="themei">Загрузка...</div></div> А этот код ставим в виде материалов форума в самый низ
Код <div style="display:none;"><div class="themeo"><fieldset><legend>Сообщение</legend>$MESSAGE$</fieldset><hr><fieldset>Автор - <a href="$PROFILE_URL$"><b>$USERNAME$</b></a><br>Дата добавления - <b>$DATE$</b> в <b>$TIME$</b></fieldset></div></div>
| [ RU ] |
| |
kredit-oformi | Пятница, 03 Июля 2015, 15:57 | Сообщение 2 |
| workman, не совсем поня что это?
| [ RU ] |
| |
workman | Пятница, 03 Июля 2015, 15:59 | Сообщение 3 |
| Цитата kredit-oformi ( ) не совсем поня что это? Предпросмотр темы на форуме без захода в нее. Следуй инструкции и смотри картинку куда нужно нажать именно
| [ RU ] |
| |
gadskiy_papa | Среда, 12 Января 2022, 19:25 | Сообщение 4 |
| Цитата workman ( ) www.brigada31.ru/iconka/folder.png Не возможно скачать... Гугл блокирует... Как скачать?...
| [ RU ] |
| |
Kosten | Среда, 12 Января 2022, 20:11 | Сообщение 5 |
| Цитата gadskiy_papa ( ) Не возможно скачать. Там не чего не нужно скачивать, так как это переход ранее был на сайт, сейчас он не существует.
На счет изображение, это как раз то, что вы устанавливаете.
| [ RU ] |
| |
gadskiy_papa | Среда, 12 Января 2022, 21:38 | Сообщение 6 |
| Цитата Kosten ( ) изображение Вот его-то и не хватает...
Нашёл другой скрипт по этой-же теме, при скачивании картинки пишет - Ошибка. Заблокировано. Хотя картинка есть, гифка = s28.ucoz.net/img/ma/m/i2.gif
| [ RU ] |
| |
Kosten | Среда, 12 Января 2022, 22:35 | Сообщение 7 |
| gadskiy_papa, рекомендую зайти на сайт иконками изображение, там вы найдете разные иконки или кнопки. Если забивать в поиск, то для начало перевидите на английский, на переводчике гугл нормально, для того, чтоб корректно искал.
| [ RU ] |
| |
Kosten | Среда, 12 Января 2022, 22:38 | Сообщение 8 |
| Цитата gadskiy_papa ( ) Хотя картинка есть, гифка = s28.ucoz.net/img/ma/m/i2.gif Эта картинка системная, а там от домена идет, где домен не продлил и все слетело.
| [ RU ] |
| |
-SAM- | Суббота, 15 Января 2022, 06:53 | Сообщение 9 |
| gadskiy_papa, как выше уже подметил Kosten, вам ничего не мешает там прописать свои иконки какие-то. А так, то я в личку админу скинул скрипт с правильными иконками (чтобы в шапке темы поправить), с которыми он изначально был на сайте-источнике - uCodes. При чём у меня оно залито еще с 2010 года. Ну, а потом уже свои лепить начали, особенно при перепечатке с сайта на сайт (когда пытались свой домен продвигать, как в этом случае, а оно потом отваливалось - приходилось картинку ставить какую-то иную).
Помог? Скажи спасибо в виде "+" - вам мелочь, а мне приятно. Бесплатное оказание помощи в ответах на "Вопросы про uCoz".
Сообщение отредактировал -SAM- - Суббота, 15 Января 2022, 07:31 | [ UA ] |
| |
gadskiy_papa | Суббота, 15 Января 2022, 23:23 | Сообщение 10 |
| -SAM-, я уже нашёл там, где указал Kosten, всё работает...
| [ RU ] |
| |
Kosten | Воскресенье, 16 Января 2022, 00:57 | Сообщение 11 |
| gadskiy_papa, как понимаю все работает корректно?
| [ RU ] |
| |
gadskiy_papa | Воскресенье, 16 Января 2022, 13:35 | Сообщение 12 |
| Цитата Kosten ( ) работает корректно Да, всё работает...
| [ RU ] |
| |
Kosten | Воскресенье, 16 Января 2022, 18:31 | Сообщение 13 |
| gadskiy_papa, круто, просто мне встречались форумы, но не на юкоз, где аналогичная функция есть.
Главное, чтоб как можно быстрее открывалось окно, но это больше зависит от интернет соединение, точнее скорости.
| [ RU ] |
| |
-SAM- | Среда, 19 Января 2022, 09:41 | Сообщение 14 |
| Скрипт еще желательно обернуть в условный оператор:Код <?if($PAGE_ID$='forum' || $PAGE_ID$='recentthreads' || $PAGE_ID$='uthreads' || $PAGE_ID$='search')?><script type="text/javascript"> [...] </script> <div style="display:none;"><div class="themei">Загрузка...</div></div><?endif?> Это чтобы не выводился довеском в исходниках(в шаблоне) тех страниц форума, где нет предросмотра.
Если посмотреть внимательно, то там в скрипте идёт .themeo:first - это привязка на первое сообщение в теме, соответственно если нужно предпросмотр последнего, то меняем на .themeo:last (ограничивается первой страницей темы, если что).
А тот код, что ставиться в сам вид материалов форума, то нужно обернуть в условие:Код <?if($PAGE_ID$='threadpage' and substr($NUMBER$,strpos($NUMBER$,">")+1,strpos($NUMBER$,"a")-2)=1)?><!--noindex--><div style="display:none;"> [...] </div><!--/noindex--><?endif?> Используется подрезка substr (в сети еще есть вариант substr($NUMBER$, strrpos($NUMBER$,"return false;")+15,len($NUMBER$)-strrpos($NUMBER$,"return false;")-19)=1 - не проверял, это исходя из того, что в отдаваемый системой код на номер сообщения на странице может меняться со временем), поскольку условие по $NUM_ON_PAGE$=1 - не подходит (оно будет действовать и для первого сообщения на следующей странице, что нам не нужно). Ну, а когда делать предпросмотр последнего сообщения, то обернуть в условие по $LAST_ON_PAGE$ (вместо того substr или $NUM_ON_PAGE$=1). Но нужно понимать, что всё равно в этом случае будет довесок, ведь эта переменная для последнего сообщения на каждой странице темы (а указать номер сообщения нельзя здесь, ибо не знаешь сколько сообщений оставлено было; само количество сообщений на странице задается в настройках модуля). В общем, без этого этот участок кода будет дублироваться в каждом сообщении форума (при чём там дублем будет и сам текст сообщения, ведь идёт внутри еще раз переменная $MESSAGE$). В итоге для предпросмотра последнего сообщения делаем условный оператор такой:Код <?if($PAGE_ID$='threadpage' and substr($NUMBER$,strpos($NUMBER$,">")+1,strpos($NUMBER$,"a")-2)<=n and $LAST_ON_PAGE$)?><!--noindex--><div style="display:none;"> [...] </div><!--/noindex--><?endif?> Где n как раз и будет количество сообщений на странице темы, что индивидуально задано вами в настройках модуля форума.
P.S.: как видите, то скрипт не оптимизирован (реализация не из лучших). Есть еще платная версия на uScript, что не делает нагрузки запросами (реализовано на php). Есть на него похожий по внешнему поведению скрипт(без php), что используется на Webo4ka (наверное, админ в публичный доступ не выкладывал - не в курсе... в общем, я рипать не стану, а вам на заметку).
Помог? Скажи спасибо в виде "+" - вам мелочь, а мне приятно. Бесплатное оказание помощи в ответах на "Вопросы про uCoz".
Сообщение отредактировал -SAM- - Суббота, 22 Января 2022, 01:07 | [ UA ] |
| |