wordpress初心者が覚えておきたいphpカスタマイズ7つ

wordpress

wordpressのテンプレートをカスタマイズするのに役立つphpハックを初心者向けに紹介します。
簡単なカスタマイズばかりですが、これができれば動的サイトとしてはなかなか立派なものになるのではないでしょうか。

7つほどお試しあれ。

1. <head>内・wp_head();の編集

これ、WordPress独自の関数です。
テンプレート内header.phpの</head>手前で<?php wp_head(); ?>というふうに使用され、メタ・スクリプト・RSS情報など必要なタグを自動で読み込んでくるのですが、中には余計なタグも一緒に吐き出してきて<head>内がやけに長くなったりします。コーディングをやっている人であればwordpressが生成する静的htmlの煩雑さに不満を覚えた人も多いのではないでしょうか。

例えば

<link rel=’index’ title=’ブログ名’ href=’ブログURL’ />
<meta name=”generator” content=”WordPress 3.0.1″ />

こんなん別にいらないですよね。他にもRSSやスクリプトがいらなければ消したいと思うだろうし、SEOの観点からも<head>内は軽くしておきたいところ。

これで解決

header.phpと同じ階層にあるfunction.phpのphpループ内に以下を記入します。

remove_action(‘wp_head’, ‘wp_generator’);
remove_action(‘wp_head’, ‘index_rel_link’);

以下、同様の手順で他に削除したい項目も対応できますよ。

2. タイトルの表示変更

デフォルトではタイトルとブログ名の間に「»」が入っています。7こういうの気持ちワルい人のためにもタイトルの表示をカスタマイズする方法を紹介したサイトを紹介します。

当ブログでも、さらにつっこんだタイトルのカスタマイズ方法を紹介しています。

3. 記事一覧の右側に日付を表示させる

記事一覧の右側に日付を表示
これは外面のphpデータをいじるだけでは表示してくれません、内部を編集してやっと日付は評されるんです。カンタンそうに見えて意外と手間かかります。編集するファイルは

/wp-include/default-wigget.php

の中にある

class WP_Widget_Recent_Posts extends WP_Widget {

ここのループの最後のほうに

<li><a href="<?php the_permalink() ?>" title="<?php echo esc_attr(get_the_title() ? get_the_title() : get_the_ID()); ?>"><?php if ( get_the_title() ) the_title(); else the_ID(); ?></a></li>

とあります。ここでliタグ閉じる直前に日付を呼び出すコードを入れましょう。
get_the_time
とか。

使用しているテンプレートによって編集する場所が若干変わってくると思いますが、Wordpressの独自関数は概ね
/wp-include/default-wigget.php
で操作できますよ。

4. カテゴリの項目に記事数を表示する

カテゴリ一覧を呼び出すのにも色々な方法があります。ちょっと一覧にしてみました。

<?php the_category(' ') ?>
<?php get_the_category(' ') ?>
<?php get_the_category_by_ID (' ') ?>
<?php in_category(' ') ?>
<?php get_category_parents(' ') ?>
<?php get_category_link(' ') ?>
<?php the_category_rss(' ') ?>
<?php wp_list_categories(' ') ?>

こんな感じで、呼び出し方にも色々です。(‘ ‘) は引数が入りますね。この引数の部分に
optioncount=1
を入れます。
カテゴリ一覧

<h4>カテゴリ一覧</h4>
			<ul>
				<?php wp_list_cats('sort_column=name & optioncount=1 & hide_empty=1 & hierarchical=1'); ?>
			</ul>

エレキギターニュース.com サイドバーカテゴリ一覧のソース

詳しくはこちらのページにも掲載されてます。
wp_list_catsについてのリファレンス | Wings-Winds 素材集

5. カスタムフィールドを簡単に扱う方法

カスタムフィールドを使えば色々とブログに追加要素を加えることができます。プラグインをつかえば簡単にカスタムフィールドを扱うことができました。

手順

  • Get Custom Field Valuesというプラグインをインストールして有効化
  • 記事作成。カスタムフィールドに入れたい要素を入力、キーを任意の言葉にします。ここでは”example”としておきましょう
  • index.phpファイルでもsidebar.phpファイルでも、カスタムフィールドを表示させたい任意の部分に
    < ?php echo c2c_get_custom('example'); ?>

    というコードを記入

  • 記事を投稿。これでコードを入れた場所にカスタムフィールド・キー”example”の内容物が表示されます

6. 条件分岐の簡単な扱い方

当ブログのこちらの記事、wordpressでページ毎にタイトルを変えたい時のphpコードで紹介した方法で、できます。詳しくはそちらを読んでいただければ。

例えばトップページにだけ表示したい場合は、index.phpの内部に以下を入力

< ?php if(is_home()) { ?>
表示させたい要素
< ?php } ?>

7. 特定のカテゴリのみで表示する

< ?php if ( in_category('category_id') ): ?>
表示させたい要素
< ?php endif; ?>

でオッケー

今回はこんなところで