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

View Titel & Argumente

Eingetragen von binki@drupal.org (42)
am 03.08.2008 - 19:48 Uhr in
  • Views
  • Drupal 5.x

Hi,
ich habe folgendes Problem. Ich habe eine View erstellt.
Dabei verwende ich Argumente, dadurch sollte auch der Titel der View dynamisch sein.
Leider bin ich mit Views noch nicht so vertraut und habe deshalb keinen Plan wie ich das View Objekt verändere.
Die Veränderung soll nur bei einem bestimmten Content Type (Comp_View_BY_ARG)angewendet werden.
Der Titel der später für die View verwendet werden soll ist als Field im Node Objekt vorhanden.

Mein Ansatz:
folgender Schnipsel in meine node_content-type.tpl.php

<?php
if($view['name'] == "Comp_View_BY_ARG") $view['page_title'] = $node->field_name[0]['view']; print($view['page_title']);
?>

Das funktioniert nicht.
Stimmt der Code ? Und wo muß er hin ??

Mir http://www.drupalcenter.de/node/11796 geholfen.

Ich habe den Code an mein Problem angepasst:

<?php
if ( $view['name'] == "Comp_View_BY_ARG_NEW" ) {
 
$myterm = $node->field_company[0]['view'];
 
drupal_set_title($myterm->name);
}
?>

Aber wo kann ich den View Namen abgreifen ???

::UPDATE::

<?php
  $myterm
= $node->field_company[0]['view'];
 
drupal_set_title($myterm);
?>

In meine node_content-type.tpl.php eingefügt funktioniert es!
Leider bei allen Views.(Logisch) Wie kann ich das auf einen Typ beschränken ??

Vielen Dank für eure Hilfe,

Ralph

‹ Instal. Probleme mit Views Views, CKK und Image_Gallery - das berühmte Brett vorm Kopf ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Lass Begriffe wie View Object und Node Object mal weg

Eingetragen von quiptime (4972)
am 03.08.2008 - 22:29 Uhr

@binki@drupal.org,

der gepostete Link bezieht sich auf ein Problem unter Drupal 6.

Dein Problem bezieht sich auf Drupal 5. Im Zusammenhang mit Views kann man da nur bedingt Zusammenhaenge herstellen - wenn man von den Drupalfunktionen mal absieht.

Da Du es wohl auf die genannten Funktionen absiehst.

 
In Deinem erstellten View gibt es die in meinem Loesungspost genannten 2 Bereiche: Kopftext, Leertext (Empty Text). Hier ein Screenshot:

 
In diese beiden Bereiche wird der TPHP-Code fuer die Erzeugung der beiden Titel eingetragen. Als Beipiel der Screenshot des Kopfbereiches.


Das Eingabeformat muss auf PHP Code umgeschalten werden.

Soviel zum genannten Link.

 
======================================================================================================

Nun zu Deiner Problemschilderung.

Zitat:

Dabei verwende ich Argumente, dadurch sollte auch der Titel der View dynamisch sein.

Du benoetigst keine Argumente um den Titel des View dynamisch zu aendern. Du schreibst ja selbst, das der Grund der Titelaenderung anderweitig bekannt ist:

Zitat:

Die Veränderung soll nur bei einem bestimmten Content Type (Comp_View_BY_ARG)angewendet werden

Ich verstehe das so das nur bei Nodes eines bestimmten Typ der Titel geaendert wird.

Nun muss aber weiter davon ausgegangen werden das der View nur bei einer einzelnen Anzeige von Inhalten Nodes eines Typs verwendet. Wenn das nicht der Fall ist kann die gestellte Bedingung, nur bei einem bestimmten Content Type, nicht erfuellt werden und bei einer Prufung der aktuell angezeigten Inhalte auf den Nodetype wurde kein eindeutiges Ergebnis entstehen welche die genannte Bedingung erfuellt.

 

Zitat:

Der Titel der später für die View verwendet werden soll ist als Field im Node Objekt vorhanden.

Nun ist es an Dir zu erklaeren was Dein View macht bzw. anzeigt.

 
Am Besten Du erklaerst noch einmal was Du erreichen willst. Lass dabei bitte der Einfachheit halber Begriffe wie View Object und Node Object mal weg.

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

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

