Hallo,
ich möchte eine Single-Page Seite in Wordpress bauen.
Dazu möchte ich alle Seiten (Pages) und die Blog Seite (posts) auf einer Seite in Sections untereinander darstellen.
Ich habe mir also eine front-page-php erstellt, in der ich alle pages und posts lade und untereinander aufführe.
Nun ist aber eine der PAGES als Blog ausgewählt. Die Posts werden nicht dargestellt, sondern diese Seite wird als ganz normale PAGE wiedergegeben. Also keine POSTS. Daher habe ich die POSTS extra geladen und in den Loop gepackt.
Ich möchte aber, dass die dritte Section, also die dritte Page als Blog-Seite (für Aktuelles) fungiert, da sie ja so angelegt wurde.
Wie kann ich das machen? In dieser Lösung habe ich folgendes:
START - PAGE
ÜBER UNS - PAGE
AKTUELLES - PAGE (eigentlich Blog-PAGE mit POSTS)
KONTAKT-PAGE
POST 1
POST 2
POST N
Ich will aber, dass die POSTS in der AKTUELLES - PAGE dargestellt werden...
<?php
get_header(); ?>
<a name="top"></a>
<!-- Pages -->
<?php
// define how pages will display
$page_args = array(
'sort_order' => 'ASC',
'sort_column' => 'menu_order', //post_title
'hierarchical' => 1,
'exclude' => '',
'child_of' => 0,
'parent' => -1,
'exclude_tree' => '',
'number' => '',
'offset' => 0,
'post_type' => 'page',
'post_status' => 'publish'
);
$pages = get_pages($page_args);
// define how posts will display
$post_args = array(
'posts_per_page' => 5,
'offset' => 0,
'category' => '',
'orderby' => 'post_date',
'order' => 'DESC',
'include' => '',
'exclude' => '',
'meta_key' => '',
'meta_value' => '',
'post_type' => 'post',
'post_mime_type' => '',
'post_parent' => '',
'post_status' => 'publish',
'suppress_filters' => true
);
$posts = get_posts($post_args);
//start loop for pages and posts
foreach (array_merge($pages, $posts) as $page_data) {
$content = apply_filters('the_content', $page_data->post_content);
$title = $page_data->post_title;
$slug = $page_data->post_name;
?>
<section class='<?php echo "$slug" ?>'>
<h2><?php echo "$title" ?></h2>
<?php echo "$content" ?>
</section>
<?php } ?>
<?php get_footer();?>
Alles anzeigen