• Hallo

    Ich habe eigene Theme erstellt, jetzt geht es ein Schritt weiter.

    Wie kann ich so etwas (Bild unten) am besten mit Advanced Custom Fields realisieren?

    Ich möchte nur auf der Startseite immer Horizontal 3 Reihen ..und Vertikal ist noch nicht bekannt wieviel.

    Ich möchte mit ACF die Felder wie: „Zimmer, Schlafzimmer, Fläche, Baujahr“ erstellen, danach das ausgeben. Es sollte möglich sein im Backend zb. im Feld „Baujahr“ einfach eine Jahr zu schreiben und dann sollte das so auf der Startseite ausgegeben werden.

    Wie muss ich da vorgehen? Muss ich die Php Ausgaben in eine While-Schleife packen?
    Es gibt leider keinen geeigneten Plugin.

    Bild- wie es sein sollte

    http://www.bilder-upload.eu/upload/3debf7-1473332527.jpg

    Danke

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

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Nehmen wir an, du erstellst einen eigenen Inhaltstype wohnung, dann kannst du ihn mit folgender Abfrage in einem Template ausgeben:

    // WP_Query arguments
    $args = array (
    	'post_type'              => array( 'wohnung' ),
    	'posts_per_page'         => '6',
    	'orderby'                => 'date',
    );
    
    // The Query
    $query = new WP_Query( $args );
    
    // The Loop
    if ( $query->have_posts() ) {
    	while ( $query->have_posts() ) {
    		$query->the_post();
    		// do something
    	}
    } else {
    	// no posts found
    }
    
    // Restore original Post Data
    wp_reset_postdata();

    Nun möchtest du jede einzelne Wohnung in einem Block ausgeben. Dazu fügen wir in der Loop ein <div>-Tag und die Ausgabe des Titels hinzu:

     …
    // The Loop
    if ( $query->have_posts() ) {
    echo '<div class="angebote">';
    	while ( $query->have_posts() ) {
    		$query->the_post();
    		echo '<div class="wohnung">';
                     the_title();
                    echo '</div>'; //.wohnung
    	}
    echo '</div>'; //.angebote
    } else {
    	echo <code>Keine Angebote vorhanden!</code>;
    }
    
    …

    Damit das als Block ausgeben wird, ergänzen wir das Stylesheet des Themes entsprechend:

    .angebote {
    display:block;
    height:600px; 
    width: 800px; 
    }
    .wohnung {
    float: left; 
    width: 30%; 
    height: 100px; 
    background: #aaa; 
    color: #fff; 
    margin: 5px; 
    padding: 5px;
    }

    Nun fügen wir die Custom Fields von Advanced Custom Fields hinzu. Advanced Custom Fields bietet hierfür die Funktion the_field(); an.

    …
    echo '<div class="angebote">';
      while ( $query->have_posts() ) {
        $query->the_post();
          echo '<div class="wohnung">';
          the_title();
          echo '<div class="postmeta">'.get_the_field('zimmer').'</div>';
          echo '<div class="postmeta">'.get_the_field('schlafzimmer').'</div>';
          // für beliebige viele weitere Custom Fields wiederholen
          echo '</div>'; //.wohnung
    	}
    echo '</div>'; //.angebote
    …

    auch dafür braucht es noch ein wenig CSS:

    .postmeta {
      width:100%; 
      border-top: 1px solid white;
    }

    Alternativ kannst du bei der Gestaltung auch Flexbox verwenden. Eine gute Zusammenfassung findest du hier.

    Der Code ist nicht getestet und ohne Gewähr, sollte aber die Vorgehensweise verdeutlichen.

    Thread-Starter icloud123

    (@icloud123)

    Wow, einfach geil, vielen, vielen Dank Herr Bego Mario Garde. Es funktioniert 🙂

    Jetzt bleibt mir nur noch eine Frage, wie kann ich aus dem ganzen, ein ‚quasi‘ Suchfilter erstellen?

    Z.b. sucht jemand zwischen 50 und 300 € etwas, dann sollte es die Anzeigen zwischen 50 und 300 € anzeigen, oder sucht nach Baujahr: 2012, dann sollten die Anzeige aus dem Jahr 2012 angezeigt werden.

    Vielen Dank.

    Moderator Bego Mario Garde

    (@pixolin)

    Moderator (nicht mehr aktiv)

    Schau mal, ob du* hiermit etwas anfangen kannst: https://de.wordpress.org/plugins/ui-slider-filter-by-price/

    Desto spezieller deine Wünsche sind, um so schwieriger wird es sein, dazu ein passendes Plugin zu finden. Du hast sicherlich Verständnis, dass es den Rahmen eines kostenlosen Supports sprengt, dir eine fertige Lösung zu programmieren – ich bin dir mit meiner ersten Antwort schon sehr weit entgegen gekommen.

    (Wir verwenden hier übrigens, wie in Open Source Communities üblich, das respektvolle „du“.)

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

Das Thema „ACF – wie kann ich das hier erstellen bzw. wie soll ich vorgehen?“ ist für neue Antworten geschlossen.