@quiptime, vielen Dank für

Eingetragen von binki@drupal.org (42)
am 03.08.2008 - 23:02 Uhr

@quiptime,

vielen Dank für die schnelle Antwort!

Ich habe eine View erstellet, die Argumente verwendet. Beim erstellen der View habe ich keinen Titel angegeben.
Der Titel ist nicht als Argument verfügbar.
Der Titel der View ist in der Node enthalten.

$node->field_company[0]['view']

Das ist das zugehörige CCK Field.

Kurzgesagt.. die Überschrift ist ein Teil des Inhalts.

Cheers,

Ralph

  • Anmelden oder Registrieren um Kommentare zu schreiben

Na wo ist das Problem? Hier ist die Lösung.

Eingetragen von quiptime (4972)
am 03.08.2008 - 23:19 Uhr

Na wo ist das Problem?

Zitat:

Die Veränderung soll nur bei einem bestimmten Content Type (Comp_View_BY_ARG)angewendet werden.

Das kann im View im Bereich des Kopftextes eingetragen werden:

<?php
if ( $node->type == 'Comp_View_BY_ARG' ) {
 
drupal_set_title($node->field_company[0]['view']);
}
?>

Das Eingabeformat am Textbereich im View auf PHP Code einstellen.

 
Screenshot:

 
Was Du in Deinem View mit einem Argument erreichen moechtest ist mir unklar.

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

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

da hab ich mich wohl

Eingetragen von binki@drupal.org (42)
am 03.08.2008 - 23:58 Uhr

da hab ich mich wohl verzettelt zu später stunde.

<?php
if ( $view->name == 'Comp_View_BY_ARG' ) {
 
drupal_set_title($node->field_company[0]['view']);
}
?>

Das ist was ich brauche, da habe ich wohl das falsche gefragt.
Wo muß ich den Code einfügen, damit es den View Namen findet??

Ganz Platt:

<?php
  drupal_set_title
($node->field_company[0]['view']);
?>

Im Header der View funktioniert das nicht.

Danke,

Ralph

  • Anmelden oder Registrieren um Kommentare zu schreiben

CCK Feld sprich mit mir

Eingetragen von quiptime (4972)
am 04.08.2008 - 00:09 Uhr
Zitat:

Im Header der View funktioniert das nicht.

Du meinst schon den im Screenshot bezeichneten Kopftext im View?

Was passiert mit

<?php
  drupal_set_title
('Hallo Welt');
?>

Wenn" Hallo Welt" als Titel zu sehen ist dann stimmt ganz Einfach Dein $node->field_company[0]['view'] nicht.

Linktipp: CCK Feld sprich mit mir

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

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

@quiptime, vielen Dank für

Eingetragen von binki@drupal.org (42)
am 04.08.2008 - 07:05 Uhr

@quiptime,
vielen Dank für Deinen Geduld.

Ralph

  • Anmelden oder Registrieren um Kommentare zu schreiben

Und wie ist nun der Stand der Dinge?

Eingetragen von quiptime (4972)
am 04.08.2008 - 09:18 Uhr

Und wie ist nun der Stand der Dinge? Was ist mit der Generierung des Titel aus dem CCK Feld?

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

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

@quiptime,

Eingetragen von binki@drupal.org (42)
am 11.08.2008 - 13:30 Uhr

@quiptime,
leider sehr unbefriedigend. Hatte letzte Woche keine Zeit auch nur einen Gedanken daran zu haben.
Neue Woche, neues Glück !
Deinen Link zu "CCK Feld sprich mit mir" habe ich mir durchgelesen, aber ich konnte das nicht auf mein Problem anwenden.

drupal_set_title("Hello little Idiot !");

Funktioniert wunderbar!

Zitat:

Wenn" Hallo Welt" als Titel zu sehen ist dann stimmt ganz Einfach Dein $node->field_company[0]['view'] nicht.

Wenn ich direkt im Node template print_r $node; einfüge wird das Feld ausgegeben und trägt auch den Namen.
Ich habe es(print_r $node;) in den Head der View GUI einfügt, dort erzeugt es einen Fehler.

