Добавление поля для вставки картинок

Голоса: +1
Здравствуйте, переношу все картинки со стороннего сервера на сервер сайта, в редактировании (добавлениии) материала есть поле "изображения" - "выберите файл", помогите по следующим моментам:

1. Как добавить два поля для добавки изображений: первое поле для картинки анонса, второе для картинок самого материала (на странице материала и комментариев к нему).

2. При добавлении картинки должны быть по центру

3. К картинке прописывался автоматом alt , который берется из title.

Заранее благодарен за помощь.
Адрес сайта http://malroz.ru/
Закрыто с пометкой: Вопрос решен!
| Автор: | Категория: Доп. функции
Закрыт | | Автор: Yuri_Geruk
Может кто поделится, как картинки добавляет на сайт, интересует конечно легкость и удобность в добавлении без лишних движений (имею в виду - вначале добавляет на сервер, а потом ссылку через редактор вставляет в текст...) Может скрипты какие есть (допустим, что бы сразу из панели редактора картинку грузить на сервер и тут же вставлять)???

Ответов: 1

Голоса: +1
 
Лучший ответ

В настройках модуля - Новости сайта, подключаете 2 доп поля:

Далее идете в Настройки - Замена стандартных надписей - http://malroz.ru/panel/?a=signs переименуем доп поля:

Далее в шаблоне используйте следующие коды:

для изображения анонса

<?if($OTHER1$)?><img src="$OTHER1$" title="$ENTRY_NAME$" alt="$ENTRY_NAME$"><?endif?>

Для изображения оригинала:

<?if($OTHER2$)?><img src="$OTHER2$" title="$ENTRY_NAME$" alt="$ENTRY_NAME$"><?endif?>

При добавлении новостей, ссылку на изображения добавляйте в соответствующие поля, которые мы подключили в настройках модуля и переименовали в замене стд надписей.

| Автор:

все сделал, но одно но: хотелось бы что бы когда добавляешь картинки, то они пересылались на сервер сайта... Т.е. при добавлении выскакивало окно для добавления картинки либо через ссылку, либо с компьютера (у многих такое практикуется!) и эта картинка сохранялась на сервере сайта!

Увы, это доп поля и так сделать как вы хотите не реализовать, если конечное не обратиться к сторонним разработчикам за реализацией.

Подобный функционал о котором вы говорите, используется в доп поле Изображения и там автоматически создается и демо и оригинал. 

$IMG_URL1$ - оригинал

$IMG_SMALL_URL1$ - демо уменьшенное

понятно, а вот поле "изображения" ни как не сделать, что бы добавляя картинку с помощью кнопки "выберите файл", первая картинка попадала в анонс и раполагалась по центру, затем нажимая на плюсик добавляем вторую картинку, которая попадает на страницу материала и комментариев (так же располагается по центру), т.е материал выглядел бы так - анонс , страница материала ?

P.S. вот на этом сайте картинку прямо из панели редактора можно можно загрузить на сервер, удобно! так не организовать?   

Перейдите в настройки модуля - Новости сайта - http://malroz.ru/panel/?a=news;l=setup далее у вас должно быть подключено доп поле - "Изображения":

Далее при добавлении материала, крепим изображения следующим методом:

Возле прикрепленного изображения, вы видите код - $IMAGE1$ и $IMAGE2$ порядковый номер меняется в зависимости от количества прикрепленных изображений.

Эти коды нужно добавлять в материал между текста, после добавления материала, изображения загружаются на сервер и коды - $IMAGE1$ итд, будут отображаться  как изображения демо и оригинал, 2 в одном.

Размер демо, вы можете увидеть возле прикрепленного изображения, если вам нужен размер меньше, можете сразу же изменить на нужный при добавлении материала. Хотя точные размеры демо и макс размера оригинала, настраиваются в настройках модуля.

Чтобы изображения выводились автоматически в материале без внесения кода выше между текста материала, в шаблоне страницы мат и комментариев в соответствующее место добавляем код:

