Похожие материалы с картинками для uCoz

12577 просмотров Alan_Writer 25.08.2014

Скачать 📥

Похожие материалы с картинками для uCoz. Очередная модификация, отчасти реализованная не мной, но мной доработанная и по-человечески изложенная вам. Видел я подобное еще давно на разных сайтах других CMS, а когда начал ковыряться в uCoz - то вскоре тоже подумал об этом, но на тот момент подобное никем реализовано не было. Хотя вещь реально полезная, т.к когда видишь просто ссылку на похожий материал и название - сложно понять что он из себя представляет и то ли это что тебе надо, а когда видишь картинку - сразу все ясно. Вооооот короче, поэтому это не просто прикольная но ненужная фигня, а реально полезная в практическом смысле модификация.

Скрипт на самом деле прост - до нельзя, но после траблов связанных с прошлым скриптом живого поиска (который я хоть и разжевал до самых мелочей - но все равно мало кто смог что-то понять) - я теперь даже не знаю как описывать, чтоб кто-то что-то понял. Думаю это вообще невозможно, поэтому объясню как могу.

Кратко объясню схему работы скрипта. В блоке похожих материалов (который вставляется кодом <?$RELATED_ENTRIES$(10)?>, если кто не в курсе) скрипт с помощью .get-запроса переходит по каждой конкретной ссылке и на странице материала в определенном блоке (атрибут которого вы указываете в скрипте) - ищет картинку. Если находит - то перед ссылкой вставляет эту картинку, если не находит - вставляет картинку nopic.gif. Все проще некуда!

Установка скрипта (читаем внимательно!)

1. Качаете архив ImagEntry, затем файл imagentry.js - кидаете в корневую папку js в файловом менеджере, а файл nopic.gif - в папку img. Если этих папок в корне файлового менеджера вашего сайта нет - то создайте их.

2. Напомню еще раз, что вам естественно на странице материала нужно вставить блок похожих материалов с помощью кода:
Код
<?$RELATED_ENTRIES$(10)?>

**10 - количество материалов; схожесть материалов определяется тегами. При использовании этого скрипта, ставить больше 10 не советую, т.к тогда будет баниться ваш IP на 2 часа из-за большого кол-ва .get-запросов. Без скрипта - ставьте сколько угодно.

3. Ну и теперь собственно прописываем сам скрипт, лично у меня он стоит в самом конце нижней части сайта, короче он должен быть поближе к </body>:
Код
<script src="/js/imagentry.js"></script>

4. Теперь собственно вернемся на страницу материала. Как я уже говорил скрипт переходит на нее и ищет картинку в блоке с тем атрибутом - который в этом скрипте указан. Атрибут в скрипте я указал такой #find-img. То есть картинку на странице материала вам нужно обнести любым блоком (a, b, p, span, div, li, или каким еще угодно) с атрибутом id="find-img", либо если эта картинка уже находиться внутри какого-то блока, то просто добавьте к нему этот атрибут.

Покажу пример, как должно быть:
Код
<div id="find-img" title="Блок с картинкой">
<?if($IMG_URL1$)?>
<img src="<?if($IMG_SMALL_URL1$)?>$IMG_SMALL_URL1$<?else?>$IMG_URL1$<?endif?>" title="$TITLE$" alt="$TITLE$"/>
<?endif?>
</div>

** В этом примере картинка выводиться кодом $IMG_URL1$, если у вас она выводиться другим кодом - просто замените на свой.

**Чтоб картинки грузились быстрее, лучше источник указывать на уменьшенную версию изображения, что я сделал с помощью условного оператора: <?if($IMG_SMALL_URL1$)?> $IMG_SMALL_URL1$<?else?>$IMG_URL1$<?endif?>.

**Также, саму картинку надо обнести условным оператором <?if($IMG_URL1$)?>, чтоб картинка выводилась только когда она есть, а если ее нет, то скрипт не найдя ее - вставит вместо нее nopic.gif.

Еще немного о скрипте

Оформлять скрипт я никак не стал, это уж вы надеюсь сделаете сами. Для примера - можете посмотреть как это сделано у меня, т.к у меня он уже используется.

Кроме того что я скрипт завел и настроил, я его немного еще и модифицировал. Так например я себе эти картинки оформил так что они небольшого размера (иначе бы блок похожих материалов занимал слишком много места), но за счет доработке скрипта, при нажатии на картинку - она будет увеличиваться.

Ну и как прошлый раз добавлю картинку, на которой разъясню, что и где в скрипте за что отвечает.

Ну наконец-то все, надеюсь все понятно. Ставьте и обязательно пишите че получилось, оценивайте, делитесь и так далее. Только распространять материал без указания обратной ссылки - нельзя, иначе худо будет!