Wie schaffe ich es ein CCK Feld einer Node anzuzeigen(auszulesen), die in einer View angezeigt wird???

Und wo muß ich den Code einfügen ???

Vielen Dank für Eure Hilfe !!!

Cheers,

Ralph

  • Anmelden oder Registrieren um Kommentare zu schreiben

Es ist der Unterschied

Eingetragen von quiptime (4972)
am 11.08.2008 - 13:48 Uhr
Zitat:

Wie schaffe ich es ein CCK Feld einer Node anzuzeigen(auszulesen), die in einer View angezeigt wird???

Die Erklaerung findest Du in meinem Blogbeitrag "CCK Feld sprich mit mir"! Bitte lese meinen Beitrag weniger fluechtig - Sternchen.

Zitat:

Und wo muß ich den Code einfügen ???

Du willst den Code des CCK Feldes als Titel haben:

<?php
$mytitle
= $node->field_company[0]['value'];
drupal_set_title($mytitle);
?>

oder kuerzer:

<?php
drupal_set_title
($node->field_company[0]['value']);
?>

Um voran benannten Code verwenden zu koennen ist es Vorrausetzung das zum Zeitpunkt der Ausfuehrung dieses Code (durch den View) das Nodeobject bekannt bzw. gefuellt ist. Ist dies nicht der Fall wird nichts angezeigt.

 
PS

Sternchen:

Es ist der Unterschied zwischen

Deinem:

$node->field_company[0]['view']

UND

meinem:

$node->field_company[0]['value']

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

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke für die schnelle

Eingetragen von binki@drupal.org (42)
am 11.08.2008 - 20:14 Uhr

Danke für die schnelle Antwort.
Ich habe drupal_set_title($node->field_company[0]['value']) in den Header der View GUI eingefügt.
Leider bekomme ich nichts angezeigt.

Liegt wohl an....

Zitat:

Um voran benannten Code verwenden zu koennen ist es Vorrausetzung das zum Zeitpunkt der Ausfuehrung dieses Code (durch den View) das Nodeobject bekannt bzw. gefuellt ist. Ist dies nicht der Fall wird nichts angezeigt.

Welche möglichkeiten gibt es das Nodeobject zu füllen?
Gibt es noch andere Wege den Titel eine View zu manipulieren?

Zitat:

Die Erklaerung findest Du in meinem Blogbeitrag "CCK Feld sprich mit mir"! Bitte lese meinen Beitrag weniger fluechtig

Hab es mir mehrfach durchgelesen aber konnte es nicht auf mein Problem anwenden. Vielleicht kannst Du mir einen Hinweis geben....

Cheers,

Ralph

  • Anmelden oder Registrieren um Kommentare zu schreiben

Zitat: Welche

Eingetragen von quiptime (4972)
am 11.08.2008 - 21:28 Uhr
Zitat:

Welche möglichkeiten gibt es das Nodeobject zu füllen?

Ich gehe von dem aus was Du in den voran genannten Posts geschrieben hast: Ein View der eine Node anzeigt.

Ist dem so das Dein View eine einzelne Node anzeigt?

==========================================================================================================

Nodeobject initialisieren:

<?php
global $node;
?>

Nodeobject laden an Hand der bekannten Node ID:

<?php
$mynode
= node_load('hier-die Node-id');
?>

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

Nur tote Fische schwimmen mit dem Strom.

XING

  • Anmelden oder Registrieren um Kommentare zu schreiben

Zitat: Ich gehe von dem aus

Eingetragen von binki@drupal.org (42)
am 12.08.2008 - 00:10 Uhr
Zitat:

Ich gehe von dem aus was Du in den voran genannten Posts geschrieben hast: Ein View der eine Node anzeigt.
Ist dem so das Dein View eine einzelne Node anzeigt?

Nein. Hier der Export der View.

  $view = new stdClass();
  $view->name = 'Comp_View_BY_ARG_NEW';
  $view->description = 'Company View By Argument New';
  $view->access = array (
  0 => '1',
);
  $view->view_args_php = '';
  $view->page = TRUE;
  $view->page_title = '';
  $view->page_header = '<?php

