Kommentare bei bestimmtem Eintrag sollen Grafik enthalten. If-Abfrage...?

  • Hallo liebe Kollegen, guten Abend!

    Also, nach den letzten Monaten Rumausprobiern, Pixelschieben und Hardcore-Firebug hab ich mir ja schon dezente Kenntnisse angeeignet. Aber das übersteigt meine Fähigkeiten. Zumal ich von PHP leider keine Ahnung habe. Aber ich kann mir vorstellen, dass des ganz einfach zu realisieren is mitn bischen PHP, drum frag ich einfach mal höflich nach, bitte.

    Ich hätte sehr gerne, dass die Kommentare zu einem bestimmten Eintrag etwas anders aussehen. Gar nicht viel anders. Ich will nur gerne, dass bei den Kommentaren zu einem bestimmten Eintrag immer eine kleine Grafik (die bei jedem Kommentar dieses Eintrags aber gleich bleibt) über dem Kommentar erscheint.

    Jetzt habe ich gedacht, da könnte man bestimmt sowas wie eine If-PHP-Abfrage in die comments-php einbauen. So nach dem Motto:

    "Wenn das ein Kommentar zu Post#XY ist, dann mache dazu <img src...>".

    Geht sowas mit einem Schnippselschen PHP, bitte? Und weiß jemand, wie das in PHP aussehen könnte? Da wäre ich wirklich sehr arg dankbar für jeden Hinweis.

    Beste Grüße und alles Gute!
    Herr Nack

    • 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

  • Ich glaub, das geht doch in die richtige Richtung, oder:

    PHP
    <?php if ($comment->= '?p=POSTNUMMER') : ?> echo <img src...>

    Aber so tut des natürlich net. Aber ich denk doch schon in die richtige Richtung, oder? Hmm. Weiß bitte wer, wie ich dat hinbiegen könnte...?

    Alles Liebe und Gute
    Herr Nack

  • Ah Marx, supercool, danke Dir sehr! Das probier ich mal aus.

    Marx, wenn ich das jetzt zum Beispiel so ändern will, dass jeder Kommentar, der an einem bestimmten Tag verfasst wird, dieses Image angefügt bekommt, dann änder ich das doch einfach so ab:

    Aus:

    Code
    [COLOR=#000000][COLOR=#006600]if ( [/COLOR][COLOR=#0000cc]is_single[/COLOR][COLOR=#006600]([/COLOR][COLOR=#cc0000]'17'[/COLOR][COLOR=#006600]) ) { echo [/COLOR][COLOR=#cc0000]'<img />'[/COLOR][COLOR=#006600]; }  [/COLOR][/COLOR]

    Wird:

    Code
    [COLOR=#000000][COLOR=#006600]if ( [/COLOR][COLOR=#0000cc]is_day[/COLOR][COLOR=#006600]([/COLOR][COLOR=#cc0000]''[/COLOR][COLOR=#006600]) ) { echo [/COLOR][COLOR=#cc0000]'<img />'[/COLOR][COLOR=#006600]; }  [/COLOR][/COLOR]

    Aber, hmm, wie füge ich dann das Datum ein? Der WP Codex sagt mir, dass das mit is_day funktionieren müsste. Aber ich hab net ganz gefunden, wie ich dann den entsprechenden Tag eingebe zwischen den ' '. Hast Du mir da eine Idee, Marx?

    Also ich weiß, wie das Datum ausgegeben wird, zum Beispiel 'F jS, Y'. Aber nun will ich ja nicht, dass ein Datum ausgegeben wird, sondern dass es berücksichtigt wird. Also zum Beispiel sollen alle Kommentare, die am 03.09.07 verfasst werden, eine Grafik angehängt bekommen, wie kriege ich das Datum 3. September 2007 php-mäßig übersetzt, damit ich es zwischen die beiden Anführungszeichen ' ' setzen kann...?

    Alles Liebe und beste Grüße
    Herr Nack

    Einmal editiert, zuletzt von Herr Nack (3. September 2007 um 22:10)

  • Naja, is_day() fragt ja ab, ob du auf einem Tagesarchiv bist, ich glaub das ist nicht was du willst. Du solltest das Kommentardatum eher mit

    PHP
    if ($comment->comment_date == '2007-09-03') {...


    prüfen. comment_date enthält aber die Uhrzeit noch. Müsste also eher so aussehen:

    PHP
    if ( strpos($comment->comment_date, '2007-09-03') !== FALSE ) { ...


    (Das !== ist so korrekt! != dürfte nicht funktionieren, weil das Datum an 1. Stelle, d.h. an Stelle 0 steht und 0 in PHP gleichbedeutend mit FALSE ist.)

  • Abend, Marx! Ah ok, Danke! Kinder, is ja wie Algebra. Hat mir zwar immer Hölle Spaß gemacht, aber verstanden hab ichs trotzdem nie :-D.

    Marx, erlaubst mir bitte eine letzte Frage?

    Also wenn ich jetzt zum Beispiel eine Zeitspanne angeben will, beispielsweise 2007-09-03 bis 2007-09-06. Wie könnte ich das denn phpgemäß einbasteln...?

    Alles Gute
    Herr Nack

  • Langsam wird's haarig... :-D

    Ich kanns grade nicht testen, aber so in der Art:

    PHP
    $ts_comment = strtotime( $comment->comment_date );
    $ts_start = strtotime( '2007-09-03 00:00' );
    $ts_end = strtotime( '2007-09-06 23:59' );
    
    
    if ( $ts_comment >= $ts_start && $ts_comment <= $ts_end) { ... }

    Prinzip verstanden? Kann sein, dass du das Datum anders formatieren musst, guck am besten mal in die Doku u. die Kommentare zu strtotime() und date()

  • Jo, verstanden soweit, glaub ich. Algebra halt :-D
    Ich probier das mal aus und experimentier da weiter.

    Danke Dir SEHR für die Hilfe!!

    Alles Gute
    Herr Nack

  • Du, dit funktioniert tatsächlich! Is ja volle super! Muss nur nochn bischen an der Positionierung feilen. Da würd ich gern sone putzige CSS-Klasse einbasteln. Hmm. Also, weißte vielleicht, wie ich die CSS-Klasse, nenne ich sie mal #BEISPIEL in das echo reinbastel:

    PHP
    <?php if ( $ts_comment >= $ts_start && $ts_comment <= $ts_end)  { echo 'Test'; }  ?>

    Also der Text "Test" soll ausgegeben werden, wie ichs in der CSS-Klasse #Beispiel angebe. Bei html-Angaben weiß ich so ungefähr, wie ich CSS-Klassen zufüge, aber wo bringe ich das in php unter. Weißte dat evtl. sogar vielleicht, bitte...?

  • Na kein Problem. Mit "echo" gibst du ja nur einen Text an den Client aus. Was der Client (d.h. der Browser) draus macht ist PHP egal. Und das Beste daran ist, der Inhalt von "echo" darf somit sogar HTML enthalten! ;-)

    PHP
    echo '<span class="beispiel">Test</span>';

Jetzt mitmachen!

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