Spoiler-Funktion o.ä. für Gewinnspiel?

  • Hallo,
    ich habe einen Adventskalender gestartet, wo man jeden Tag eine Frage beantworten muss, und unter allen richtigen Antworten ein Amazon-Gutschein verlost wird.
    Jetzt ist es so, dass es bei manchen Fragen unfair ist, wenn alle die Antworten sehen, weil sich die ersten die Arbeit machen, und die anderen nur noch die Lösungen abzuschreiben brauchen.
    Daher habe ich es jetzt provisorisch alle Kommentare auf Moderieren geschaltet.
    Aber das finde ich nicht so schön, weil so niemand sieht, ob / wie viele Antworten schon abgegeben wurden. :neutral:

    - Gibt es evtl. eine Möglichkeit, dass ich nur die *Ergebnisse* im Kommentar unsichtbar mache (und dann zum Ende des Tages freischalte)?
    - Oder wenigstens die Möglichkeit, dass immer eine Zahl angezeigt wird, wie viele Kommentare es schon gibt?

    --> Adventskalender08 - Kategorie - Abo-Blog von Abo-bar.de

    Einmal editiert, zuletzt von Olaf (6. Dezember 2008 um 16:47)

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Ne, diese Anzeige habe ich ja. (Habe nur "Kein Kommentar" durch "*Antworten*" ersetzt.)

    Ich möchte aber, dass auch die Kommentare (zahlenmäßig) angezeigt werden, die zwar abgeschickt, aber von mir noch nicht freigeschaltet wurden (also noch in der Moderationsschleife hängen).

    Im Moment sieht es halt doof aus, weil so jeder denkt, es hätte beim Gewinnspiel (4. Türchen) noch keiner mitgemacht... :-?

    Es soll also für potentielle Mitspieler ersichtlich sein: "X Leute haben schon am heutigen Gewinnspiel teilgenommen", nur die Antworten der anderen Mitspieler sollen erst am Ende des Tages sichtbar werden.

    Einmal editiert, zuletzt von Olaf (6. Dezember 2008 um 16:47)

  • Der Code kommt aus der comments.php des Default-Themes, geänderte Zeilen hervorgehoben:


    1, 2, 3 sind dabei die IDs deiner Seiten.

  • Danke, aber leider kommt eine Fehlermeldung:

    Parse error: syntax error, unexpected '}' in /kunden/156373_10827/webseiten/blog/wp-content/themes/default_de/comments.php on line 42

    Einmal editiert, zuletzt von Olaf (6. Dezember 2008 um 16:48)

  • Sag mal, was ist das für komischer Code am Anfang deiner Beiträge hier? Versuchst du da ein Bild anzuzeigen??

    Und mein magentafarben hervorgehobener Code ist syntaktisch korrekt. Du könntest noch ein Semikolon nach comment_text()[COLOR="Red"];[/COLOR] setzen. Ansonsten poste mal deinen Code.

  • Sag mal, was ist das für komischer Code am Anfang deiner Beiträge hier? Versuchst du da ein Bild anzuzeigen??

    Und mein magentafarben hervorgehobener Code ist syntaktisch korrekt. Du könntest noch ein Semikolon nach comment_text()[COLOR=Red];[/COLOR] setzen. Ansonsten poste mal deinen Code.

    Nö, ist nicht korrekt, bei mir kommt auch die Fehlermeldung

    Parse error: syntax error, unexpected '!', expecting '(' in .../comments.php on line 59

    Ich hab es auch mal umgebaut:

    PHP
    <?php 
                            if ( is_page( array(36,37,38) )  ) {
    
    
                                      } else {
                                      comment_text();
                                      } ?>

    dann kommt zumindest keine Fehlermeldung, aber die Kommentare werden ganz normal angezeigt.

    Irgendwas stimmt mit deinem Array nicht.

    Einmal editiert, zuletzt von DerPatrick (5. Dezember 2008 um 17:03)

  • Sag mal, was ist das für komischer Code am Anfang deiner Beiträge hier?

    DAS frage ich mich auch schon, seit ich hier angemeldet bin... Der Code erscheint leider automatisch bei jeder Nachricht, die ich tippe und lässt sich auch durch Editieren nicht entfernen. :-?

    Zitat

    Und mein magentafarben hervorgehobener Code ist syntaktisch korrekt. Du könntest noch ein Semikolon nach comment_text()[COLOR=Red];[/COLOR] setzen. Ansonsten poste mal deinen Code.

    Also, mit dem Semikolon bekomme ich jetzt zwar keine Fehlermeldung mehr, aber auch nicht das gewünschte Ergebnis.
    Habe gerade getestet mit Einstellung "Beiträge moderieren" und "Nicht moderieren", und es gab keinen Unterschied zum Verhalten mit dem Ursprungscode.

    Mein Code:

    Der veränderte Code:

    Getestet mit dem Nikolaus-Türchen: http://www.abo-bar.com/blog/index.php…nder-6-turchen/

    Einmal editiert, zuletzt von Olaf (6. Dezember 2008 um 16:49)

  • Nö, ist nicht korrekt, bei mir kommt auch die Fehlermeldung


    is_page() ist eine boolsche Funktion, das "!" ist ein "not". Das Array ist ab Version 2.5 als Parameter möglich. Syntaktisch ists also korrekt. Du hast auch Version 2.5+?
    Conditional Tags WordPress Codex

    Zitat von Kastanienbaum

    Also, mit dem Semikolon bekomme ich jetzt zwar keine Fehlermeldung mehr, aber auch nicht das gewünschte Ergebnis.
    Habe gerade getestet mit Einstellung "Beiträge moderieren" und "Nicht moderieren", und es gab keinen Unterschied zum Verhalten mit dem Ursprungscode.


    Auch für dich: WP 2.5+?

    Ansonsten probiert mal:

    PHP
    if ( !( is_page(1) || is_page(2) || is_page(3) ) ) {


    Das sollte auch in älteren Versionen funktionieren.

  • Ich habe die allerneueste Version (2.6.5).

    Habe Deinen neuen Code trotzdem mal eingebaut.

    - Aber wenn ich "Kommentare moderieren" eingestellt habe, erscheint er wieder gar nicht (wird aber auch auf der Hauptseite nicht gezählt).
    - Und wenn ich "Nicht moderieren" einstelle, dann erscheint der Text ganz normal sofort (war er aber ja nicht soll)... :(


    Ich hätte halt ganz gerne, dass man zwar sieht, dass (und auch wie viele) Leute schon am Gewinnspiel mitgemacht haben, aber nicht ihre Lösungen. Die möchte ich dann erst am Ende jeden Tages freischalten.
    - Keiner eine Idee? :confused:

    Könnte man nicht "einfach" die Zahl, die ich im Admin-Bereich sehe für die Kommentare, die dort noch auf meine Moderierung warten, auch unter den Beiträgen öffentlich anzeigen lassen?

    Einmal editiert, zuletzt von Olaf (6. Dezember 2008 um 16:49)

  • is_page() ist eine boolsche Funktion, das "!" ist ein "not". Das Array ist ab Version 2.5 als Parameter möglich. Syntaktisch ists also korrekt. Du hast auch Version 2.5+?
    Conditional Tags WordPress Codex

    Versuch es mal damit:

    PHP
    <?php  
                  if ( !is_single(array(1,2,3)) ) { 
                  comment_text(); 
                  } 
          ?>


    das sollte funktionieren!

    Syntaktisch mag es korrekt sein, aber Beiträge sind wohl keine Seiten, frag mich nur, wieso das angeblich bei Dir funktionieren soll, oder hast du es nicht getestet?

  • Syntaktisch mag es korrekt sein, aber Beiträge sind wohl keine Seiten, frag mich nur, wieso das angeblich bei Dir funktionieren soll, oder hast du es nicht getestet?


    Nein, wieso sollte ich das testen? Der Code ist ja eindeutig. :-)
    Es ging im ganzen Thread immer nur um Seiten, nicht um Artikel. Aber du hast natürlich recht, Seiten sind keine Artikel. Und auf Seiten hätte der Code so funktioniert. ;-)

    Wo die Conditional Tags in der Doku stehen findet man ja über die Suchfunktion. ;-)
    Conditional Tags WordPress Codex

  • Es ging im ganzen Thread immer nur um Seiten, nicht um Artikel. Aber du hast natürlich recht, Seiten sind keine Artikel. Und auf Seiten hätte der Code so funktioniert. ;-)


    Sorry, dann war das wohl ein Missverständnis. Ich meinte natürlich Artikel, denn Seiten kann man ja bei mir gar nicht kommentieren...

    Aber die Lösung von Patrick geht jetzt endlich!! - Danke! :)

    Einmal editiert, zuletzt von marX (9. Dezember 2008 um 09:07)


  • Aber die Lösung von Patrick geht jetzt endlich!! - Danke! :)


    Kann es sein dass man noch deinen Kommentarfeed abonnieren kann? Dann wär das ziemlich albern. Ich hab auch noch das Plugin "Recent Comments" bei dem man aber bestimmte Kategorien ausnehmen kann. Mit dem Feed gehts wohl nicht, auch wenn der Link nicht angezeigt wird kann man ihn trotzdem abrufen schätze ich. Ich denke um Kommentare zu verstecken muss man an mehreren Ecken ansetzen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!