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

Node Title automatisch als Image Alt-Tag

Eingetragen von Milcho (10)
am 28.07.2012 - 11:57 Uhr in
  • Themes & Theming
  • Drupal 7.x

Hallo,

leider habe ich bislang keine richtige Lösung auf google oder hier im Forum gefunden. Ich möchte gern das bei einem
verschiedenen Node-Typen immer bei Bildern (im field_images) der Node Titel als Alt-Tag eingefügt wird.

Ich wollte es über die Field_images.tpl.php versuchen leider weis ich nicht wie da die Variable ist für den Node-Titel bzw.
was ich machen muss um den titel dort nutzen zu können.

Ich habe auch verschiedene sachen gefunden das es wohl über eine Funktion in der Template.php gehen soll, jedoch
sind meine PHP-Kenntnisse eher bescheiden =)

Habt Ihr vielleicht bereits eine Lösung oder gibt es ein Modul was dieses für mich ermöglicht?

mfg Milcho

‹ Marinelli Giordani unter D7 möglich? [gelöst]Theme kopieren ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo Milcho,abgesehen

Eingetragen von Joenet (284)
am 28.07.2012 - 12:40 Uhr

Hallo Milcho,

abgesehen davon, ob es eine Lösung für Dein "Problem" gibt - sowas macht man einfach nicht. Wenn Du auf diese Art den Alt-Attribut bestimmen möchtest, dann verstehst Du nicht im geringsten, welchen Sinn er hat. Er soll keineswegs gleich wie der Nodetitel und auch nicht gleich wie der Bildtitel sein. Er sollte am besten den Inhalt des Bildes in einem kurzen Satz beschreiben, was auf dem Bild zu sehen ist (Stichwort: Barrierefreiheit). Mehr z.B. hier: Wofür gibt es das ALT Attribut überhaupt?

Grüße
Joe

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo, mir ist schon bewusst

Eingetragen von Milcho (10)
am 28.07.2012 - 12:54 Uhr

Hallo,

mir ist schon bewusst wie man ALT-Tags benutzt. Ich suche ne Antwort auf meine Frage und diese ist nicht was sind ALT-Tags!

Das ist der Grund warum ich keine Foren mag, ich brauch eine Antwort zu meiner Frage und keine Belehrungen. Wenn du also nichts
zur Lösung beitragen kannst, dann poste doch einfach nichts zu dieser Frage.

Desweiteren ist der Nodes-Titel der Name einer Veranstaltung und das BIld ist der Flyer von dieser. Somit ist der Node-Titel die Beschreibung des BIlds.
Und wenn ich eine Lösung habe wie ich den Notes Titel darein bekomme, kann ich dort dann auch noch Text einfügen wie "Der Flyer von [Node-Titel].

Da die Veranstaltungen vom Enduser gepflegt werden. Möchte ich eine automatische Lösung die dem User Arbeit erspart und sicherstellt das der ALT-Tag
sinnvoll ist.

Aber all diese Infos die ich dir jetzt geben habe, warum ich das so machen will sind für meine eigentliche Frage unnötig.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Milcho schrieb Das ist der

Eingetragen von Joenet (284)
am 28.07.2012 - 13:05 Uhr
Milcho schrieb

Das ist der Grund warum ich keine Foren mag, ich brauch eine Antwort zu meiner Frage und keine Belehrungen.

Wenn Du keine Foren magst, dann poste einfach nicht und suche dir die Lösung für Dein "Problem" selber.

Milcho schrieb

Desweiteren ist der Nodes-Titel der Name einer Veranstaltung und das BIld ist der Flyer von dieser. Somit ist der Node-Titel die Beschreibung des BIlds.

Keinesfalls. Ein Blinder z.B. wird anhand des Names der Veranstaltung nicht verstehen können, was genau auf dem Bild zu sehen ist.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Warum sollte man auch alle

Eingetragen von Milcho (10)
am 28.07.2012 - 13:22 Uhr

Warum sollte man auch alle Infos die bereits in der Node als Text vorhanden sind nochmals in die Beschreibung des Bilds machen.
Das ist unnötig. Weiterhin ist dieses nicht meine Frage. Ich bitte erneut wenn du keine Lösung für mein Problem hast, entsprechend nicht
darauf zu Antworten.

Danke

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du könntest probieren, in der

Eingetragen von Exterior (2903)
am 28.07.2012 - 13:59 Uhr

Du könntest probieren, in der template.php deines Themes die theme_image() zu überschreiben. Da prüfst du, ob's ein Node-Objekt gibt und setzt dann das Alt-Attribute entsprechend.

Z. B. so:

