Wordpress: Load page content into custom template/theme

vega picture vega · Oct 4, 2012 · Viewed 8k times · Source

I have created a custom theme from the scratch using Starkster to get a static wordpress version without posts/comments. Also, I added six pages in Wordpress with some words for content.

So, the design is working up to now, but I just can not get the content of those pages loaded into the website/browser. One DIV is opened in header.php and closed in footer.php and I thought, the content gets loaded in between.

That is what used up to now:

index.php:

<?php get_header(); ?>
<?php get_footer(); ?>

page.php:

<?php get_header(); ?>
<?php the_content(); ?>
<?php get_footer(); ?>

header.php:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title><?php bloginfo( 'name' ); ?><?php wp_title( '|' ); ?></title>
<meta charset="<?php bloginfo( 'charset' ); ?>" />
<meta name="viewport" content="width=device-width, initial-scale=1.0"><!-- REmove if you're not building a responsive site. (But then why would you do such a thing?) -->
<link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>" />
<link rel="shortcut icon" href="<?php echo get_stylesheet_directory_uri(); ?>/img/favicon.ico"/>
<?php wp_head(); ?>
</head>
<body <?php body_class(); ?>>
<div id="oben"></div>
<div id="naviwrap">
<div id="titel"><h1 class="titelbutton"><a href="http://www.studio-scs.de">Coach</a></h1></div>
<div id="navigation">
<a class="navibutton" href="/" title="START">START</a>
<a class="navibutton" href="/coaching/" title="COACHING">COACHING</a>
<a class="navibutton" href="/termine/" title="TERMINE">TERMINE</a>
<a class="navibutton" href="/person/" title="PERSON">PERSON</a>
<a class="navibutton" href="/kontakt/" title="KONTAKT">KONTAKT</a> 
<a class="navibutton" href="/impressum/" title="IMPRESSUM">IMPRESSUM</a>
</div>
</div>
<div class="clearer"></div>
<div id="wrap" class="inhaltverlauf">
<div id="blocker"></div>
<div id="inhalt">

footer.php:

</div>
<div class="clearer"></div>
</div>
<div id="farbhintergrund" class="farbverlauf"></div>
<?php wp_footer(); ?>
</body>
</html>

You can have a look over here: studio-scs.de


Elias helped me a great deal, but there is one other question that remains. With

page.php

<?php get_header(); ?>

<?php if (have_posts()) : while (have_posts()) : the_post();?> 
<?php the_content(); ?> 
<?php endwhile; endif; ?> 

<?php get_footer(); ?>

I have removed all the posts as I wanted to, but if I now want to have the post ability back on just one of those pages (for instance Termine) to have the possibility to add new dates and so on, how can I do that?

Answer

Elias Sierra picture Elias Sierra · Oct 4, 2012

You cannot use the_content without a query.

Replace your line the_content() with the following:

<div id="content" class="widecolumn">
 <?php if (have_posts()) : while (have_posts()) : the_post();?>

 <h2 id="post-<?php the_ID(); ?>"><?php the_title();?></h2>

  <?php the_content(); ?>


 <?php endwhile; endif; ?>
 <?php edit_post_link('Edit this entry.', '<p>', '</p>'); ?>
</div>