it-swarm.com.de

Versucht zu überprüfen, ob ein Beitrag ein Bild außerhalb der Hauptschleife enthält

Ich habe eine Situation, in der ich herausfinden muss, ob der aktuell geladene Beitrag ein spezielles Bild enthält. Wenn dies der Fall ist, möchte ich, dass ein anderes Logo angezeigt wird, als wenn dem Beitrag kein spezielles Bild zugeordnet ist.

Dies funktioniert gerade, hat aber nicht die gesuchte Überprüfungsfunktion:

<?php echo is_front_page() ? '<h1 id="logo" class="h1 threecol first">' : '<strong id="logo" class="h1 threecol first">'; ?>
    <a href="<?php echo home_url(); ?>" rel="nofollow"><img src="<?php header_image() ?>" alt="<?php bloginfo('name'); ?> logo" height="<?php echo get_custom_header()->height; ?>" width="<?php echo get_custom_header()->width; ?>" /></a>
<?php echo is_front_page() ? '</h1>' : '</strong>'; ?>

Mein Problem ist, dass ich in der WP Dokumentation nach get_posts gesucht oder eine neue WP_query gestartet habe, aber kein Glück hatte zu verstehen, wie ich:

  • führen Sie eine neue Schleife aus, die die Seiten-ID abruft und feststellt, ob ein bestimmtes Bild vorhanden ist
  • führe danach eine Standard if/else-Anweisung aus

Mein Denken mit dem if/else wäre wie folgt:

<?php echo is_front_page() ? '<h1 id="logo" class="h1 threecol first">' : '<strong id="logo" class="h1 threecol first">'; ?>
    <a href="<?php echo home_url(); ?>" rel="nofollow">

    <? // IF/ELSE CODE TO EXECUTE IF post_has_thumbnail ?>
    <?php if ( has_post_thumbnail() ) : ?>      
    <img src="<?php header_image() ?>" alt="<?php bloginfo('name'); ?> logo" height="<?php echo get_custom_header()->height; ?>" width="<?php echo get_custom_header()->width; ?>" />
    <?php else : ?>
    <img src="/i/logo-no-feat-img.png" alt="<?php bloginfo('name'); ?> logo" height="120" width="222" />
    <?php endif; ?>
    <? // end ATTEMPTED IF/ELSE CODE ?>

    </a>
<?php echo is_front_page() ? '</h1>' : '</strong>'; ?>

ARBEITSCODE

    <?php echo is_front_page() ? '<h1 id="logo" class="h1 threecol first">' : '<strong id="logo" class="h1 threecol first">'; ?>
    <a href="<?php echo home_url(); ?>" rel="nofollow">
    <? // IF/ELSE CODE TO EXECUTE IF post_has_thumbnail ?>
    <?php if (is_home() || has_post_thumbnail(get_the_ID()) ) : ?>      
    <img src="<?php header_image() ?>" alt="<?php bloginfo('name'); ?> logo" height="<?php echo get_custom_header()->height; ?>" width="<?php echo get_custom_header()->width; ?>" />
    <?php else : ?>
    <img src="<?php echo get_template_directory_uri(); ?>/library/images/logo-without-feat_img.png" alt="<?php bloginfo('name'); ?> logo" height="302" width="203" />
    <?php endif; ?>
    <? // end IF/ELSE CODE ?>
    </a>
    <?php echo is_front_page() ? '</h1>' : '</strong>'; ?>
2
Tiger Danky

has_post_thumbnail() akzeptiert eine Beitrags-ID:

if ( is_singular() and has_post_thumbnail( get_the_ID() )
{
    // show post thumbnail
}
elseif ( is_front_page() )
{
    // show front page content
}
else
{
    // do something else
}
4
fuxia