<?php
meintheme_image
($path, $alt = '', $title = '', $attributes = NULL, $getsize = TRUE) {
  if ( (
arg(0) == 'node') && (is_numeric(arg(1))) ) {
    global
$node;
   
$alt = 'Flyer von ' . $node->title;
  }
 
  return
theme_image($path, $alt, $title, $attributes, $getsize);
}
?>

'meintheme' musst du durch den Namen deines Themes ersetzen.

Ist aber nur eine ungetestete Idee, musst du mal probieren. Und wenn du die template.php geändert hast, solltest du danach den Theme-Cache leeren.

  • Anmelden oder Registrieren um Kommentare zu schreiben

geht leider nicht .. es kommt

Eingetragen von Milcho (10)
am 28.07.2012 - 14:10 Uhr

geht leider nicht .. es kommt immer die Fehlermeldung: "Notice: Trying to get property of non-object in " und er bezieht sich immer auf die Zeile " $alt = 'Flyer von ' . $node->title;"

  • Anmelden oder Registrieren um Kommentare zu schreiben

Mist, dann hat er an der

Eingetragen von Exterior (2903)
am 28.07.2012 - 14:31 Uhr

Mist, dann hat er an der Stelle das Node-Objekt noch nicht in den Globals...

In der template.php müsste es eine Variable geben, in der die ganzen Umgebungs-Variablen abgelegt werden. Die heißt meistens $vars, $variables oder so, musst du mal schauen, wie die bei dir heißt und in folgendem Code ersetzen:

<?php
meintheme_image
($img_variables) {
  if ( (
arg(0) == 'node') && (is_numeric(arg(1))) ) {
   
$img_variables['alt'] = 'Flyer von ' . $vars['node']->title;
  }
 
  return
theme_image($img_variables);
}
?>

  • Anmelden oder Registrieren um Kommentare zu schreiben

Mhh Ich weis nicht wo ich das

Eingetragen von Milcho (10)
am 28.07.2012 - 14:39 Uhr

Mhh Ich weis nicht wo ich das finde, ich nutze immer das Zen-Theme und dann halt das Sub-Theme davon, das heißt die Template.php meines Themes ist leer.
Ich bin noch realtiv frisch in Drupal, ich hab mich bislang noch nicht viel mit der Template.php beschäftigt. Bis lang habe ich immer nur Felder und Ansichten per
tpl.php umgebaut. Kannst du mir da vllt a Tipp geben wo ich da ne Info bekomme oder was ich machen muss?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Welches Sub-Theme verwendest

Eingetragen von Exterior (2903)
am 28.07.2012 - 14:42 Uhr

Welches Sub-Theme verwendest du denn?

  • Anmelden oder Registrieren um Kommentare zu schreiben

nutze dieses Theme dort gibt

Eingetragen von Milcho (10)
am 28.07.2012 - 14:48 Uhr

Zen Theme nutze dieses Theme dort gibt es immer ein Ordner "STARTERKIT" den kopiert man dann in den Theme-Ordner und passt die .Info usw an den gewünschten Theme-Name an und fängt dann halt an alles andere per tpl´s zu überschreiben

  • Anmelden oder Registrieren um Kommentare zu schreiben

function

Eingetragen von Milcho (10)
am 28.07.2012 - 16:10 Uhr

function MYTHEME_image($img_variables) {
  if ( (arg(0) == 'node') && (is_numeric(arg(1))) ) {
  $title = drupal_get_title();
    $img_variables['alt'] = 'Flyer von ' . $title;
  }
 
  return theme_image($img_variables);
}

So geht es jedoch leider nur auf der Seite der Nodes, ich lasse aber oft per "Views" Listen erstellen, dort ist dann der "alt" leider nur als "alt" angeben. In der View habe ich eingestellt "Inhalt - Vollständiger Inhalt" kann man das noch irgendwie hin bekommen das er das auch da macht?

Edit also hab jetzt soweit das er es überall macht, jedoch wird dann auf der z.b. auf der Startseite (View -> bestimmte inhaltstyp) dann der Alt-tag auf "Startseite" gesetzt, bekomm es nicht hin das er die Node-Titel Variable findet.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Push, hat jmd noch ne Lösung

Eingetragen von Milcho (10)
am 30.07.2012 - 18:50 Uhr

Push,

hat jmd noch ne Lösung für das Problem mit "Views" und wie ich beim Zen-Theme an den Node Titel komme?

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

Statistik

Beiträge im Forum: 250233
Registrierte User: 20450

Neue User:

  • Mroppoofpaync
  • 4aficiona2
  • AppBuilder

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