Ergebnis 1 bis 11 von 11

Thema: Catalog Manager: wie Page Title setzen

  1. #1
    Contao-Fan Avatar von MrLumbergh
    Registriert seit
    11.01.2012.
    Ort
    Hamburg
    Beiträge
    400

    Standard Catalog Manager: wie Page Title setzen

    Moin Leute!

    Ich habe ein ganz ähnliches Problem.
    Ich habe eine Catalog Manager Detailseite und diese mit einem eigenen Template erstellt.
    Das läuft soweit hervorragend - außer, dass der Page Title lediglich "Details" ist.
    Dies würde ich gerne mit dem jeweiligen Produktnamen austauschen.

    All die Ideen hier und alles, was mit ChatGPT vorschlägt, funktioniert leider in Contao 5.3 bei mir nicht.

    Zur Info: Es ist ein .html5 Template.

    Hat jemand (nachdem 6 Jahre ins Land gegangen sind) eine neue Idee?

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    37.191
    Partner-ID
    10107

    Standard

    Sollte das der Catalog Manager nicht automatisch machen?
    » sponsor me via GitHub or Revolut

  3. #3
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    37.191
    Partner-ID
    10107

    Standard

    Moderation: Beiträge in einen eigenen Thread verschoben.
    » sponsor me via GitHub or Revolut

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    37.191
    Partner-ID
    10107

    Standard

    Welche Version des Catalog Manager nutzt du denn überhaupt? Weil eigentlich sollte das ja bereits gesetzt werden: https://github.com/alnv/contao-catal...stener.php#L27
    » sponsor me via GitHub or Revolut

  5. #5
    Contao-Fan Avatar von MrLumbergh
    Registriert seit
    11.01.2012.
    Ort
    Hamburg
    Beiträge
    400

    Standard

    Moin,

    ich hole mal etwas aus.
    Die aktuellste Version des Catalog Managers.
    Und ja, normalerweise macht das alles der CM selber.
    Leider scheint es ein Problem mit den Datenbankabfragen zu geben - in der Version für 5.3 geht die CPU Last immer mega hoch, gerade, wenn man Kindtabellen hat.
    Dadurch hatten wir das Problem, dass die Seiten entweder gar nicht oder erst nach 25 Sekunden geladen haben.
    Wenn wir die Daten via Contao Liste geladen haben, waren sie sofort da.
    Und deshalb haben wir es umbauen müssen und nutzen nun zur Ausgabe nicht den CM sondern ein eigenes Template.
    Und jetzt sind die Seiten in Millisekunden geladen. Sogar schneller, als andere CM Seiten (z.B. Magazin) Kannst Du hier sehen: followfood.de

    Und nun ist halt alles cool bis auf den Seitentitel.

  6. #6
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    37.191
    Partner-ID
    10107

    Standard

    Dann würde ich mich an deiner Stelle eher um das andere Problem kümmern - oder kümmern lassen.
    » sponsor me via GitHub or Revolut

  7. #7
    Contao-Fan Avatar von MrLumbergh
    Registriert seit
    11.01.2012.
    Ort
    Hamburg
    Beiträge
    400

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Dann würde ich mich an deiner Stelle eher um das andere Problem kümmern - oder kümmern lassen.
    Ja, ich habe Alex auch bereits angeschrieben - aber der Kunde kann ja nicht warten, bis da was passiert. Die Seite muss ja laufen...

  8. #8
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    37.191
    Partner-ID
    10107

    Standard

    Also rein grundsätzlich ist es in Contao so, dass du dir den ResponseContext holst und dort im HtmlHeadBag den Title setzt: https://docs.contao.org/dev/framewor...he-htmlheadbag
    » sponsor me via GitHub or Revolut

  9. #9
    Contao-Fan Avatar von MrLumbergh
    Registriert seit
    11.01.2012.
    Ort
    Hamburg
    Beiträge
    400

    Fehler

    YES!

    So geht es (für alle, die zukünfig so ein problem haben).

    Im html5 Template ein use einbauen:
    PHP-Code:
    use Contao\System
    Und weiter unten im Code dann den Titel setzen:
    PHP-Code:
    /* set title */
    if (class_exists('Contao\System')) {
        
    $container System::getContainer();
        if (
    $container) {
            
    $responseContextAccessor $container->get('contao.routing.response_context_accessor');
            if (
    $responseContextAccessor) {
                
    $responseContext $responseContextAccessor->getResponseContext();
                if (
    $responseContext && $responseContext->has(\Contao\CoreBundle\Routing\ResponseContext\HtmlHeadBag\HtmlHeadBag::class)) {
                    
    $htmlHeadBag $responseContext->get(\Contao\CoreBundle\Routing\ResponseContext\HtmlHeadBag\HtmlHeadBag::class);
                    
    $htmlHeadBag->setTitle($this->title);
                }
            }
        }

    DANKE!

  10. #10
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    37.191
    Partner-ID
    10107

    Standard

    Folgendes brauchst du nicht:

    PHP-Code:
    if (class_exists('Contao\System')) { 
    PHP-Code:
    if ($container) { 
    PHP-Code:
    if ($responseContextAccessor) { 
    » sponsor me via GitHub or Revolut

  11. #11
    Contao-Nutzer Avatar von Schmidty
    Registriert seit
    06.06.2011.
    Ort
    Pforzheim
    Beiträge
    212

    Standard

    Für den Page Title in der Detailansicht musst Du dem Feld das den Page-Title enthält die Rolle „title“ zuweisen
    IMG_3314.jpeg

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •