〇当サイトではアフィリエイトプログラムを利用して商品やサービスを紹介しています。
〇当サイトにはプロモーションが含まれています。
〇A8.netから商品・サービスの提供を受けて投稿しています。
正直に言います。最初にWordPressのテーマを自作しようとしたとき、index.phpを開いた瞬間に「あ、これ想像と全然違う」と思いました。
HTMLとCSSは多少わかっていたつもりだったんですが、PHPのタグが混ざり合ったファイルを見て、何から手をつければいいのかがまったく見えなかったんです。あのモヤモヤした感覚、なんとなくわかりますよね?
あれから試行錯誤を続けて、最終的には自作テーマをブログに適用することができました。でも同時に「これ、万人向けじゃないな」とも思った。やり方を覚えるより先に、自分が自作すべき人かどうかを見極めることの方がずっと大事だったと気づいたんです。
この記事では、最小構成で動く自作テーマの作り方と、実際に僕がつまずいた3つのポイントを正直に書きます。ブログ運営10年、400,000PVサイトの運営を経て出した「WordPressテーマ自作の現実」を、あふぃはじらしく包み隠さずお伝えします。
WordPressテーマの「自作」とは何をすることなのか
「テーマを自作する」と聞くと、なんかデザインをゼロから作ることをイメージする人が多いんじゃないでしょうか。実は、そうとも言えるし、そうじゃないとも言えます。
WordPressのテーマって、ざっくり言うと「ブログの見た目と構造を決めるファイルの集まり」のことです。このファイル群を自分でゼロから用意することを、自作と呼んでいます。
最低限必要なファイルは2つだけ。
style.css(テーマの基本情報とデザインを書く)index.php(ページの構造を書く)
この2ファイルを用意してWordPressのテーマフォルダに置けば、理論上はテーマとして認識されます。意外とシンプルでしょ?
ただ、「認識される」と「ちゃんと使えるブログになる」は別の話で、そこから実用レベルにするのがけっこうな作業になります。
ここで押さえておきたい前提が一つあって、WordPressのテーマはPHP・HTML・CSSの3つが組み合わさって動いています。CSSだけ知っていればいいわけじゃない。PHPは「ブログの記事データをWordPressから引っ張り出してきて表示する」ための言語です。プログラミングというより「呼び出しの書き方を覚える」に近い感覚で、最初のハードルは思ったより低いです。
「それ、有料テーマを買えばいいんじゃないの?」という声もありますよね。ごもっともだと思います。どちらが向いているかは、後半で正直に書きます。
自作に挑戦してわかった、リアルな難易度と必要なもの
じゃあ実際、自作テーマって難しいのかどうか。
僕の体感では、「学習コスト:高め、達成感:すごく高い」です。
自作に挑むなら、最低限こういう知識が必要になります。
HTML:見出し、段落、リンク、画像の書き方
CSS:余白・フォント・色・レイアウト
PHP(WordPressの書き方):ループの書き方、テンプレートタグ
「PHPって難しそう」と思うかもしれませんが、WordPressで使うPHPは「テンプレートタグ」と呼ばれる決まった書き方が中心です。the_title()で記事タイトルを出す、the_content()で本文を出す、みたいな感じ。英語でも意味がわかるくらいシンプルなものが多いです。
必要な作業時間については、正直言うと最初の自作は丸3日かかりました。
ただ、コーディングに慣れている人なら1日で最小構成は動かせると思います。逆に、HTMLもほぼ初めて、という状態からなら、学習も含めると1〜2週間は見ておいた方がいいかもしれません。
使うツール類はこれだけ。
- テキストエディタ(VS CodeやSublime Text)
- FTPソフト(ローカルで作業するなら不要な場合も)
- ローカル環境(Local by Flywheelなどで安全にテストできる)
最小構成で動く自作テーマの作り方【実際の手順】
「とにかく動かしてみる」ことが一番の近道だと感じています。完璧な設計図を作ってから動かそうとすると、詰まったまま止まります。最小構成で画面に表示させることを最初のゴールにしましょう。
STEP 1:テーマフォルダを作る
WordPressのインストールフォルダ内、wp-content/themes/ の中に新しいフォルダを作ります。フォルダ名が実質的なテーマ名になるので、半角英数字で(例:my-first-theme)。
STEP 2:style.cssを作る
フォルダ内に style.css を作り、冒頭にこのコメントを書きます。
/*
Theme Name: 自作テーマ練習
Author: あなたの名前
Version: 1.0
*/
このコメントがないとWordPressがテーマとして認識してくれません。これ、最初に誰も教えてくれないやつです。実際に僕も認識されなくて30分悩みました。
STEP 3:index.phpを作る
同じフォルダに index.php を作ります。最小限の中身はこれだけ。
<?php get_header(); ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<h1><?php the_title(); ?></h1>
<div><?php the_content(); ?></div>
<?php endwhile; endif; ?>
<?php get_footer(); ?>
have_posts() で「記事があるか確認する」、the_title() で「タイトルを出す」、the_content() で「本文を出す」。この3点セットで記事が画面に出ます。
STEP 4:header.phpとfooter.phpを作る
上の get_header() と get_footer() が呼び出しているファイルです。header.php にはHTMLの基本構造(<html>〜<body>の開き部分)を、footer.php には閉じタグとwp_footer()を書きます。
この段階でWordPressの管理画面→外観→テーマから選択できるようになります。最初に記事のタイトルと本文だけが表示されたとき、「動いた!」という感覚は純粋に嬉しかったです。
STEP 5:functions.phpで機能を追加する
スタイルシートの読み込みやメニューの有効化など、テーマの動作を制御するファイルです。最低限、CSSを正しく読み込む設定を書きましょう。
<?php
function my_theme_scripts() {
wp_enqueue_style('my-theme-style', get_stylesheet_uri());
}
add_action('wp_enqueue_scripts', 'my_theme_scripts');
ここで「手順は合ってるのに画面が崩れる」という壁が来ます。理由はたいていCSS読み込みのミスか、HTMLの閉じタグ漏れです。ブラウザのデベロッパーツール(F12キー)を開いてエラーを確認する習慣をここでつけておくと、後がかなりラクになります。
自作テーマで正直しんどかったこと3つ(失敗談)
成功した話ばかり書くのは、あふぃはじっぽくないので正直に書きます。
① デバッグに時間がかかりすぎた
PHPのエラーは画面が真っ白になることで気づきます。「さっきまで動いてたのに何もない真っ白な画面」、初めて見たとき本当に焦りました。WordPressの設定ファイル(wp-config.php)でデバッグモードをONにしておくと、エラー内容が表示されるので必須です。これを知らずに2時間溶かしました。
② モバイル対応が想像以上に大変だった
有料テーマが当たり前のようにやってくれていることを、全部自分で書く必要があります。スマホで見たときのレイアウト崩れとの戦いは地味にきつかった。Flexboxの理解が甘かったことを自覚させられる経験でもありました。
③ セキュリティへの不安が消えなかった
有料テーマなら定期的なセキュリティアップデートがついてきますが、自作テーマはそれが自分の責任になります。「このテーマで大丈夫なのか」という漠然とした不安は、実はかなり続きました。
④ 完成=達成感→虚しさ(利益0どころかPV0)
当たり前ですが、自作テーマを作っている最中、すでにたくさんの記事が公開されていない限りアフィリエイト報酬額は0円です。すでに記事やほかのブログを運営していたとしても、テーマを作りながら、定期的に記事を公開しなければ、利益もPVも落ちていきます。
この4つの経験から気づいたことがあって、それは「自作テーマのコストは作業時間だけじゃない」ということです。維持・管理・更新の負担が継続的にかかってくる。手順を覚えることより、その継続コストを自分が引き受けられるかを考えることの方が大事だったと思っています。
WordPressテーマを自作すべき人・やめた方がいい人
自作テーマは「すごい」でも「悪い」でもありません。向いている状況と向いていない状況がある、というだけです。
自作テーマが向いている人
- コーディングが好きで、勉強も含めて楽しめる人
- ブログのデザインに強いこだわりがあって、有料テーマでは実現できない場合
- Web制作の仕事や学習を兼ねていて、ポートフォリオとして使う予定がある人
- 1サイトではなく複数サイトで同じテーマを使い回す予定がある人(コスト面で有利になる)
正直、やめた方がいい人
- まずアフィリエイト収益を出すことが最優先の人。テーマ自作に使う時間で記事を書いた方が早い
- HTML・CSSの基礎がまだ不安定な人。基礎が固まってからの方が確実に速い
- サイトのセキュリティ管理に不安を感じる人
「向いていない」と書いたことは、どれも「その判断が間違っている」という意味ではありません。アフィリエイト収益を最優先に考えるなら、有料テーマを使って記事に集中するのは完全に正解です。
迷っている人は、こう自問してみてください。「コーディングの時間が楽しみな自分がいるか?」答えがYESなら向いています。「早く記事を書いて稼ぎたい」なら、今は有料テーマで十分です。どちらも正しい選択です。
「有料テーマの方がいいと思った人はこちら」
よくある疑問(FAQ)
Q. WordPressのテーマを自作するには何の言語を知っていればいいですか? A. HTML・CSS・PHPの3つが基本です。PHPはWordPressの「テンプレートタグ」という決まった書き方が中心なので、プログラミング経験がゼロでも基礎から学べば対応できます。ただ、HTML・CSSがある程度できていることが前提になります。
Q. 自作テーマの作業時間はどのくらいかかりますか? A. 最小構成で動かすだけなら半日〜1日ほど。実際に使えるレベルに仕上げるには、経験や目指すデザインによって1日〜1週間程度の幅があります。完璧を目指さず「まず動かす」を最初のゴールにするのがおすすめです。
Q. 自作テーマと有料テーマ、どちらの方がSEO(検索での表示)に有利ですか? A. テーマの種類よりも、表示速度・構造のきれいさ・記事の内容の方が検索結果への影響は大きいです。自作でも有料テーマでも、適切に作られていれば検索表示での差はほぼありません。ただ、有料テーマは速度やコードの品質がある程度保証されているので、その点では安定しています。
Q. 自作テーマはアップデートが必要ですか? A. WordPressのバージョンが上がると、古いテーマの一部の機能が動かなくなることがあります。自作テーマは自分でその対応をする必要があります。これが自作テーマの継続コストの一つで、有料テーマと比べると手間がかかります。
Q. 子テーマと自作テーマは何が違いますか? A. 子テーマは既存の有料・無料テーマをベースに、カスタマイズだけを上書きする仕組みです。ゼロから作る自作テーマとは別物です。「テーマに少し手を加えたい」という場合は子テーマの方が現実的で、自作よりはるかに手間が少ないです。用途に合わせて選んでください。
▼ まとめ
WordPressのテーマ自作について、正直に書きました。
まとめると、こうです。
- 最小構成のテーマは
style.cssとindex.phpの2ファイルから始まる - PHP・HTML・CSSの3つが必要だが、WordPressのPHPは「テンプレートタグを覚える」感覚で入れる
- デバッグのしんどさ、モバイル対応、セキュリティ管理という継続コストがある
- 収益化を最優先するなら有料テーマで記事に集中する方が現実的なケースが多い
- コーディング自体が好きで楽しめる人には、自作は純粋に価値がある体験
「自作すべきか、やめるべきか」は、あなたの今の目標と使える時間によって変わります。正解は一つではありません。
もし「まずWordPressの基本的な構造を理解してから判断したい」という方は、あふぃはじのWordPress関連記事も参考にしてみてください。テーマ以前に「ブログの設計」から整理する記事が役に立つかもしれません。
「WordPressの設計から整理したい方はあふぃはじのトップから記事一覧をどうぞ」