• Gelöst thering

    (@thering)


    Hallo,
    auf meiner Seite ( http://www.traumtrauringe.de/ratgeber/ ) möchte ich gerne in jeder „Box“ der letzten Beiträge das jeweilige Veröffentlichungs-Datum hinzufügen – unten rechts klein in die Ecke am besten.

    Google hat mir leider nur für „Single“ posts was ausgespruckt aber nicht für diese Übersichtsansicht.

    Welche Datei muss ich bearbeiten und was hinzufügen? Iwas mit mit PHP time sicherlich..?

Ansicht von 14 Antworten – 1 bis 14 (von insgesamt 14)
  • Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Vorab: Damit Änderungen nicht beim nächsten Theme-Update überschrieben werden, solltest du ein Child-Theme anlegen.

    Bei deinem Theme Customizr werden sehr viele Action Hooks verwendet und Überschriften und Inhalte von Beiträgen mit Hilfe eigener Funktionen aufbereitet. Wenn ich es auf die Schnelle richtig interpretiere, wird zum Rendern der Überschriften die Funktion tc_render_headings_view() in inc/parts/class-content-headings.php verwendet. Um neben der Überschrift das Datum anzeigen zu lassen, müsstest du die WordPress-Funktion the_time() hinzufügen.

    <div><?php the_time('j. F Y'); ?></div>
    Thread-Starter thering

    (@thering)

    Danke für die Hinweise und die Antwort.
    Allerdings ist mir noch nicht ersichtlich, wo man <div><?php the_time('j. F Y'); ?></div> einfügen soll…

    Diese php Datei hat sehr viele unterschiedliche Funktionen.

    Man kann doch auch nicht einfach die DIV Box iwo einfügen?!

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Ich hab dir doch die Datei genannt und dort die Funktion, in der the_time('j., F Y'); eingefügt werden muss. Was brauchst du denn sonst noch?

    Thread-Starter thering

    (@thering)

    Ein Traum!
    Vielen Dank!
    Hatte es iwie überlesen^^
    Funktioniert nun. Danke!

    Edit:
    Leider wird es in dem Artikel selbst jetzt auch nochmal angezeigt.
    Kann man das iwie ausschließen?

    Schau mal hier:
    https://codex.wordpress.org/Conditional_Tags

    Gruß, Torsten

    Thread-Starter thering

    (@thering)

    Also:

    <?php the_time(‚j. F Y‘);
    $query->is_home(); //damit es nur auf der Startseite angezeigt wird?
    ?>

    Ist das so korrekt?

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Nein. 🙂

    Wenn du etwas nur auf der Startseite anzeigen möchtest, musst du unterscheiden, ob die Startseite statisch ist (dann verwendet man is_front_page()) oder ob sie Beiträge auflistet (dann is_home()). Soweit passt es ja noch.

    Dieses konditionelle Tag kannst du nun in einem if-Statement verwenden:

    <?php
    if( 'is_home()' ) {
      the_time( 'j. F Y' );
    }
    ?>
    Thread-Starter thering

    (@thering)

    Vielen Dank schonmal, leider funktioniert es so nicht.
    Im Admincenter ist gewählt:
    Startseite: zeigt letzte Beiträge

    Habe es so eingebunden:

    <div style="float: right; font-size: 12px;"><?php
    			if( 'is_home()' ) {
    			the_time( 'j. F Y' );
    			}
    			?></div>

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Hm, probier doch erstmal, ob das Conditional Tag funktioniert:

    <div style="float: right; font-size: 12px;">
    <?php
      if( 'is_home()' ) {
      echo 'hello Dolly!'	;
    } ?>
    </div>

    the_time() funktioniert auch nur innerhalb der Loop.
    Ggf. müsstest Du deshalb folgendes verwenden:

    <div style="float: right; font-size: 12px;">
    <?php
      if( 'is_home()' ) {
       echo get_the_time('', $post->ID);
    } ?>
    </div>

    Thread-Starter thering

    (@thering)

    Hello Dolly funktioniert (wird jetzt anstatt des Datums ausgegebenen)
    Allerdings auch auf den einzelnen Seite der Beiträge.

    Hab das Gefühl, dass es mit „is_home“ nicht funktionieren wird..?

    Auch dein zweiter Codeschnipsel zeigt es in der Übersicht, als auch auf den einzelnen Beiträgen an.

    edit:
    Hab es auch mal spaßeshalber mit „is_front_page()‘ ausprobiert. Keine Veränderung.

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Ich hab mir das jetzt nochmal im Theme angeschaut und die Funktion tc_render_headings_view() wie vorgeschlagen geändert:

    function tc_render_headings_view() {
            $_heading_type = in_the_loop() ? 'content' : 'archive';
            ob_start();
            ?>
            <header class="<?php echo implode( ' ' , apply_filters( "tc_{$_heading_type}_header_class", array('entry-header'), $_return_class = true ) ); ?>">
              <?php
                do_action( "__before_{$_heading_type}_title" );
                echo apply_filters( "tc_headings_{$_heading_type}_html", '' , $_heading_type );
                do_action( "__after_{$_heading_type}_title" );
    
                echo apply_filters( "tc_{$_heading_type}_headings_separator", '<hr class="featurette-divider '.current_filter(). '">' );
              ?>
              <?php if(is_home()) {
                echo get_the_time('j. F Y', $post->ID);
              }?>
            </header>
            <?php
            $html = ob_get_contents();
            if ($html) ob_end_clean();
            echo apply_filters( 'tc_render_headings_view', $html );
          }//end of function

    Im Ergebnis wird nur auf der Startseite (mit Blogbeiträgen) dieses Datum eingetragen. Auf der Kategorie-Seite wird zwar auch ein Datum angezeigt, allerdings aus einer anderen Funktion.

    Die Anpassungen in diesem Theme sind aber sicherlich nicht trivial, zumal das Theme dutzende von eigenen Hooks/Funktionen verwendet.

    Thread-Starter thering

    (@thering)

    Jetzt bin ich verwirrt.
    Ich habe die komplette Funktion mit deiner ersetzt und siehe da: es geht!
    Sehe auch gerade, dass du dieses mal ohne “ ‚ ‚ “ is_home eingebunden hast.
    Vielleicht lag es ja daran?
    Aufjedenfall geht es jetzt.
    Tausend Dank!

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Ups, die Hochkomma waren tatsächlich … Murks. Sorry.

    Freut mich aber, dass es jetzt klappt. Ich setz den Thread mal auf gelöst. 🙂

    Thread-Starter thering

    (@thering)

    Hat sich der Fehlerteufel eingeschlichen 😛
    Alles klar, besten Dank.

Ansicht von 14 Antworten – 1 bis 14 (von insgesamt 14)

Das Thema „Letzte Beiträge, Datum anzeigen, wie?“ ist für neue Antworten geschlossen.