<?if($IMG_URL1$)?><a href="$IMG_URL1$" class="ulightbox"><img src="$IMG_SMALL_URL1$" title="$ENTRY_NAME$" alt="$ENTRY_NAME$" /></a><?endif?>
<?if($IMG_URL2$)?><a href="$IMG_URL1$" class="ulightbox"><img src="$IMG_SMALL_URL2$" title="$ENTRY_NAME$" alt="$ENTRY_NAME$" /></a><?endif?>

Если нужно больше изображений вывести, смотрим на код выше и добавляем еще код для 3-4-5-6-7-8-9-10 изображений, просто изменяя порядковый номер в переменных.

правильно я понял: добавляю код 

<?if($IMG_URL1$)?><a href="$IMG_URL1$" class="ulightbox"><img src="$IMG_SMALL_URL1$" title="$ENTRY_NAME$" alt="$ENTRY_NAME$" /></a><?endif?>

на страницу "архива материалов", выводится картинка в анонсе. 

далее нажимаю плюсик, и давляю картинку на страницу материалов, но перед этим добавляю код на страницу материалов и комментариев

<?if($IMG_URL2$)?><a href="$IMG_URL2$" class="ulightbox"><img src="$IMG_SMALL_URL2$" title="$ENTRY_NAME$" alt="$ENTRY_NAME$" /></a><?endif?>

выводится картинка на странице материала.

Вот только куда точно вставлять этот код, если на странице архива документ обозначен $BODY$, а на странице материалов $MESSAGE$?

И мне как бы не нужна картинка (демо, превью), нужна просто картинка определенного размера, и что бы она была сразу по центру оборачиваем код в <div align="center"></div> ?

Нет, на страницу архива, а либо на страницу материала и еомментариев либо после $MESSAGE$ либо где-то над в нужное вам место.

Либо в Вид материалов. Да, чтобы по центру можно и в этот див.

большое спасибо за ответ, но из Вашего ответа я так и не понял куда этот код устанавливать (может я туповат? ))) , можно поподробнее : в вид материалов или на страницу материала и комментов или и туда и туда вставлять код? 

И по поводу кода, прочитал что правильно alt прописывать разными для анонса и полного материала, рекомендуют в кратком описании (анонсе) использовать $TITLE$, а в полном материале $ENTRY_TITLE$ (правильное утверждение?). Что вот только прописывать в title? И как быть, если, допустим в полном материале не одна картинка?

Т.е. код для вставки принимает такой вид:

<?if($IMG_URL1$)?><a href="$IMG_URL1$" class="ulightbox"><div align="center"><img src="$IMG_SMALL_URL1$" title="$ENTRY_NAME$" alt="$TITLE$" /></div></a><?endif?>

<?if($IMG_URL2$)?><a href="$IMG_URL2$" class="ulightbox"><div align="center"><img src="$IMG_SMALL_URL1$" title="$ENTRY_NAME$" alt="$ENTRY_TITLE$" /></div></a><?endif?>

где $IMG_URL1$ - картинка для анонса

$IMG_URL2$ - картинка для полного текста

P.S. <div align="center"> правильно расположен? или нужно весь код оборачивать?

В вид материалов лучше добавлять одно изображение, 10 штук точно не нужно. Как я говорил перед кодом - $MESSAGE$ ставим условие:

<?if($IMG_URL1$)?><a href="$IMG_URL1$" class="ulightbox"><div align="center"><img src="$IMG_SMALL_URL1$" title="$ENTRY_NAME$" alt="$ENTRY_TITLE$" /></div></a><?endif?>

Если нужно для вида материалов выводить 2 изображения, соответственно ставим и условие для второго изображения просто изменив порядковый номер для кодов $IMG_URL1$ и $IMG_SMALL_URL1$

рекомендуют в кратком описании (анонсе) использовать $TITLE$, а в полном материале $ENTRY_TITLE$ (правильное утверждение?).

>> Утверждение правильное, но в каталогах код $ENTRY_TITLE$ будет работать лишь на странице материала и комментариев, а код $TITLE$ лишь в виде материалов.

Если в полном материале не одна картинка, добавляем еще условия примерно так:

<?if($IMG_URL1$)?><a href="$IMG_URL1$" class="ulightbox">
<div align="center">
<img src="$IMG_SMALL_URL1$" title="$ENTRY_TITLE$" alt="$ENTRY_TITLE$" />
</div></a><?endif?>