Теги: скрипт, материалы, RELATED_ENTRIES, ucoz, с картинками, похожие
32 Комментария
avatar
21
Пишет что скрипт вредоносный. Не сохранить.
avatar
22
Кто где пишет?
avatar
23
Проблема была в шапке сайта. Вредоносная ссылка. А не сохраняло в конструкторе из-за этой ссылки.
avatar
24
Помогите ПЖ. Изображения нет, только нупы. wacko
avatar
26
Потому что скрипт не знает где искать изображение. Читать описание внимательно надо. Замени в скрипте #find-img на .eText
avatar
27
biggrin Они большие как ухи слона.
avatar
28
Помогите уменьшить. ПОЖАЛУЙСТА.
avatar
29
С помощью стилей можно все настроить.
avatar
30
Билин. Я как балерина без ног. Ничего не получается. Если это возможно, поподробнее.
avatar
31
Ну раз мне все придется за тебя делать, то за 50р я готов.
avatar
19
Как можно сделать, чтоб показывал скриншот, а не изображение?
avatar
20
Ну все по тому же принципу, только с кодом SCREEN_URL. Не важно какая там у тебя выводиться картинка и каким кодом, главное чтоб она находилась в блоке с указанном в скрипте атрибутом - где он ее будет находить.
avatar
11
Вполне можно и так.
avatar
17
Не подскажете, как сделать, чтобы в названии еще брался $VERSION$ из каталога файлов, т.е чтобы было $ENTRY_TITLE$ ($VERSION$)

И как сделать, чтобы вместо увеличения картинки была непосредственно ссылка на материал (при клике на картинку)
avatar
18
Он только с картинкой работает, заголовок он вообще не обрабатывает, т.к заголовок там уже есть. А чтоб что-то дополнительное искал в заголовке и вставлял, и чтоб ссылку вставлял - это нужно его прилично переделать, а в скриптах я не силен.
avatar
10
Спасибо большое за скрипт, но есть одно но крч у меня на сайте используется $IMG_URL1$ для вывода картинки и когда твой скрипт обращается к картинке к другому материалу то он выводит в начале ту картинку которая в этом материале а потом уже ту которая из другого материала. Как убрать картинку которая из материала где она не нужна?
вот сайт для наглядности:http://mishkino.ucoz.com/board/boevik/drugoj_mir_2_ehvoljucija_smotret_onlajn/3-1-0-79
avatar
12
Я нифига не понял.
avatar
13
Вы поняли мою проблему? или вам картинку сбросить?
avatar
14
Вы просто перейдите на мой сайт и увидите. Что не так. Вот сайт где я поставил ваш скрипт : http://mishkino.ucoz.com/board/boevik/tor/3-1-0-76 и мне надо чтобы вторая картинка после вашего скрипта убралась ну без нее чтобы было. Помогите пожалуйста)
avatar
15
Ну так и убери ее, сам же поставил. Выше уже есть картинка, просто к ее родительскому блоку добавь id="find-img".
avatar
16
Все до меня дошло, а вас бы я опросил картинки бы прикладывать. Просто иногда не понятно, то что вы понимаете. А так спасибо большое. Хороший сайт почти всегда на нем скрипты беру) Спасибо еще раз)
avatar
8
Здравствуйте!

Как можно вывести картинку, если она используется только в шаблоне вида материалов через $AUTHOR_SITE$
И + вопрос - как уменьшить картинку? просто в css добавить к стилю entrimg нужный мне размер?
avatar
9
Скрипт ищет на странице материала, у вида материала нет своего отдельного адреса, чтоб можно было по нему искать. А что что-то мешает вывести эту картинку на страницу материала?
avatar
3
А можно как-нибудь сделать в две колонки?.. cry
avatar
4
Можно конечно
avatar
5
Наставьте, пожалуйста, на путь истинный, как это сделать?
avatar
6
И как мне это сделать, полностью все описывать или учить вас css? К тому же я не знаю как вы оформить хотите. Если в общем и самом основном, то в стилях, к блоку "uRelatedEntry" нужно добавить параметры - width:50%; и display:inline-block; но если вы не разбираетесь в css, то вряд ли вам это что то даст.
avatar
7
Премного благодарна, именно этого легкого пендаля в нужном направлении мне и надо было!
avatar
32
Получилось у вас сделать в две колонки?
avatar
1
Скажите, пожалуйста, куда именно прописывать сам скрипт imagentry.js На странице материала и комментариев к нему? Или может где-то в другом месте?
avatar
2
Там же все ясно написано, перед закрывающим тегом body, и ясное дело что на странице материала - раз больше он нигде не используется.