Der untenstehende Code führt eine Datenbankabfrage auf 4 benutzerdefinierte Felder in Artikeln aus und zeigt den Inhalt als gruppierte (region_mitglied) und sortierte (namen_mitglied) Liste an. Der Code kann in eine Templatedatei statt des Contentbereiches eingesetzt werden.
So sieht’s aus: http://gsew.de/entwicklungen/mitgliederliste/
<?php $meta_key1 = 'namen_mitglied'; $meta_key2 = 'arbeitsort_mitglied'; $meta_key3 = 'region_mitglied'; $meta_key4 = 'stellenbezeichnung_mitglied'; $postids=$wpdb->get_col($wpdb->prepare(" SELECT key3.post_id FROM $wpdb->postmeta key3 INNER JOIN $wpdb->postmeta key1 on key1.post_id = key3.post_id and key1.meta_key = %s INNER JOIN $wpdb->postmeta key2 on key2.post_id = key3.post_id and key2.meta_key = %s WHERE key3.meta_key = %s ORDER BY key3.meta_value, key1.meta_value", $meta_key1, $meta_key2, $meta_key3)); if ($postids) { foreach ($postids as $id) { $post=get_post(intval($id)); setup_postdata($post); $print1 = get_post_meta($post->ID, $meta_key1, true); $print2 = get_post_meta($post->ID, $meta_key2, true); $print3 = get_post_meta($post->ID, $meta_key4, true); $region = get_post_meta($post->ID, $meta_key3, true); ?> <?php if ($region_alt<>$region) { echo "<table border='0' width='100%'> <caption><strong><br />Region $region (sortiert nach Name und Ort)<br /><br /></strong></caption> <tr><th width='30%'>Name/Vorname</th><th width='30%'>Arbeitsort</th><th>Stellenbezeichnung</th></tr>"; } echo '<tr><td><a href='.$v_link.'><strong>'.$print1.'</strong></a></td>'; echo '<td>'.$print2.'</td>'; echo '<td>'.$print3.'</td></tr>'; $region_alt = $region; } echo '</table>'; } ?>
4882 mal gelesen
Schreibe einen Kommentar
Du musst angemeldet sein, um einen Kommentar abzugeben.