<?if($IMG_URL2$)?><a href="$IMG_URL2$" class="ulightbox">
<div align="center">
<img src="$IMG_SMALL_URL1$" title="$ENTRY_TITLE$" alt="$ENTRY_TITLE$" />
</div></a><?endif?>

<?if($IMG_URL3$)?><a href="$IMG_URL3$" class="ulightbox">
<div align="center">
<img src="$IMG_SMALL_URL3$" title="$ENTRY_TITLE$" alt="$ENTRY_TITLE$" />
</div></a><?endif?>

<?if($IMG_URL4$)?><a href="$IMG_URL4$" class="ulightbox">
<div align="center">
<img src="$IMG_SMALL_URL4$" title="$ENTRY_TITLE$" alt="$ENTRY_TITLE$" />
</div></a><?endif?>

<?if($IMG_URL5$)?><a href="$IMG_URL5$" class="ulightbox">
<div align="center">
<img src="$IMG_SMALL_URL5$" title="$ENTRY_TITLE$" alt="$ENTRY_TITLE$" />
</div></a><?endif?>

<?if($IMG_URL6$)?><a href="$IMG_URL6$" class="ulightbox">
<div align="center">
<img src="$IMG_SMALL_URL6$" title="$ENTRY_TITLE$" alt="$ENTRY_TITLE$" />
</div></a><?endif?>

<?if($IMG_URL7$)?><a href="$IMG_URL7$" class="ulightbox">
<div align="center">
<img src="$IMG_SMALL_URL7$" title="$ENTRY_TITLE$" alt="$ENTRY_TITLE$" />
</div></a><?endif?>

<?if($IMG_URL8$)?><a href="$IMG_URL8$" class="ulightbox">
<div align="center">
<img src="$IMG_SMALL_URL8$" title="$ENTRY_TITLE$" alt="$ENTRY_TITLE$" />
</div></a><?endif?>

<?if($IMG_URL9$)?><a href="$IMG_URL9$" class="ulightbox">
<div align="center">
<img src="$IMG_SMALL_URL9$" title="$ENTRY_TITLE$" alt="$ENTRY_TITLE$" />
</div></a><?endif?>

<?if($IMG_URL10$)?><a href="$IMG_URL10$" class="ulightbox">
<div align="center">
<img src="$IMG_SMALL_URL10$" title="$ENTRY_TITLE$" alt="$ENTRY_TITLE$" />
</div></a><?endif?>

 

спасибо за ответ,

>> Утверждение правильное, но в каталогах код $ENTRY_TITLE$ будет работать лишь на странице материала и комментариев, а код $TITLE$ лишь в виде материалов. 

- чем заменять $ENTRY_NAME$? и то, что alt и title одинаковые это же не правильно! по крайней мере для поисковиков...

Самое то главное Вы не подсказали: куда именно вставлять коды для анонса и полного материала )

Код $ENTRY_NAME$ используется лишь в модулях Новости и Блог, как я вижу вы уже хотите использовать в каталогах. Большого выбора нет, либо прописывайте $ENTRY_TITLE$ в странице материала и комментариев(в виде материалов - $TITLE$).

Самое то главное Вы не подсказали: куда именно вставлять коды для анонса и полного материала )

>> Перечитайте мой ответ выше и еще до этого - я уже писал, более точно это уже лишнее, ищем код $MESSAGE$ ставим либо перед ним либо после, где и как вам нужно.

спасибо!!! огромное!!! буду пробовать...

Рано радовался, ситуация следующая:

вставил код:

<?if($IMG_URL1$)?><a href="$IMG_URL1$" class="ulightbox"><div align="center"><img src="$IMG_SMALL_URL1$" title="$TITLE$" alt="$TITLE$" /></div></a><?endif?>

в вид материалов (и на страницу материалов и комментариев тоже) перед $MESSAGE$, все вроде хорошо, но над картинкой (и в анонсе и в полном тексте) появляется надпись-ссылка "WWDC 2014" (смотреть) , скрин:

