View-Theme: Labels der Felder werden nicht angezeigt
Eingetragen von deelite (468)
am 30.10.2010 - 15:40 Uhr in
am 30.10.2010 - 15:40 Uhr in
Hallo,
ich habe eine views-view-fields.tpl.php.
Dort gebe ich einzelne Felder aus und hätte auch gern die Beschriftung angezeigt. Diese habe ich benutzerdefiniert eingegeben, Format: standard.
In der views-view-fields.tpl.php steht:
<?php if ($field->label): ?>
<label class="views-label-<?php print $field->class; ?>">
<?php print $field->label; ?>:
</label>
<?php endif; ?>
<?php print $fields['field_customer_value']->content; ?>
Das Feld wird tadellos ausgegeben, die Beschriftung jedoch nicht.
Im Inhaltstyp sind die Beschriftungen nicht ausgeblendet.
Bitte helft mir weiter.
Vielen Dank schon mal fürs Lesen.
- Anmelden oder Registrieren um Kommentare zu schreiben
unterdrückt?
am 30.10.2010 - 15:52 Uhr
Hast du mal nachgeschaut, ob das Label im Quellcode steht? Vielleicht wird es ja ausgegeben, dann aber das label per CSS unterdrückt?
Bist Du denn sicher, daß das
am 30.10.2010 - 16:27 Uhr
Bist Du denn sicher, daß das Label so anzusprechen ist, also $field->label ? Wenn nicht, bau mal in das Template ein:
<?php print '<pre>' . print_r($field, true) . '</pre>' ?>
Damit kannst Du Dir die Struktur von Field genau ansehen und festellen, wie Du das Label ansprechen mußt.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Vielen Dank für Eure
am 31.10.2010 - 10:50 Uhr
Vielen Dank für Eure Antworten.
Im Quellcode taucht das Label nicht auf. Da bleibt alles leer.
<?php
print '<pre>' . print_r($field, true) . '</pre>'
?>
Habe ich eingesetzt. Allerdings gibt es keine Ausgabe dazu. Im Quelltext erscheint nur ein
<pre> </pre>
Hat das etwas mit dem Devel-Modul zu tun? Das ist bei mir aktiviert.
Cache habe ich geleert.
Wenn Du noch mal in Deinem
am 31.10.2010 - 12:28 Uhr
Wenn Du noch mal in Deinem ersten Posting nachsiehst, stellst Du fest, daß die Variable, die es tut, $fields und nicht $field heißt. Das ist mir auch durchgegangen. Also einsetzten:
<?php
print '<pre>' . print_r($fields, true) . '</pre>'
?>
und nachsehen, was dabei herauskommt.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Hallo Werner, jetzt geht da
am 31.10.2010 - 14:23 Uhr
Hallo Werner,
jetzt geht da was.
Ich erhalte eine gigantische Ausgabe, welche, was ich auch tue, nie vollständig wird. Es bricht dann immer mit einem Speicherfehler ab, obwohl für PHP mehr als das 4fache der angeforderten Menge zur Verfügung steht.
Die abgebrochene Ausgabe ergibt eine 125MB große html-Datei. Das soll doch bestimmt nicht so sein, oder?
Wenn doch, wonach sollte ich denn in etwa suchen in der Ausgabe?
Gruß,
deelite
Wenn Du nur das Label für ein
am 31.10.2010 - 14:50 Uhr
Wenn Du nur das Label für ein bestimmtes Feld brauchst, dann kannst Du auch an Stelle von $fileds die Ausgabe einschränken mittels $fields['DeinFeldname']. Dann sollte die Ausgabe kleiner werden (wahrscheinlich aber immer noch lang).
Du willst doch wissen, wie Du an das Label kommst. Dafür mußt Du die Struktur kennen, damit Du das Label auch ansprechen kannst. Diese Struktur gibt Dir print_r aus. Danach solltest Du klarer sehen.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
$fields und $field
am 31.10.2010 - 15:30 Uhr
Ich habe nochmal nachgesehen. Du hast dich vermutlich am Template von views-view-fields.tpl.php aus dem Views-Modul orientiert.
Da steht zu Beginn so etwas wie
<?php foreach ($fields as $id => $field): ?>
. Falls du das nicht übernommen hast, bleibt deine $field-Variable auch leer. Deshalb funktioniert nur der Part mit $fields.Ja, jetzt ist die Ausgabe
am 31.10.2010 - 15:35 Uhr
Ja, jetzt ist die Ausgabe überschaubar. Auch, nachdem ich nur 1 Node habe ausgeben lassen.
Leider steige ich aber nicht dahinter, wo hier der Schlüssel meines Glückes liegt.
Ich könnte mir vorstellen, dass z.B. diese Zeilen hier etwas damit zu tun haben:
<?php
[field_agency_value] => Array
(
[id] => field_agency_value
[table] => node_data_field_agency
[field] => field_agency_value
[relationship] => none
[group_type] => group
[label] => Agentur
[exclude] => 0
[alter] => Array
(
[alter_text] => 0
[text] =>
[make_link] => 0
[path] =>
[absolute] => 0
[alt] =>
[link_class] =>
[prefix] =>
[suffix] =>
[target] =>
[trim] => 0
[max_length] =>
[word_boundary] => 1
[ellipsis] => 1
[strip_tags] => 0
[html] => 0
)
?>
... um das Label "Agentur" ausgeben zu lassen.
Nur leider weis ich echt nicht, wie ich es ansprechen soll.
Das ist doch jetzt
am 31.10.2010 - 15:48 Uhr
Das ist doch jetzt einfach (vorausgesetzt, es fehlen hier keine Zeilen ???):
<?php print $fields['field_agency_value']['label']; ?>
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *
Werner, vielen Dank für Deine
am 31.10.2010 - 19:00 Uhr
Werner, vielen Dank für Deine Mühe.
Jetz bekomme ich für die betreffende Zeile jedoch ein:
Fatal error: Cannot use object of type stdClass as array
Das im vorherigen Post waren natürlich nicht alle Zeilen der Ausgabe. Wenn ich die hier aber komplett poste, dürfte das keiner sehen wollen. Ich hatte gehofft, die für mein Problem wichtigen Zeilen gefunden zu haben.
Habe ich falsch gelegen?
Leider hast Du falsch
am 31.10.2010 - 19:42 Uhr
Leider hast Du falsch gelegen. Schicke mir doch bitte den kompletten Output mal als Mail an help at drupal-in-duesseldorf Punkt de. Ich sehen ihn mir mal an und melde mich mit dem hoffentlich richtigen Statement.
Beste Grüße
Werner
.
Werner
drupal-training.de
Moderator und Drupal Trainer
* - - - - - - - - - - - - - - - - - - - - - - - - - - - *