drupal_set_title
($node->field_company[0][\'value\']);
?>
';
  $view->page_header_format = '2';
  $view->page_footer = '<?php
print_r
($arg, true);
echo
"test";
?>
';
  $view->page_footer_format = '2';
  $view->page_empty = '';
  $view->page_empty_format = '1';
  $view->page_type = 'teaser';
  $view->url = 'firm/$arg';
  $view->use_pager = TRUE;
  $view->nodes_per_page = '10';
  $view->sort = array (
  );
  $view->argument = array (
    array (
      'type' => 'content: field_company_id',
      'argdefault' => '1',
      'title' => '',
      'options' => '',
      'wildcard' => '',
      'wildcard_substitution' => '',
    ),
  );
  $view->field = array (
    array (
      'tablename' => 'node',
      'field' => 'title',
      'label' => 'Titel',
      'handler' => 'views_handler_field_nodelink',
      'options' => 'link',
    ),
  );
  $view->filter = array (
  );
  $view->exposed_filter = array (
  );
  $view->requires = array(node);
  $views[$view->name] = $view;

Zitat:

Nodeobject laden an Hand der bekannten Node ID

Die Node ID ist nicht bekannt.

Ich habe diesen Schnipsel getestet und der bringt das gewünschte Ergebnis.

<?php
$nid
=intval(3);
$node = node_load($nid);
drupal_set_title($node->field_company[0]['value']);
?>

Ich benötige das Feld $node->field_company[0]['value'] einer der in der View angezeigten Nodes um sie als Titel für die View zu verwenden.
Oder einfacher die Node ID einer der angezeigten Nodes.
Aber wie ??

Cheers,

Ralph

  • Anmelden oder Registrieren um Kommentare zu schreiben

Neuer Tag neues

Eingetragen von binki@drupal.org (42)
am 12.08.2008 - 22:30 Uhr

Neuer Tag neues Glück!

habe ich mir so gedacht, leider konnte ich mein Problem immer noch nicht lösen....

Cheers,

Ralph

  • Anmelden oder Registrieren um Kommentare zu schreiben

Problem noch nicht

Eingetragen von binki@drupal.org (42)
am 10.09.2008 - 10:58 Uhr

Problem noch nicht gelöst.
Ich bin immer noch auf der Suche nach einer Lösung meines Problems.

Nochmal kurz zusammengefasst,
Problem: Ich möchte den Titel einer View abhängig vom Inhalt der View darstellen.
Dazu muss ich ein CCK Feld einer der in der View dargestellten Nodes auslesen.
Bzw. benötige ich die Node ID einer der in der View dargestellten Nodes.
Wie bekomme ich die Node ID der in der View dargestellten Nodes.

Sobald ich eine Node ID habe funktioniert folgender Code (die 3 habe ich als Beispiel zum Testen verwendet) Den Code setzen ich im Head der View ein:

<?php
$nid
=intval(3);
$node = node_load($nid);
drupal_set_title($node->field_company[0]['value']);
?>

Vielleicht kann mir jemand helfen das Problem zu lösen. Vielen Dank vorab!

Cheers,

Ralph

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • 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?
Weiter

Neue Kommentare

  • Inzwischen sind wir bei
    vor 3 Tagen 2 Stunden
  • Migrieren von D7 auf D8/ D10/ D11
    vor 3 Tagen 18 Stunden
  • melde mich mal wieder, da ich
    vor 8 Wochen 22 Stunden
  • Hey danke
    vor 8 Wochen 1 Tag
  • Update: jetzt gibt's ein
    vor 8 Wochen 2 Tagen
  • Hallo, im Prinzip habe ich
    vor 8 Wochen 6 Tagen
  • Da scheint die Terminologie
    vor 9 Wochen 32 Minuten
  • Kannst doch auch alles direkt
    vor 9 Wochen 4 Tagen
  • In der entsprechenden View
    vor 9 Wochen 4 Tagen
  • Dazu müsstest Du vermutlich
    vor 9 Wochen 4 Tagen

Statistik

Beiträge im Forum: 250235
Registrierte User: 20462

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