Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module ›

Filefield Inhalt ausserhalb der zugehörigen node ausgeben

Eingetragen von brenes (21)
am 28.07.2008 - 17:58 Uhr in
  • Module
  • Drupal 5.x

Ich versuche ein über das Ckk Filefield modul hochgeladenes PDF, ausserhalb der zugehörigen node auszugeben. Wie könnte ich es nun beispielsweise in der sidebar oder in einer anderen Region unterbringen? Mit

<?php
print $node->content['field_pdf_datei']['#value'];
?>
kann ich es ja direkt in der node.tpl.php ansprechen. Gibt es ähnliche Möglichkeiten für die page.tpl.php?
Beste Grüße

‹ Wie lösen? sitedoc bringt beim cron-Lauf Fehler ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

filefield

Eingetragen von stBorchert (6003)
am 28.07.2008 - 18:29 Uhr
brenes schrieb

Gibt es ähnliche Möglichkeiten für die page.tpl.php?

Klar doch (node_load):

<?php

// Mal angenommen, das pdf gehoert zum node mit der ID 2.
$nd = node_load(2);
print
$nd->content['field_pdf_datei']['#value'];
?>

Dann noch entsprechend Deiner evtln. Wünsche einen Link zum Herunterladen darumbauen und fertig.
Ungetestet, daher ohne jeglichen Anspruch auf Vollständig-/Richtigkeit :-)

hth,

Stefan

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke erstmal für

Eingetragen von brenes (21)
am 28.07.2008 - 21:25 Uhr

Danke erstmal für den Verweis zur node_load Funktion. Bis jetzt habe ich die Funktion leider noch nicht zum Laufen gebracht. Das müsste doch eigentlich von jeder Stelle in meinem Template aus funktionieren - Blöcke und tpl.php dateien mit eingeschlossen. Oder?

beste grüße
ben

  • Anmelden oder Registrieren um Kommentare zu schreiben

node_load und tpl

Eingetragen von stBorchert (6003)
am 28.07.2008 - 21:50 Uhr

Eigentlich(!) müsste es funktionieren. Gibts denn irgendwelche Fehlermeldungen?

Mach mal

<?php
print_r
(node_load(2)); // um mal bei meinem Beispiel mit der ID 2 zu bleiben
?>

Was kommt denn da?

Stefan

  • Anmelden oder Registrieren um Kommentare zu schreiben

Fehlermeldungen gibt es

Eingetragen von brenes (21)
am 28.07.2008 - 22:41 Uhr

Fehlermeldungen gibt es keine - es erscheint einfach nichts.
Wenn ich deinen test Code in der page.tpl.php in die sidebar einfüge und ID 82 (die mit dem PDF field) eingebe bekomme ich den folgenden Code in der sidebar ausgegeben:

stdClass Object ( [nid] => 82 [vid] => 82 [type] => bildseite [status] => 1 [created] => 1217256015 [changed] => 1217280385 [comment] => 0 [promote] => 1 [sticky] => 0 [revision_timestamp] => 1217280385 [title] => PDF-Test [body] => [teaser] => [log] => [format] => 3 [uid] => 1 [name] => brenes [picture] => files/pictures/picture-1.jpg [data] => a:2:{s:14:"picture_delete";s:0:"";s:14:"picture_upload";s:0:"";} [field_bildfeld] => Array ( [0] => Array ( [fid] => 0 [title] => [alt] => ) ) [field_pdf_datei] => Array ( [0] => Array ( [fid] => 28 [description] => test.pdf [list] => 1 [nid] => 82 [filename] => test.pdf [filepath] => files/pdf/test.pdf [filemime] => application/pdf [filesize] => 8622612 ) [1] => Array ( [fid] => 29 [description] => test2.pdf [list] => 1 [nid] => 82 [filename] => test2.pdf [filepath] => files/pdf/test2.pdf [filemime] => application/pdf [filesize] => 223179 ) ) [field_txt] => Array ( [0] => Array ( [value] => ) ) [0] => [taxonomy] => Array ( ) ) 

Scheint mir alles aufgeführt zu sein was in der node enthalten ist. Wenn ich nun an der selben Stelle den Code von oben mit entsprechender node ID eingebe sollte er mir ja eigentlich das cck Feld mit der PDF datei ausgeben - da tut sich jedoch nichts.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Pfad zur Datei

Eingetragen von stBorchert (6003)
am 29.07.2008 - 09:09 Uhr
brenes schrieb

//snip//
Scheint mir alles aufgeführt zu sein was in der node enthalten ist. Wenn ich nun an der selben Stelle den Code von oben mit entsprechender node ID eingebe sollte er mir ja eigentlich das cck Feld mit der PDF datei ausgeben - da tut sich jedoch nichts.

