it-swarm.com.de

Automatische Teaser deaktivieren

Ich habe ein benutzerdefiniertes Thema, das den Auszug anzeigt:

    $data = get_the_excerpt();
    if ($data) echo "<div class='excerpt'>$data</div>";

wenn im Post-Editor nichts in das Auszugsfeld eingegeben wird, verwendet Wordpress automatisch den automatisch generierten Teaser .

Ich möchte dieses Verhalten loswerden. Gibt es eine Möglichkeit dazu? Im Moment muss ich ein Leerzeichen in das Auszugsfeld jedes Posts einfügen, damit der automatische Teaser nicht angezeigt wird.

1
Pekka 웃

Versuchen Sie stattdessen, $post->post_excerpt zu verwenden:

// globalize $post, just in case
global $post;
// find out if the post has a defined excerpt
$data = $post->post_excerpt;
// If so, output something
if ($data) echo "<div class='excerpt'>$data</div>";

Diese Methode umgeht die in get_the_excerpt() enthaltene Generierung von Auto-Auszügen.

EDIT

Auf vielfachen Wunsch derselbe Code mit has_excerpt():

// find out if the post has a defined excerpt
$data = ( has_excerpt() ? get_the_excerpt() : false );
// If so, output something
if ($data) echo "<div class='excerpt'>$data</div>";
1
Chip Bennett

Eine Methode, die ich verwende, ohne global $post; zu verwenden, besteht darin, dieses Snipit direkt vor the_excerpt() in der Schleife zu verwenden.

<?php
if (!has_excerpt()) {
         the_content(); //show the content if no excerpt
 } else {
         the_excerpt(); //else show excerpt
}
?> 

Wenn Sie nur the_excerpt() anzeigen möchten, falls vorhanden, und nicht the_content(), können Sie Folgendes verwenden:

  if(has_excerpt()){
          the_excerpt();
  }
0
Brooke.