Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Allgemeines zu Drupal ›

anhang im block [gelöst]

Eingetragen von knork (76)
am 20.03.2011 - 18:50 Uhr in
  • Allgemeines zu Drupal
  • Drupal 7.x

hallo,
ich möchte gerne meine gelisteten anhänge in den blocks der jeweiligen nodes anzeigen lassen.
hab dazu folgendes gefunden:
link
das scheint jedoch bei d7 nicht zu funktionieren, ich bekomme da folgende fehlermeldung:

Notice: Undefined property: stdClass::$files in eval() (Zeile 4 von /var/www/web417/html/cms/modules/php/php.module(75) : eval()'d code).
Warning: Invalid argument supplied for foreach() in eval() (Zeile 5 von /var/www/web417/html/cms/modules/php/php.module(75) : eval()'d code).

kann mir einer sagen wie ich das ganze umsetzen kann?

gruß knork

‹ Sonderzeichen "–" wird in eigenem Theme nicht angezeigt Brillant gallery ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Dateien auflisten

Eingetragen von stBorchert (6003)
am 21.03.2011 - 09:26 Uhr

Hallo.

knork schrieb

... das scheint jedoch bei d7 nicht zu funktionieren, ich bekomme da folgende fehlermeldung:...

Kein Wunder, der Code ist ja auch für Drupal 4.7.x, bzw. Drupal 5.x.

In einem Block kannst Du die Dateien eines Beitrags so auflisten:

<?php
// Get node object.
$node = menu_get_object();
if (isset(
$node->files) && user_access('view uploaded files')) {
 
$items = array();
  foreach (
$node->files as $file) {
   
$items[] = array(
     
'title' => $file->filename,
     
'href' => file_create_url($file->filepath),
    );
  }
  print
theme('links', $items);
}
?>

hth,

 Stefan

  • Anmelden oder Registrieren um Kommentare zu schreiben

danke für deine hilfe! das

Eingetragen von knork (76)
am 21.03.2011 - 09:57 Uhr

danke für deine hilfe! das der code nicht für drupal 7 ist hab ich schon gelesen, jedoch war ich trozdem nicht in der lage mir zu helfen.

hab den code gerade in nen block eingebaut und jetzt wird dieser nicht mehr angezeigt. hast du ne idee dazu?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Anhänge

Eingetragen von stBorchert (6003)
am 21.03.2011 - 10:04 Uhr

Habs jetzt mal bei mir getestet: http://screencast.com/t/rUKfiB6QBZ

Funktioniert also wunderbar.

  • Anmelden oder Registrieren um Kommentare zu schreiben

hm... sobald ich nur den

Eingetragen von knork (76)
am 21.03.2011 - 10:42 Uhr

hm... sobald ich nur den php-code im block habe, wird dieser block überhaupt nicht mehr angezeigt. steh da grad total aufm schlauch...
könnte das mit dem modul pathauto zusammenhängen?
in beiträgen wzeigt der php-code auch nichts an... hab aber das eingabeformat richtig gewählt.

  • Anmelden oder Registrieren um Kommentare zu schreiben

PHP

Eingetragen von stBorchert (6003)
am 21.03.2011 - 10:37 Uhr

Hast Du das PHP-Modul aktiviert und dann als Eingabeformat auch PHP ausgewählt?

  • Anmelden oder Registrieren um Kommentare zu schreiben

ja hab ich

Eingetragen von knork (76)
am 21.03.2011 - 10:43 Uhr

ja hab ich

  • Anmelden oder Registrieren um Kommentare zu schreiben

Screenshot

Eingetragen von stBorchert (6003)
am 21.03.2011 - 10:47 Uhr

Zeig mal bitte einen Screenshot der Block-Konfiguration.

  • Anmelden oder Registrieren um Kommentare zu schreiben

wie gesagt, wenn ich den code

Eingetragen von knork (76)
am 21.03.2011 - 11:02 Uhr

wie gesagt, wenn ich den code in einen beitrag einfüge passiert auch nichts.

AnhangGröße
block.png 15.05 KB
phpcodeformat.png 26.57 KB
  • Anmelden oder Registrieren um Kommentare zu schreiben

Anhänge

Eingetragen von stBorchert (6003)
am 21.03.2011 - 11:18 Uhr

Ach sorry. Das ist ja Drupal 7.

<?php
$node
= menu_get_object();
if (isset(
$node->field_file)) {
 
$files = field_get_items('node', $node, 'field_file');
 
$items = array();
  foreach (
$files as $file) {
   
$items[] = array(
     
'title' => $file['filename'],
     
'href' => file_create_url($file['uri']),
    );
  }
  print
theme('links', array('links' => $items));
}
?>

Ergebnis: http://screencast.com/t/ecPBdqNOrZ

hth,

 Stefan

  • Anmelden oder Registrieren um Kommentare zu schreiben

vielen dank für die weitere

Eingetragen von knork (76)
am 21.03.2011 - 12:03 Uhr

vielen dank für die weitere mühe, aber im ergebnis ist es bisher das selbe. egal ob ich den code in den beitrag direkt einbaue oder in einen block. mir wird nichts angezeigt....

  • Anmelden oder Registrieren um Kommentare zu schreiben

hoi, versuch mal

Eingetragen von CyberCore (139)
am 21.03.2011 - 12:31 Uhr

hoi, versuch mal http://drupal.org/project/cck_blocks

damit kannst Du dem Feld einen Block zuweisen.

Andreas

  • Anmelden oder Registrieren um Kommentare zu schreiben

Debug

Eingetragen von stBorchert (6003)
am 21.03.2011 - 12:48 Uhr

Installiere Dir doch mal das Modul [do:devel Devel] und probiere Folgendes:

<?php
$node
= menu_get_object();
dsm($node);
?>

Was kommt da?
Auf welcher Seite erwartest Du den Block?

  • Anmelden oder Registrieren um Kommentare zu schreiben

also der block soll auf jeder

Eingetragen von knork (76)
am 21.03.2011 - 13:06 Uhr

also der block soll auf jeder seite sichtbar sein. und auf den seiten die anhänge haben sollen diese dann dort angezeigt werden.

hab das modul installiert und folgendes ist dabei heraus gekommen:
Called from /var/www/web417/html/cms/modules/php/php.module(75) : eval()'d code, line 3 

  • Anmelden oder Registrieren um Kommentare zu schreiben

Screenshot

Eingetragen von stBorchert (6003)
am 21.03.2011 - 13:18 Uhr

Bitte einen Screenshot machen!

Bei mir ergibt das sowas (aufgeklappt): http://screencast.com/t/6z7ommUhb

Nur noch mal zur Sicherheit:
* der Block ist einer Region zugeordnet?
* an den Inhalt wurden Dateien angehängt?

  • Anmelden oder Registrieren um Kommentare zu schreiben

der block ist in sidebar

Eingetragen von knork (76)
am 21.03.2011 - 13:38 Uhr

der block ist in sidebar first und eine datei wurde angehangen...

AnhangGröße
sc2.PNG 37.53 KB
  • Anmelden oder Registrieren um Kommentare zu schreiben

Feldname

Eingetragen von stBorchert (6003)
am 21.03.2011 - 14:25 Uhr

Das Feld heisst bei Dir "field_anhang" und nicht, wie in meinem Beispiel "field_file".

  • Anmelden oder Registrieren um Kommentare zu schreiben

ausgezeichnet. wenn ich so

Eingetragen von knork (76)
am 21.03.2011 - 15:41 Uhr

ausgezeichnet. wenn ich so recht überlege; ich hab das feld auch selbst so benannt, aber da ich mich mit php nicht auskenne bin ich den code im einzelnen nicht durchgegangen.

nochmals vielen dank für deine hilfe!!!

gruß
knork

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich würde zur Vorsicht raten,

Eingetragen von Exterior (2903)
am 21.03.2011 - 17:22 Uhr

Ich würde zur Vorsicht raten, wenn es darum geht, PHP-Code einfach mal so zu kopieren, ohne zu wissen, was er eigentlich macht. Stefan kann man da sicher vertrauen, aber allgemein solltest du mit sowas vorsichtig sein. Mit PHP kann man auch ein paar böse Dinge anstellen.

  • Anmelden oder Registrieren um Kommentare zu schreiben

also soweit funktioniert das

Eingetragen von knork (76)
am 23.03.2011 - 11:48 Uhr

also soweit funktioniert das mit dem block und den anhängen.
wenn jetzt ein artikel keinen anhang hat bekomme ich folgende fehlermeldung
Warning: Invalid argument supplied for foreach() in eval() (Zeile 7

wie kann ich das denn umgehen?

  • Anmelden oder Registrieren um Kommentare zu schreiben

zusätzliche if-Abfrage ob

Eingetragen von sepp68 (444)
am 23.03.2011 - 11:55 Uhr

zusätzliche if-Abfrage ob $files gefüllt ist:

<?php

if ($files) {
  foreach (
$files as $file) {
   
$items[] = array(
     
'title' => $file['filename'],
     
'href' => file_create_url($file['uri']),
    );
  }
}
?>

  • Anmelden oder Registrieren um Kommentare zu schreiben

top, das macht die sache

Eingetragen von knork (76)
am 23.03.2011 - 14:56 Uhr

top, das macht die sache perfekt!!

gruß knork

  • 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 7 Wochen 4 Stunden
  • Hey danke
    vor 7 Wochen 23 Stunden
  • Update: jetzt gibt's ein
    vor 7 Wochen 1 Tag
  • Hallo, im Prinzip habe ich
    vor 7 Wochen 6 Tagen
  • Da scheint die Terminologie
    vor 7 Wochen 6 Tagen
  • Kannst doch auch alles direkt
    vor 8 Wochen 3 Tagen
  • In der entsprechenden View
    vor 8 Wochen 3 Tagen
  • Dazu müsstest Du vermutlich
    vor 8 Wochen 3 Tagen
  • gelöst
    vor 11 Wochen 1 Stunde
  • Ja natürlich. Dass ist etwas,
    vor 11 Wochen 23 Stunden

Statistik

Beiträge im Forum: 250233
Registrierte User: 20460

Neue User:

  • marouane.blel
  • capilclinic
  • Quabzibboter

» 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 15 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