Ah, nee. Denkfehler beiderseits :-)
Nochmal die Ausgabe vom node:

  [field_pdf_datei] => Array (
    [0] => Array (
      [fid] => 28
      [description] => test.pdf
      [list] => 1
      [nid] => 82
      [filename] => test.pdf
      [filepath] => files/pdf/test.pdf
      [filemime] => application/pdf
      [filesize] => 8622612
    )
    [1] => Array (
      [fid] => 29
      [description] => test2.pdf
      [list] => 1
      [nid] => 82
      [filename] => test2.pdf
      [filepath] => files/pdf/test2.pdf
      [filemime] => application/pdf
      [filesize] => 223179
    )
  )

Du hast also zwei Dateien, die an node 82 angehängt sind.

Mal angenommen, Du möchtest zu jeder Datei einen Link auf der page.tpl.php haben, mit dem man die Datei öffnen kann.
Dann musst Du folgenden Code einfügen:

<?php
$nd
= node_load(82);
foreach(
$nd->field_pdf_datei as $key => $file) {
  print
'<a href="'. $file['filepath'] .'" title="'. $file['description'] .'">'. $file['name'] .'</a><br />';
}
?>

Das sollte dann ausgeben:

<a href="files/pdf/test.pdf" title="test.pdf">test.pdf</a><br />
<a href="files/pdf/test2.pdf" title="test2.pdf">test2.pdf</a><br />

Viel Spass beim Testen,

Stefan

  • Anmelden oder Registrieren um Kommentare zu schreiben

Super danke das klappt schon

Eingetragen von brenes (21)
am 29.07.2008 - 22:09 Uhr

Super danke das klappt schon mal soweit, dass ich die links in der Sidebar im Quelltext finde. Jedoch scheint das mit dem '. $file['name'] .' noch nicht zu klappen. Ich bekomme nur den ungeschlossenen Link Tag ausgegeben. <a title="test.pdf" href="files/pdf/test.pdf"/> der letzte part mit dem link zur Datei fehlt. Dann noch was: Wäre es nun möglich in der Funktion zu sagen wenn node xy aktiv, dann gebe mir bitte wenn vorhanden zugehöriges filefield xy an gewünschter Stelle im Template aus? Das würde das Ganze nämlich dynamischer machen und mir die verweise auf die Node ID ersparen.

Beste Grüße

ben

  • Anmelden oder Registrieren um Kommentare zu schreiben

Nur mal so als Anregung.

Eingetragen von quiptime (4972)
am 30.07.2008 - 02:57 Uhr

@brenes,

bist Du auch mal auf die Idee gekommen selbst zu testen anstatt zu fragen?

Z. Bsp. setze eine Node auf unveroeffentlicht und gib von dieser Node wie voran mit print_r() das Nodeobject aus. Und dann sehe mal hin ob Du erkennen kannst woran man eine nicht veroeffentlichte Node erkennt.

Nur mal so als Anregung.

-------------
quiptime

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

und noch eine Anregung

Eingetragen von stBorchert (6003)
am 30.07.2008 - 07:58 Uhr

Moin!
Wenn Du in meinen vorangegangenen Beitrag schaust und da mal die Ausgabe des node betrachtest, wirst Du schnell sehen, dass ich mich vertan habe: $file['name'] gibts nicht. Das muss $file['filename'] heissen.
Tipp zur Dynamisierung (komisches Wort): arg().
Damit kannst Du die Id des node auslesen (so denn vorhanden).

hth,

Stefan

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke für die Anregungen

Eingetragen von brenes (21)
am 03.08.2008 - 14:53 Uhr

Sorry für meine späte Antwort, war für ein paar Tage offline.
Das ganze funktioniert nun, ich bekomme wie erwünscht die beiden Dateien an beliebiger Stelle im Template ausgegeben. Danke. Zusätzlich habe ich grade ein Modul gefunden, dass im Prinzip genau das tut was ich mir vorgestellt habe. Nämlich die CKK Felder der aktuellen Seite als Blöcke auszugeben. Das Modul gibts hier http://drupal.org/project/cck_blocks

Danke & beste Grüße

Ben

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 2 Wochen 2 Tagen
  • Hey danke
    vor 2 Wochen 2 Tagen
  • Update: jetzt gibt's ein
    vor 2 Wochen 3 Tagen
  • Hallo, im Prinzip habe ich
    vor 3 Wochen 1 Tag
  • Da scheint die Terminologie
    vor 3 Wochen 1 Tag
  • Kannst doch auch alles direkt
    vor 3 Wochen 5 Tagen
  • In der entsprechenden View
    vor 3 Wochen 5 Tagen
  • Dazu müsstest Du vermutlich
    vor 3 Wochen 5 Tagen
  • gelöst
    vor 6 Wochen 2 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 6 Wochen 2 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20453

Neue User:

  • ByteScrapers
  • Mroppoofpaync
  • 4aficiona2

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 25 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association