WordPress Customizer Teaser Image

In diesem Beitrag erläutere ich wie ihr eurem WordPress Theme, im Custemizer, ein Placeholder Bild für Artikel ohne Bild erstellen könnt.

Zuerst muss im Custemizer die Optionen dafür eingetragen werden. 

In die function.php:

add_action( 'customize_register', 'cd_customizer_settings' );
function cd_customizer_settings( $wp_customize ) {
  $wp_customize->add_setting( 'theme_header_teaser' );
  $wp_customize->add_control(
      new WP_Customize_Image_Control(
          $wp_customize,'theme_header_teaser',array(
              'label' => 'Default Teaser Image',
              'section' => 'title_tagline',
              'settings' => 'theme_header_teaser',
              'priority' => 10
          )
      )
  );
}

„add_action“ sagt WordPress das eine neue Option erstellt werden soll. In Fachkreisen wird dies ein Hook genannt.
„add_setting“ gibt an, das eine neue Option in der Datenbank hinterlegt werden soll, es definiert sozusagen eine neue Zeile in der DB.
Mit „new WP_Customize_Image_Control“ wird ein Objekt von einer Bildoption erstellt.
-> label: Beschriftung im Adminbereich
-> section: wo die neue Option erscheinen soll (in diesem Fall die Standartsektion in der auch das Logo gestzt wird)
-> settings: Variable in der Datenbank (muss die sein die wir selber erstellt haben
-> priority: Position der Option im Adminbereich

Nun muss noch im Theme das Defaultimage platziert werden.
im Theme (z.B. index.php)

if ( has_post_thumbnail() ){
  the_post_thumbnail();
} else {
  echo '';
}

Zuerst wird geprüft ob ein Teaserimage vorhanden ist, wenn nein springt es in den else Bereich. dort wird über get_theme_mod die URI des Bildes, dass im Adminbereich hinterlegt wurde geladen.


wallpaper-1019588
Phu Quoc in Vietnam: Reisetipps & Sehenswürdigkeiten
wallpaper-1019588
Was ist eigentlich Liebe – letzter Teil
wallpaper-1019588
[Review] Manga ~ Waking Up in a Yuri World
wallpaper-1019588
Adventskalender 2024: 12. Türchen