オリジナルテーマの作成方法 その2

WordPressで表示する内容をカスタマイズするときに使うWordPress用のタグのことをテンプレートタグと言う。


<!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>
	<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>
	;charset=<?php bloginfo('charset'); ?>" />
	<title><?php bloginfo('name'); ?></title>
</head>

<body>
</body>
</html>


<div id="header">
  <h1><a href="<?php echo home_url(); ?>"><?php bloginfo('name'); ?></a></h1>
  <p id="desc"><?php bloginfo('description'); ?></p>
</div>

「設定 < 一般設定」の中の設定した項目が表示される。
sample sample

iconループの開始タグ


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

<?php if ( have_posts() ) : ?> で、投稿された記事があるかどうかを調べる。
have_posts()関数は、次の投稿データがあるか調べる関数

だから、「もし(if)投稿データはあるか?あるなら、(while)ループを繰り返す」と言うif文。

そしてループされたデータをthe_post();関数でもって、
投稿データをグローバル変数$postにロード(順に表示)する。

iconループの終了タグ


<?php endwhile; endif; ?>

endwhile・・・while文の閉じタグ。endif・・・if文の閉じタグ。

iconカテゴリー関数


1)<?php the_category; ?>
 ↓
2)<?php the_category(', '); ?>

1のままだと、ulタグが付いてしまうので、マークアップが表示されたり、改行されてりまったりと不都合な場合には、(', ')をつけてulタグを取り除く。

ワードプレスはフルパス表記。
<?php echo home_url(); ?>でテーマフォルダのURLを取得/保存名.jpg で画像を表示出来る。

記事がおおくなってしまった場合、古いページを表示するには、PHPでリンクを生成すれば良い。

設定<表示設定 画面で記事の調節が出来る。 sample

<?php if(is_home()): ?>#ここの閉じは;ではなく、:になる。
		<div class="pagelink">
			<?php next_posts_link(); ?>
			<?php previous_posts_link(); ?>
		</div>
<?php endif; ?>

sample

()内にテキストを入れると、その文字がそのまま表示される。セミコロンで囲む。


【個別のページだけに表示させたい場合のループ】
<?php if(is_single()): ?>
	〜
<?php endif; ?>

記事タイトルをクリックすると、個別の記事に飛ぶようになっている。

なので、やる事は、2つ。
1)記事のタイトルを取得してステータスバーに表示させる。
2)個別の記事にもネクストとプレブを付けて、他のページに移動出来るようにする。


1)各記事のタイトルをそのまま<title>として表示すれば良いので、
<?php wp_title(); ?> を追加して、
 ↓
<title><?php bloginfo('name'); ?><?php wp_title(); ?></title>

sample

<?php wp_title(); ?> は、ブログ名(タイトル)に続けて利用する事を想定されているので、トップページを生成する時は、何も出力しない。 また、必ず、>>が付く。


<div class="pagelink">
    <span class="newpage"><?php previous_post_link(); ?></span>
    <span class="oldpage"><?php next_post_link(); ?></span>
</div>
#一覧の記事のネクストとプレブと違って、()の中の指定は出来ない。
また、post(s)はつかない。
sample

非表示にすると、ページが認識されない。スルーされる。