Перейти к публикации

Как сделать аттачмент картинкой


Рекомендованные сообщения

Как сделать аттачмент картинкой а не ссылкой как тут Скачать: maxima-allo-radio-edit.mp3 [618.69 Kb] (cкачиваний: 79)

сайт в профиле

Ссылка на сообщение
Поделиться на других сайтах

Открываем /engine/modules/functions.php

Заменяем:

$link = "<span id="attachment">[url={$config[]{$row['name']}[/url] [{$size}] ({$lang['att_dcount']} {$row['dcount']})</span>";

      else

        $link = "<span id="attachment">[url={$config[]{$row['name']}[/url] [{$size}]</span>";
на:
$link = "<center><span id="attach"><a $link_open href="{$config['http_home_url']}engine/download.php?id={$row['id']}

"  onmouseover="showhint('Нажмите для скачивания {$row['name']}!', this, event)";><img src="{THEME}/images/download.jpg" border="0"></a></span><br>

<div class="attac"><font color="#636363"><b>Размер:</b></font> {$size}<br>

<font color="#636363"><b>Скачиваний:</b></font> {$row['dcount']} </div></center>";

      else

        $link = "<span id="attachment"><a href="{$config['http_home_url']}engine/download.php?id={$row['id']}" >{$row['name']}</a> [{$size}]</span>";
в css добавить:
.attac{

padding-top:3px;

position:fixed center;

}

Залить картинку download.jpg в папку /images/ вашего шаблона.

Изменено пользователем rSteLlMi
Ссылка на сообщение
Поделиться на других сайтах

во втором это для DLE 8.3-8.5

А адаптировать не судьба? хотя бы глянули

(на моем он и реализован - dle 9.2)

Ссылка на сообщение
Поделиться на других сайтах

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

Ссылка на сообщение
Поделиться на других сайтах

во втором это для DLE 8.3-8.5

А адаптировать не судьба? хотя бы глянули

(на моем он и реализован - dle 9.2)

Выложи адаптированный, я не смогу сам адаптировать, я в этом деле не айс

Ссылка на сообщение
Поделиться на других сайтах

Вот как сделал я (с поддержкой мультиязычности).

Чтобы на меня потом не орали за криворукую установку, сделаем бэкап следующих файлов:

engine\modules\functions.php

language\Russian\website.lng

engine\modules\functions.php

Найти:


$replace_1[] = "<span class=\"attachment\"><a href=\"{$config['http_home_url']}engine/download.php?id={$row['id']}{$area}\" >{$row['name']}</a> [{$size}] ({$lang['att_dcount']} {$row['dcount']})</span>";
$replace_2[] = "<span class=\"attachment\"><a href=\"{$config['http_home_url']}engine/download.php?id={$row['id']}{$area}\" >\\1</a> [{$size}] ({$lang['att_dcount']} {$row['dcount']})</span>";

} else {

$replace_1[] = "<span class=\"attachment\"><a href=\"{$config['http_home_url']}engine/download.php?id={$row['id']}{$area}\" >{$row['name']}</a> [{$size}]</span>";
$replace_2[] = "<span class=\"attachment\"><a href=\"{$config['http_home_url']}engine/download.php?id={$row['id']}{$area}\" >\\1</a> [{$size}]</span>";
[/php]

[i]Заменить на:[/i]

[php]
$replace_1[] = "<span class=\"attachment\"><a class=\"alink\" href=\"{$config['http_home_url']}engine/download.php?id={$row['id']}{$area}\" >{$lang['att_name']}</a> [{$size}] ({$lang['att_dcount']} {$row['dcount']})</span>";
$replace_2[] = "<span class=\"attachment\"><a class=\"alink\" href=\"{$config['http_home_url']}engine/download.php?id={$row['id']}{$area}\" >\\1</a> [{$size}] ({$lang['att_dcount']} {$row['dcount']})</span>";

} else {

$replace_1[] = "<span class=\"attachment\"><a class=\"alink\" href=\"{$config['http_home_url']}engine/download.php?id={$row['id']}{$area}\" >{$lang['att_dcount']}</a> [{$size}]</span>";
$replace_2[] = "<span class=\"attachment\"><a class=\"alink\" href=\"{$config['http_home_url']}engine/download.php?id={$row['id']}{$area}\" >\\1</a> [{$size}]</span>";

Далее...

language\Russian\website.lng

Найти:


$lang = array (


'charset'			=>	"windows-1251",

'wysiwyg_language'		=>  "ru",


// 9.2

Ниже добавить:

'att_name'		=>	"Скачать",

Теперь переходим сюды... templates\ИМЯ ВАШЕГО ШАБЛОНА\style\engine.css В самый конец файла добавляем:

.alink {

	background-image:url(../dleimages/download.png);

	text-align:center;

	width:100px;

	height:31px;

	line-height:30px;

	display:block;

	color: #FFFFFF;

	text-decoration: underline;

}

Кнопку с названием download.png кидаем в папку \ВАШ ШАБЛОН\dleimages\

Вроде все...

Изменено пользователем Compton
Ссылка на сообщение
Поделиться на других сайтах

Скажите, а зачем графическая кнопка скачать? Надо делать всё так же как и с любыми файлами.

Например:

Скачать: logo.png [618.69 Kb] (cкачиваний: 79)

Скачать: Картинка [618.69 Kb] (cкачиваний: 79)

Ссылка на сообщение
Поделиться на других сайтах

Чтобы красивше выглядело :P ахах)

Да, кстати.. если использовать тег вот так:

[attachment=1]
То будет выводиться кнопка "Скачать" А если вот так:
[attachment=1:2pac - Changes.avi]

То в кнопке будет выводиться название файла...

Это даже не кнопка, а просто графический бэкграунд для ссылки. (если говорить конкретно о моем примере)

Изменено пользователем Compton
Ссылка на сообщение
Поделиться на других сайтах

Можно все это и через css сделать не влезая в код.

.attachment, .attachment a { display: block; text-indent: -9999em; }

.attachment a { background: url(../images/image.png) no-repeat; height: 20px; width: 45px; }

Все. Можно еще прописать фон для псевдо - :active и :hover

Ссылка на сообщение
Поделиться на других сайтах

Можно и так :) Можно и jQuery подключить, для более красивого отображения кнопок. В таком случае нужно код лопатить. А я и указал то место в коде, где организуется вывод аттачей...

Ссылка на сообщение
Поделиться на других сайтах

Можно все это и через css сделать не влезая в код.

.attachment, .attachment a { display: block; text-indent: -9999em; }

.attachment a { background: url(../images/image.png) no-repeat; height: 20px; width: 45px; }

Все. Можно еще прописать фон для псевдо - :active и :hover

а как слово скачать что перед аттачментом удалить, и можно подробнее о фоне для псевдо - :active и :hover

Изменено пользователем mixmix
Ссылка на сообщение
Поделиться на других сайтах

а как слово скачать что перед аттачментом удалить

Никак, потому что оно не выводится скриптом изначально!

и можно подробнее о фоне для псевдо - :active и :hover

http://htmlbook.ru/css/active

http://htmlbook.ru/css/hover

Ссылка на сообщение
Поделиться на других сайтах

Можно все это и через css сделать не влезая в код.

.attachment, .attachment a { display: block; text-indent: -9999em; }

.attachment a { background: url(../images/image.png) no-repeat; height: 20px; width: 45px; }

Все. Можно еще прописать фон для псевдо - :active и :hover

а как слово скачать что перед аттачментом удалить, и можно подробнее о фоне для псевдо - :active и :hover

mixmix, мой пример смотрите, я там вообще слово скачать вынес в файл website.lng. Если вы делали по моему примеру, то откройте файл website.lng и замените слово "Скачать" на нужное вам.

Ссылка на сообщение
Поделиться на других сайтах

Можно все это и через css сделать не влезая в код.

.attachment, .attachment a { display: block; text-indent: -9999em; }

.attachment a { background: url(../images/image.png) no-repeat; height: 20px; width: 45px; }

Все. Можно еще прописать фон для псевдо - :active и :hover

а как слово скачать что перед аттачментом удалить, и можно подробнее о фоне для псевдо - :active и :hover

mixmix, мой пример смотрите, я там вообще слово скачать вынес в файл website.lng. Если вы делали по моему примеру, то откройте файл website.lng и замените слово "Скачать" на нужное вам.

По твоему примеру не получилось ничего к сожелениюна локалке пробовал чтоб сайт не испортить толку 0, этот пример тоже в css прописал тоже ничего, пока стиль не прописал в полной новости. Кнопка появилась, и надписи остались. Я же писал что мне нужно так, чтобы одна кнопка была и больше ничего

Ссылка на сообщение
Поделиться на других сайтах

щяс ещё попробую

на 9,3 изминений вообще нет никаких, всё на месте, кеш почистил, и там и там толку нет

Вот ещё нашол

файл modules/functions.php

Найти

if ( ! $user_group[$member_id['user_group']]['allow_files'] ) {
Вставить выше
$row['name'] = <<<HTML

<img src="адресс картинки" />

HTML;

Тоже ничего не произошло

Изменено пользователем mixmix
Ссылка на сообщение
Поделиться на других сайтах

источник http://dle-faq.pro, а автор nowheremany, только что толку, я тоже таким автором могу быть, не работает этот метод в 9,3

Ссылка на сообщение
Поделиться на других сайтах

Вы не туда вставили значит

надо после

		$size = formatsize( @filesize( ROOT_DIR . '/uploads/files/' . $row['onserver'] ) );

		$row['name'] = explode( "/", $row['name'] );

		$row['name'] = end( $row['name'] );

Ссылка на сообщение
Поделиться на других сайтах

Подробнее тут: http://forum.dle-news.ru/index.php?showtopic=57145

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...