WP Theme mnmlwp: Beitragsseiten optimieren

Ich mag das mnmlwp Theme sehr (sagte ich wahrscheinlich schon). Aber individuelle Anpassung ist halt bei allen Themes erforderlich. Hier geht es darum, dass ich auf den Beitragsseiten (also den Posts, nicht den Pages) ein paar Optimierungen haben möchte:

  1. Sidebar IMMER anzeigen (damit das nicht im Editor aus Versehen überschrieben werden kann) [wp-svg-icons icon=”checkmark” wrap=”i”]
  2. Anzeige der Post-ID (ganz klein irgendwo) [wp-svg-icons icon=”checkmark” wrap=”i”]
  3. Anzeige nur für angemeldete User [wp-svg-icons icon=”checkmark” wrap=”i”]
  4. Backlink zum Blog und zur vorherigen Position [wp-svg-icons icon=”checkmark” wrap=”i”]
  5. Änderung des Standard-Bildes, wenn kein individuelles Beitragsbild angegeben ist
  6. Anzeige der Kategorien im Beitrags-Header und / oder Footer
  7. Anzeige der Tags (Suchworte) im Beitrags-Header und / oder Footer
  8. Backlink zur Kategorie (wenn aus einer Kategorie aufgerufen)

Und mir fällt bestimmt noch irgendwas ein, aber das sind die Basics. Los geht’s.

Vorweg

Die Seite eines einzelnen Beitrags wird in mnmlwp hier definiert => single-post.php

Notiz: Wenn zusätzlich mit Templates gearbeitet wird, müssen die entsprechenden Anpassungen u.U. auch darin vorgenommen werden (es sei denn, sie werden aus der functions.php o.ä. bezogen, dann gelten sie ja für alle Dateien).

1. Sidebar IMMER anzeigen lassen

Im Editor kann theoretisch ausgewählt werden, ob bei einem Artikel die Sidebar angezeigt wird oder nicht. Das möchte ich abschalten, ich will die Sidebar IMMEr anzeigen lassen, egal ob jemand etwas anderes (versehentlich) angeklickt hat. Hier für ist diese Funktion zuständig, die muss in den gewünschten Dateien einfach auskommentiert werden:

if( is_active_sidebar( ...

2. Anzeige der Post-ID

Erfolgt durch Post ID <?php echo get_the_ID(); ?>

Dies kann an beliebiger Stelle integriert werden, entweder in der einzelnen Beitragsdatei, oder in der functions.php oder über ein eigenes Code Snippet. Ich habe es bspw. hier auf antiblabla.de in den Footer eingebunden:

Theme Editor > single-post.php, direkt unter <?php mnmlwp_adjacent_posts(); ?> eingefügt:

<?php // Eigene Anpassung ?>
<div style="font-size:60%; margin-top:15px; border-top: 1px solid silver; padding-top:15px;padding-bottom:15px;">
Artikel ID <?php echo get_the_ID(); ?></div>

Geht natürlich schöner, tut’s aber erstmal, vor allem für den nächsten Test:

3. Anzeige nur für angemeldete User

Die WordPress-Funktion dafür if ( is_user_logged_in() ) ist hier in der WP Referenz erklärt. Daraus abgeleitet:

<?php // Eigene Anpassung
if( is_user_logged_in() ) {?>
<div style="font-size:60%; margin-top:15px; border-top: 1px solid silver; padding-top:15px;padding-bottom:15px;">
Artikel ID <?php echo get_the_ID(); ?></div>
<?php } ?>

Und schon wird die Artikel ID nur den angemeldeten Nutzern angezeigt. Da es außer der Redaktionsteams keine weiteren User-Rollen gibt, wird hier im Moment kein weiteres Feintuning benötigt. Könnte aber irgendwann erforderlich werden, wenn man die Anzeige nicht nur nach “ist eingelogged ja/nein”, sondern auch noch nach User-Rolle definieren will.

4. Backlink zum Blog

Ich möchte auf den Artikelseiten einen Link haben, der zurück zum Blog führt – oder noch besser: zurück zur “letzten Position”, denn es kann ja sein, dass jemand schon auf Seite einhundertvier der Artikelliste war, von da aus einen Artikel aufgerufen hat, und jetzt bitte auch auf genau die Seite zurück möchte, von der er kam – ohne nochmal wieder auf Seite einhundertvier “vorspulen” zu müssen. Am besten sogar beides. Wunschzettel fertig, jetzt ab zum Weihnachtsmann.

Der Titel / Header einer Seite wird in der single-post.php an zwei Stellen definiert:
a) direkt in der single-post.php, bei if( ! $mnmlwp_hide_page_title ) {
b) oder in der functions.php in get_header();

Ich entscheide mich für die single-post.php Variante und trage direkt über if( ! $mnmlwp_hide_page_title ) { ein:

// Eigene Anpassung
echo '<div style="font-size:75%;margin-bottom:25px;">Zurück zu: ';
echo '<a href="/">&Ll; Start|Blabla</a> ';
echo '<a href="javascript:history.back()" ';
echo 'title="<< zurück zur vorherigen Position (ggf. 2x klicken)">';
echo '&Ll; vorherige Position</a>';
echo '</div>';

Funktioniert. Das Ergebnis seht Ihr hier über jedem Beitragstitel.

5. Standard-Beitragsbild ändern (wenn kein anderes angegeben ist)

a) Entweder: der zuständige Abschnitt liegt in der functions.php (ca Zeile 715, je nachdem, was man selbst schon angepasst hat):

if ( has_post_thumbnail() && $format !== 'no-images' )

Hier kann man weiter anpassen, gerade keine Zeit 🙂

b) Oder: einfach per FTP das Platzhalterbild ändern, dies liegt in (siehe ebenfalls functions.php):

$html .= '<a href="' . esc_url( get_permalink( get_the_ID() ) ) . $mycataddlink . '"><img class="mnmlwp-post-list-thumbnail lazy" data-original="' . $feat_image_url . '" src="' . mnmlwp_assets_url() . '/img/placeholder.png" alt="" /></a>';

——-

Soweit erstmal. Bleiben noch die Wünsche zu Kategorien und Tags – aber das wird wahrscheinlich ein eigener Artikel. Mehr – dann. 🙂

Happy Coding
antiblabla admina

 

 

 

 

Artikel ID 563

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

%d Bloggern gefällt das: