• Gelöst myheadz

    (@myheadz)


    Hallo zusammen,

    ich benötige Hilfe dabei die Seitentitel-Schrift durch Seitentitel-Bilder zu ersetzen.
    Meine Hoffnung liegt in einer Art Verketten-Funktion mit einer Wildcard.
    Die Bildernamen würde ich dann genau wie die Kategorie, Seite, Autor o. Ä. nennen.

    In etwa wie:
    zeige bild w*w.webseite.de/““the_title()““_bild.png oder ähnliches.

    Hoffe ich konnte mich verständlich ausdrücken. 😉

    Dies ist der Code der aktuell das ganze regelt.

    	<?php elseif ( is_404() ): ?>
    		<h1><i class="fas fa-exclamation-circle"></i><?php esc_html_e('Error 404.','kontrast'); ?> <span><?php esc_html_e('Page not found!','kontrast'); ?></span></h1>
    		
    	<?php elseif ( is_author() ): ?>
    		<?php $author = get_userdata( get_query_var('author') );?>
    		<h1><i class="far fa-user"></i><?php esc_html_e('Autor:','kontrast'); ?> <span><?php echo $author->display_name;?></span></h1>
    		
    	<?php elseif ( is_category() ): ?>
    		<h1><i class="far fa-folder"></i><?php esc_html_e('Kategorie:','kontrast'); ?> <span><?php echo single_cat_title('', false); ?></span></h1>
    
    	<?php elseif ( is_tag() ): ?>
    		<h1><i class="fas fa-tags"></i><?php esc_html_e('Tag:','kontrast'); ?> <span><?php echo single_tag_title('', false); ?></span></h1>
    		
    	<?php elseif ( is_day() ): ?>
    		<h1><i class="far fa-calendar"></i><?php esc_html_e('Tages-Archiv:','kontrast'); ?> <span><?php echo esc_html( get_the_time('F j, Y') ); ?></span></h1>
    		
    	<?php elseif ( is_month() ): ?>
    		<h1><i class="far fa-calendar"></i><?php esc_html_e('Monats-Archiv:','kontrast'); ?> <span><?php echo esc_html( get_the_time('F Y') ); ?></span></h1>
    			
    	<?php elseif ( is_year() ): ?>
    		<h1><i class="far fa-calendar"></i><?php esc_html_e('Jahres-Archiv:','kontrast'); ?> <span><?php echo esc_html( get_the_time('Y') ); ?></span></h1>
    	
    	<?php else: ?>
    		<h2><?php the_title(); ?></h2>

    Für eure Hilfe bedanke ich mich!

    Grüße
    Jens

    • Dieses Thema wurde vor 5 Jahren, 6 Monaten von myheadz geändert.
    • Dieses Thema wurde vor 5 Jahren, 6 Monaten von myheadz geändert.

    Die Seite, für die ich Hilfe brauche: [Anmelden, um den Link zu sehen]

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

    (@pixolin)

    Moderator (nicht mehr aktiv)

    ich benötige Hilfe dabei die Seitentitel-Schrift durch Seitentitel-Bilder zu ersetzen.

    Das kannst du über eigene CSS-Regeln umsetzen – entweder im Child-Theme oder im Customizer unter Zusätzliches CSS. Dabei kannst du nutzen, dass WordPress jeder statischen Seite im <body>-Tag eine CSS-Klasse mit der Seiten-ID zuweist (für deine Seite „Kontakt“ z.B. .page-id-156). Die CSS-Regel könnten dann z.B. so aussehen:

    .content h2 {
        font-size: 0;
        height: 50px;
    }
    
    .page-id-156 h2 {
      background: url(https://www.myairsoft.de/wp-content/uploads/elementor/thumbs/kontakt-otr3z5z1ktlzz7or2pjkieavdnrslq8k8v5trokfls.png) no-repeat;
    }
    .page-id-42 h2 {
      background: url(https://www.myairsoft.de/wp-content/uploads/2020/08/was-anderes.jpg) no-repeat;
    }
    …

    Mit dem PHP-Code, den du da angegeben hast, kann ich wenig anfangen. Aus welchem Template stammt der? Wieso elseif ohne if (und vermutlich wäre eine case-Anweisung eine sauberere Lösung). Grundsätzlich kannst du aber auch sinngemäß

    if( is_page( 'Waffen sind doof' ) ) {
    echo '<img src="http://placekitten.com/300/200" alt="Give peace a chance">';
    }

    verwenden, wenn du eine Seite mit dem Titel hast. Hast du tatsächlich für jeden Titel ein jpg-Bild mit dem gleichen Namen hochgeladen, müsste auch sowas gehen wie

    global $post;
    $post_slug = $post->post_name;
    echo '<img src="' . get_stylesheet_directory_uri() . '/' . $post_slug . '.jpg" alt="Give peace a chance">';
    Thread-Starter myheadz

    (@myheadz)

    Vielen Dank,

    ich habe es mithilfe der CSS Variante gelöst.

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

Das Thema „Seitentitel durch Bild ersetzen“ ist für neue Antworten geschlossen.