где то засада ) Как исправить???

 

перешел к вам в материал и не увидел данной проблемы либо вы ее исправили
я просто методом "тыка" исправил, подбирал куда поставить $ENTRY_NAME$, а куда $TITLE$.

в вид материалов:

<?if($IMG_URL1$)?><a href="$IMG_URL1$" class="ulightbox"><div align="center"><img src="$IMG_SMALL_URL1$" title="$ENTRY_NAME$" alt="$ENTRY_NAME$" /></div></a><?endif?>

на страницу материала и комментов:

<?if($IMG_URL2$)?><a href="$IMG_URL2$" class="ulightbox"><div align="center"><img src="$IMG_SMALL_URL1$" title="$TITLE$" alt="$TITLE$" /></div></a><?endif?>

Обнаружил еще один косяк, по ходу title не работает (может и alt тоже!) - при наведении курсора на картинку описание не всплывает! Что-то где-то не так... Посмотрите, плиз, что можно сделать?

И еще что бы не делать одинаковыми title и   alt  можно ведь применять такую конструкцию в коде title="$ENTRY_NAME$ - $SITE_NAME$" alt="$ENTRY_NAME$ - $CAT_NAME$" (это я к примеру), можно так?

Данную конструкцию использовать лишь в модуле новости и блог:

<?if($IMG_URL1$)?><a href="$IMG_URL1$" class="ulightbox"><div align="center"><img src="$IMG_SMALL_URL1$" title="$ENTRY_NAME$" alt="$ENTRY_NAME$" /></div></a><?endif?>

Это лишь в виде материалов в Каталогах, то есть титл там будет лишь работать тот, что вы вставили:

<?if($IMG_URL2$)?><a href="$IMG_URL2$" class="ulightbox"><div align="center"><img src="$IMG_SMALL_URL1$" title="$TITLE$" alt="$TITLE$" /></div></a><?endif?>

Только на странице комментариев в новостях можно подобное использовать:

И еще что бы не делать одинаковыми title и   alt  можно ведь применять такую конструкцию в коде title="$ENTRY_NAME$ - $SITE_NAME$" alt="$ENTRY_NAME$ - $CAT_NAME$" (это я к примеру), можно так?

вот весь код "вида материалов" в модуле новости:

<table border="0" cellpadding="0" cellspacing="0" width="100%" class="eBlock"><tr><td style="padding:3px;">
<?if($MODER_PANEL$)?><div style="float:right">$MODER_PANEL$</div><?endif?>
<div class="eTitle" style="text-align:left;"><a href="$ENTRY_URL$">$TITLE$</a><?if($DATE$="Сегодня" or $DATE$="Вчера")?>
 <img src="http://malroz.my1.ru/28.gif"><?endif?></div>
<?if($IMG_URL1$)?><a href="$IMG_URL1$" class="ulightbox"><div align="center"><img src="$IMG_SMALL_URL1$" title="$ENTRY_NAME$" alt="$ENTRY_NAME$" /></div></a><?endif?>
<?if($MESSAGE$)?><div class="eMessage" style="text-align:left;clear:both;padding-top:2px;padding-bottom:2px;">$MESSAGE$</div><?endif?>
<?if($ATTACHMENTS$)?><div class="eAttach">Прикрепления: $ATTACHMENTS$</div><?endif?><div class="eDetails" style="clear:both;">
<?if($RATING$)?><div style="float:right"><?$RSTARS$('12','/.s/img/stars/3/12.png','0','float')?></div><?endif?>
<?if($CATEGORY_NAME$)?>Категория: <a href="$CATEGORY_URL$">$CATEGORY_NAME$</a> |<?endif?>
Просмотров: $READS$ |
<?if($USERNAME$)?>Добавил: <a href="$PROFILE_URL$">$USERNAME$</a> |<?endif?>
Дата: <span title="$TIME$">$DATE$</span> 
<?if($COMMENTS_URL$)?>| <a href="$COMMENTS_URL$">Комментарии ($COMMENTS_NUM$)</a><?endif?>
</div></td></tr></table><br />

Однако ж не работает, проверьте сами http://malroz.ru/news/?page2

