Ergebnis 1 bis 4 von 4

Thema: Nachrichten-Eintrag: Überprüfen, ob es Kommentare hat (im Template "news_full.tpl")

  1. #1
    Contao-Nutzer Avatar von cerco
    Registriert seit
    07.04.2011.
    Ort
    Aarau
    Beiträge
    8

    Frage Nachrichten-Eintrag: Überprüfen, ob es Kommentare hat (im Template "news_full.tpl")

    Hallo zusammen,

    Leider habe bis jetzt nirgends was darüber gefunden, deshalb erlaube ich mir ein Thema zu dieser Frage zu eröffnen.

    Stand der Dinge:

    1. User schaut sich einen einzelnen Nachrichten-Eintrag an.
    2. Wenn es Kommentare zu diesem Eintrag hat, dann zeigt es mir in den Meta-Infos (MetaFields) an, wieviele Kommentare zu diesem Eintrag bestehen.

    Soweit so gut. Das passt.

    Was ich zusätzlich gerne hätte:

    Falls keine Kommentare zu oben erwähntem Eintrag vorhanden sind, dann soll in den Meta-Infos einen Link angezeigt werden, der lautet: "Schreiben Sie den ersten Kommentar zu diesem Beitrag".

    Meine Lösung: (hat bis anhin leider nicht geklappt)

    Im Template zum Nachrichten Eintrag ("news_full.tpl") füge ich eine Abfrage ein, die in etwa folgendermassen aussehen könnte:

    Code:
    <?php if ($this->hascomment): ?>
    <?php echo $this->commentCount; ?>
    <?php else: ?>		
    <a href="<?php echo $this->link; ?>#writeacomment" title="Schreiben Sie den ersten Kommentar zu diesem Beitrag">noch keinen Kommentar</a>
    <?php endif; ?>
    Meine Frage:

    Da "if ($this->hascomment):" anscheinend nicht funktioniert, wollte ich fragen, ob es eine andere Abfrage gibt, mit der ich überprüfen könnte, ob Kommentare vorhanden sind.

  2. #2
    Contao-Nutzer Avatar von cerco
    Registriert seit
    07.04.2011.
    Ort
    Aarau
    Beiträge
    8

    Daumen hoch Problem gelöst, sorry für Störung.

    Bin im Forum auf folgenden Beitrag gestossen: Alle verfügbaren Variablen in einem Template anzeigen

    Habe mir die Variablen im "news_full.tpl" anzeigen lassen und gesehen, dass es kein "hascomment" oder ähnliches gibt, dafür "numberOfComments" womit meine Lösung nun folgendermassen ausschaut:

    Code:
    <?php if ($this->numberOfComments < 1): ?>
    	<a href="<?php echo $this->link; ?>#writeacomment" title="Schreiben Sie den ersten Kommentar zu diesem Beitrag">noch keinen Kommentar</a>
    						
    <?php else: ?>	
    	<?php if ($this->numberOfComments = 1): ?>
    		<a href="<?php echo $this->link; ?>#writeacomment" title="Schreiben Sie einen Kommentar zu diesem Beitrag"><?php echo $this->numberOfComments; ?> Kommentar</a>
    	<?php else: ?>	
    		<a href="<?php echo $this->link; ?>#writeacomment" title="Schreiben Sie einen Kommentar zu diesem Beitrag"><?php echo $this->numberOfComments; ?> Kommentare</a>
    	<?php endif; ?>
    					
    <?php endif; ?>

  3. #3
    Contao-Fan Avatar von mike_mcfly
    Registriert seit
    29.11.2009.
    Ort
    Waiblingen
    Beiträge
    462

    Standard Kommentar-Abfrage

    Ahoi zusammen,

    ich habe das jetzt mal so umgesetzt (Contao 2.10.2):

    PHP-Code:
    <?php if ($this->commentsTotal 1): ?>
        <h2>Noch kein Kommentar</h2>
        <?php else: ?>
    <?php 
    if ($this->commentsTotal 1): ?>
        <h2>Bisher ein Kommentar:</h2>
        <?php else: ?>
        <h2>Kommentare:</h2>
        <?php endif; ?>
    <?php 
    endif; ?>
    Obwohl ich drei Kommentare habe, wird immer nur "Bisher ein Kommentar:" ausgegeben.
    Das wird sicher an meinen ungenügenden PHP-Kenntnissen liegen.

    Wo hab ich einen Denkfehler?


    +++++++++++ Denkfehler gefunden: +++++++++++
    Ich hatte das doppelte Gleichzeichen vergessen, so klappt's jetzt:

    PHP-Code:
    <?php if ($this->commentsTotal 1): ?>
        <h2>Noch kein Kommentar</h2>
        <?php else: ?>
    <?php 
    if ($this->commentsTotal == 1): ?>
        <h2>Bisher ein Kommentar:</h2>
        <?php else: ?>
        <h2>Kommentare:</h2>
        <?php endif; ?>
    <?php 
    endif; ?>
    Geändert von mike_mcfly (21.10.2011 um 02:06 Uhr) Grund: Problem gelöst
    .................................................. ...............................
    Warum der Marine beitreten, wenn man Pirat sein kann?
    - Steve Jobs

  4. #4
    Contao-Nutzer
    Registriert seit
    20.04.2012.
    Beiträge
    1

    Standard

    Hallo Mike.

    Ich habe dein letztes Script auf der Nachrichtenseite eingebaut und es funktioniert auch super.
    Nun möchte ich aber die Anzahl der Kommentare auch auf der Übersichtsseite der News haben.

    Hast du da eine Idee?

    Chris

    Zitat Zitat von mike_mcfly Beitrag anzeigen
    Ahoi zusammen,

    ich habe das jetzt mal so umgesetzt (Contao 2.10.2):

    PHP-Code:
    <?php if ($this->commentsTotal 1): ?>
        <h2>Noch kein Kommentar</h2>
        <?php else: ?>
    <?php 
    if ($this->commentsTotal 1): ?>
        <h2>Bisher ein Kommentar:</h2>
        <?php else: ?>
        <h2>Kommentare:</h2>
        <?php endif; ?>
    <?php 
    endif; ?>
    Obwohl ich drei Kommentare habe, wird immer nur "Bisher ein Kommentar:" ausgegeben.
    Das wird sicher an meinen ungenügenden PHP-Kenntnissen liegen.

    Wo hab ich einen Denkfehler?


    +++++++++++ Denkfehler gefunden: +++++++++++
    Ich hatte das doppelte Gleichzeichen vergessen, so klappt's jetzt:

    PHP-Code:
    <?php if ($this->commentsTotal 1): ?>
        <h2>Noch kein Kommentar</h2>
        <?php else: ?>
    <?php 
    if ($this->commentsTotal == 1): ?>
        <h2>Bisher ein Kommentar:</h2>
        <?php else: ?>
        <h2>Kommentare:</h2>
        <?php endif; ?>
    <?php 
    endif; ?>

Aktive Benutzer

Aktive Benutzer

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

Lesezeichen

Lesezeichen

Berechtigungen

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