Dateianhang in neuem Fenster
![](http://www.drupalcenter.de/files/noavatar_mini.gif)
am 16.02.2006 - 07:49 Uhr in
Hallo,
ich habe bei mir Drupal installiert. Läuft auch ohne Probleme.
Nun habe ich eine News erstellt und eine Datei angehängt.
1. Wie kann ich die Anzeige so ändern, dass er auf der Haupseite die News anzeigt und mit Dateiname ?
Da steht jetzt nur "1 Anhang" oder so.
2. Wenn ich die News öffne steht der Dateiname darunter zum Anklicken. Wie schaffe ich es, dass er ein neues Fenster öffnet.
Z.B. wenn ich eine PDF anhänge soll er mir die nicht im gleichen Fenster wie Drupal öffnen sondern in nem neuen.
Oder noch besser wäre es, wenn ich es initiieren könnte, dass egal was für eine Datei es ist, er mir beim anklicken nur
die Möglichkeit des herunterladens gibt. Kann man das dem Browser irgendwie mitgeben, dass er nicht die Datei öffnet
sondern direkt fragt, wo er die Datei hinspeichern soll ?
Finde Drupal echt spitze. Läuft sogar im Safe mode bei mir aufm Webserver.
- Anmelden oder Registrieren um Kommentare zu schreiben
Re: Dateianhang in neuem Fenster
am 20.02.2006 - 15:14 Uhr
Keiner ne Antwort ?
Als Startpunkt für beide
am 20.02.2006 - 15:57 Uhr
Als Startpunkt für beide Fragen ist vielleicht dies hier interessant: http://drupal.org/node/11811 .
Für das Öffnen im neuen Fenster im Link target="_blank" nutzen.
Was ich selbst noch nicht ausprobiert habe ist: http://drupal.org/node/43600 , aber vielleicht ist das ja eine Lösunge für Dich.
vg
Konkrete Lösung ...
am 28.08.2008 - 18:20 Uhr
Hat denn Niemand eine konkrete Lösung für dieses Problem?
Man muß doch im Quellcode irgendwo dieses target="_blank" hinterlegen können, sodaß zukünftig alle Anhänge in einem neuen Fenster geöffnet werden.
Keiner weiss was ...?
am 31.08.2008 - 12:29 Uhr
Hat denn bisher Niemand dieses Problem lösen können?
Shift taste drücken beim klicken
am 31.08.2008 - 13:03 Uhr
hallo,
standart ist das der nutzer selbst entscheidet mit - Shift Taste drücken beim klicken. kann er das.
http://drupal.org/node/120898 steht wie man's in der phptemplate.php macht oder im modul.
lg sofo
Wir Eltern in Europa
alles in englisch ...
am 02.09.2008 - 22:47 Uhr
Leider bin ich nicht genug "Ami" um das alles wirklich zu verstehen ....
Versuch doch mal, dir die
am 03.09.2008 - 13:21 Uhr
Versuch doch mal, dir die Seite z.B. bei Google übersetzen zu lassen.
Scheinbar funktioniert bei dem Menschen der zuletzt gepostete Code:
<?php
function phptemplate_upload_attachments($files) {
$header = array(t('Attachment'), t('Size'));
$rows = array();
foreach ($files as $file) {
$file = (object)$file;
if ($file->list && empty($file->remove)) {
$href = file_create_url($file->filepath);
$text = $file->description ? $file->description : $file->filename;
$rows[] = array(l($text, $href, array('attributes' => array('target' => '_blank'))), format_size($file->filesize));
}
}
if (count($rows)) {
return theme('table', $header, $rows, array('id' => 'attachments'));
}
}
?>
Und es wurde gesagt, dass es in die template.php gehört und ich nehme an dass es gut wäre wenn du "phptemplate" in der ersten Zeile (
function phptemplate_upload_attachments
) mit dem Theme-Namen ersetzt. Und ich glaube das funktioniert für D6. Probier's halt mal!Leider hat es nicht
am 09.09.2008 - 10:02 Uhr
Leider hat es nicht funktioniert. Ich habe auch Drupal 5.10 und möchte diese Version auch behalten.
Aber es muß doch irgend etwas geben, womit ich Drupal beibringen kann, daß alle Dateianhänge - und Verlinkungen generell - in einem neuen Fenster aufzumachen sind.
Hast du dir den Thread mal
am 09.09.2008 - 10:27 Uhr
Hast du dir den Thread mal genau angeguckt? Der stammt von Februar 2007, bis auf die letzten 2 geposteten Codes sind alle anderen Versuche dort für D5. Ich glaube der Code in diesem Kommentar http://drupal.org/node/120898#comment-623491 hat für D5 funktioniert.
Pack das in deine template.php Datei und probiere es noch mal:
/**
* Displays file attachments in table
*/
function phptemplate_upload_attachments($files) {
$header = array(t('Attachment'), t('Size'));
$rows = array();
foreach ($files as $file) {
if ($file->list) {
$href = $file->fid ? file_create_url($file->filepath) : url(file_create_filename($file->filename, file_create_path()));
$text = $file->description ? $file->description : $file->filename;
$rows[] = array(l($text, $href, array('target' => '_blank')), format_size($file->filesize));
}
}
if (count($rows)) {
return theme('table', $header, $rows, array('id' => 'attachments'));
}
}
Es geht, es
am 09.09.2008 - 11:24 Uhr
Es geht, es geht!
juchuuuuuuuuuuu
Drupal ist klasse!
@aschiwi besten Dank!
Hiermit klappte es unter D6 - neues Fenster bei Dateianhängen
am 27.07.2009 - 14:24 Uhr
Nach einigem Hin und Her funktionierte bei mir dieser Code unter D6 in der template.php:
function phptemplate_upload_attachments($files) {
$header = array(t('Attachment'), t('Size'));
$rows = array();
foreach ($files as $file) {
$file = (object)$file;
if ($file->list && empty($file->remove)) {
$href = file_create_url($file->filepath);
$text = $file->description ? $file->description : $file->filename;
$rows[] = array(l($text, $href, array('attributes' => array('target' => '_blank'))), format_size($file->filesize));
}
}
if (count($rows)) {
return theme('table', $header, $rows, array('id' => 'attachments'));
}
}
Merci für die Unterstützung, aschiwi :)