неужели ни как не решить проблему???

пытаюсь эксперементировать:

в модуль "новости" в вид материалов вставляю код:

href="$IMG_URL1$" title="$TITLE$" target="_blank"><IMG SRC="$IMG_URL1$" title="$TITLE$" alt="$TITLE$"></a><?ENDIF?>

все правильно, картинку выводит, тайтл показывает, но почему то в анонсе появляется две одинаковые картинки, как решить эту проблему?

Плюс мне хотелось бы в этот код добавить не target="_blank", а что бы по нажатию на картинку пользователь открывал полную версию материала...

Сделайте вот так:

<?if($IMG_URL1$)?><a href="$ENTRY_URL$" title="$TITLE$" target="_blank"><img src="$IMG_URL1$" title="$TITLE$" alt="$TITLE$"></a><?endif?>

спасибо, в материал заходит, но опять две одинаковые картинки, как одну убрать?

http://malroz.ru/news/?page2

Дубль из-за того, что вы в материал еще ставите код:

$IMAGE1$

или вы забили, что у вас условие для изображений уже прописано в виде материала, если будете добавлять, соответственно и будут дубли.

да нет в виде материалов, кроме этого условия больше нет условий по картинкам:

<table border="0" cellpadding="0" cellspacing="0" width="100%" class="eBlock"><tr><td style="padding:3px;">
<?if($MODER_PANEL$)?><div style="float:right">$MODER_PANEL$</div><?endif?>
<div class="eTitle" style="text-align:left;"><a href="$ENTRY_URL$">$TITLE$</a><?if($DATE$="Сегодня" or $DATE$="Вчера")?>
 <img src="http://malroz.my1.ru/28.gif"><?endif?></div>
<?if($IMG_URL1$)?><a href="$ENTRY_URL$" title="$TITLE$" target="_blank"><div align="center"><img src="$IMG_URL1$" title="$TITLE$" alt="$TITLE$"></div></a><?endif?>
<?if($MESSAGE$)?><div class="eMessage" style="text-align:left;clear:both;padding-top:2px;padding-bottom:2px;">$MESSAGE$</div><?endif?>
<?if($ATTACHMENTS$)?><div class="eAttach">Прикрепления: $ATTACHMENTS$</div><?endif?><div class="eDetails" style="clear:both;">
<?if($RATING$)?><div style="float:right"><?$RSTARS$('12','/.s/img/stars/3/12.png','0','float')?></div><?endif?>
<?if($CATEGORY_NAME$)?>Категория: <a href="$CATEGORY_URL$">$CATEGORY_NAME$</a> |<?endif?>
Просмотров: $READS$ |
<?if($USERNAME$)?>Добавил: <a href="$PROFILE_URL$">$USERNAME$</a> |<?endif?>
Дата: <span title="$TIME$">$DATE$</span>
<?if($COMMENTS_URL$)?>| <a href="$COMMENTS_URL$">Комментарии ($COMMENTS_NUM$)</a><?endif?>
</div></td></tr></table><br />

первое слово читаете далее уже сразу пишете ответ, вы не дочитали, что я вам написал, вы в материале применяете код:

$IMAGE1$

не нужно так как из-за него дубль, у вас в виде материалов уже прописано условие:

<?if($IMG_URL1$)?><a href="$ENTRY_URL$" title="$TITLE$" target="_blank"><div align="center"><img src="$IMG_URL1$" title="$TITLE$" alt="$TITLE$"></div></a><?endif?>

Если добавлять код выше в материал, то и будут дубли.

дак я понял, что дубль, только не понял как решить это... как прописать правильно?

вот в сети нашел какое то решение, насколько оно правильное?

<?if($TIMESTAMP$>1287086400000)?>
<?IF($IMG_URL1$)?><a href="$IMG_URL1$" title="$TITLE$" target="_blank"><IMG SRC="$IMG_URL1$" title="$TITLE$" alt="$TITLE$"></a><?ENDIF?>
<?endif?>
Если вы будете все подряд ставить с сети, то и будет мусора много. Ответ я уже дал, выше, все вопрос закрыт, так как здесь уже задаются совершенно другие вопросы.
...