Hallo,
ich habe nun erfolgreich eine Einsatzdatenbank programmiert. Die Einsätze werden in einer Tabelle auf einer statischen Seite ausgegeben mittels Shortcode. Das Problem ist aber nun, dass der Shortcode sprich die Tabelle immer vor allem anderen Text steht. Egal wie ich es in html schreibe, die Tabelle ist immer drüber.
Hier der Code aus der fuctions.php:
PHP
function my_get_posts( $query ) {
if ( is_home() && $query->is_main_query() )
$query->set( 'post_type', array( 'post', 'einsaetze', ) );
return $query;
}
function get_custom_archive_list($jahr)
{
global $wpdb, $wp_locale;
$results = $wpdb->get_results('
SELECT
YEAR(post_date) AS post_year,
MONTH(post_date) AS post_month,
COUNT(ID) AS post_count
FROM
' . $wpdb->posts . '
WHERE
post_type = "einsaetze"
AND post_status = "publish"
GROUP BY
post_month, post_year
ORDER BY
post_date DESC
');
$output = '';
$i = 1;
query_posts("post_type=einsaetze&orderby=date&order=DESC&cat=7&posts_per_page=300");
if (have_posts()) : while (have_posts()) : the_post();
$local_timestamp_year = get_the_time('Y');
if($jahr == $local_timestamp_year) {
$i++;
}
endwhile; endif; wp_reset_query();
foreach($results as $row)
{
$month = $wp_locale->get_month($row->post_month);
$year = $row->post_year;
$url = get_month_link($row->post_year, $row->post_month);
if ($jahr == $year) {
$output = '<h2 id="einsatz_jahr">'.$month.' '.$year.'</h2>';
echo $output . "";
echo '<table class="einsaetze" id="einsaetze_tabelle" style="width: 100%;">';
query_posts("post_type=einsaetze&orderby=date&order=DESC&cat=7&posts_per_page=300");
if (have_posts()) : while (have_posts()) : the_post();
$local_timestamp = get_the_time('F');
$local_timestamp_year = get_the_time('Y');
if ($month == $local_timestamp && $jahr == $local_timestamp_year) {
echo '<tr>
<td id="einsaetze_number">';
echo '<div id="entry-';
$i--;
echo $i ;
echo '">';
echo $i;
echo'</div></td><td id="einsaetze_date">';
the_field('alarmierungszeit');
echo '</td><td><a href="'.get_permalink().'" class="reversed">';
the_title();' ';the_field('einsatzort');
echo '</a></td></tr>';
} else echo '';
endwhile; endif; wp_reset_query();
echo '</table>';
}
}
}
function einsatz_func( $atts ) {
extract( shortcode_atts( array(
'2012',
'2013',
'2014',
'2015',
'2016',
), $atts ) );
$jahr = $atts [0];
return get_custom_archive_list($jahr);
}
add_shortcode( 'einsatz', 'einsatz_func' );
Alles anzeigen
Danke für euer Hilfe.
Gruß
Robin