今回は、WordPressの基本的な仕組みについて解説します。
初めてWordPressに触った方は、特に手を加えずにWordPressを利用していると思いますが、WordPressに慣れてくると徐々にカスタマイズしたくなることと思います。
WordPressのカスタマイズ方法についてはインターネット上で数多くの情報がありますが、WordPressの基本的な仕組みについて知っておくとより自分の好みに合ったカスタマイズができるようになると思います。
また、WordPressを苦手としている方も、WordPressの仕組みを知ることでもう1回サイトを作ってみようと思えるようになるでしょう。
WordPressはPHPというプログラム言語で作成されたアプリ
WordPressはPHPで作られています。
そのため、WordPressの「根幹部分」も「テンプレート」も「ウィジェット」もPHPでプログラムされています。
WordPressはPHPの関数のかたまり
プログラムはある程度の「ひとかたまりの処理」があって初めて処理の意味が生まれます。
たとえば、どの限度でもいいのですが、プログラミングの本を購入すると最初のプログラムは「print」で「Hello World!」と表示させるものが多いですが、この1行・1文だけでは意味がありません。(Hello World!が目的なら意味があるのかもしれませんが)
このようにプログラムはある程度のまとまった処理があって初めてプログラムとしての意味が出てきます。
しかも、このある程度の処理が何度も再利用できると非常に効率的ですし便利です。
一般的なプログラム言語では、繰り返し再利用するある程度のまとまった処理のことを「関数(かんすう)」と呼びます。
PHPでは以下のように関数を定義します。
function 関数名 (引数・パラメータ) { 関数の中身(いろんな処理をする) } |
たとえば、引数をすべて足し算する関数があった場合、引数(3、4、5)を関数に渡すと、12が返ってきます。
このように何か「データ」を渡すと、そのデータに対して処理を実施し、処理した結果を返すプログラムのかたまりを「関数」と呼びます。
WordPressの「テンプレートタグ」も関数
「テンプレートタグ」という名前が紛らわしくて、「テンプレートタグ」と聞くと何かの「タグ(tag)」の話かと勘違いしそうになりますが、テンプレートタグとは「関数」です。
テンプレートタグとは、関数で、特にWordPressのテンプレートの中で使用する関数のことを言います。
bloginfo関数にいろんな引数を渡すといろんな結果が返ってくる
たとえば、bloginfo関数があります。
この関数にはいろんな引数(パラメータ)を渡せます。
もちろん、関数は同じでも引数がことなれば返ってくる処理の結果も異なります。
【例】
<?php bloginfo(‘name’); ?>
引数に「name」を渡している。処理の結果は、「100%レンタルサーバーを使いこなすサイト」が返ってくる。
<?php bloginfo(‘description’); ?>
引数に「description」を渡している。処理の結果は、「ホームページ初心者・レンタルサーバー初心者の方でもレンタルサーバーを100%使いこなす情報を更新します。」が返ってくる。
<?php bloginfo(‘url’); ?>
引数に「url」を渡している。処理の結果は、「https://go-journey.club」が返ってくる。
このように同じ「bloginfo」という関数なのですが、与える引数によって返ってくる結果も変わります。
WordPressは主にこのなような関数群でプログラミングされています。
テンプレートタグ名 | 返ってくる内容 |
---|---|
bloginfo | ブログの各種情報 |
get_header | ヘッダーのテンプレート(header.php)を取り込む |
get_footer | フッターのテンプレート(footer.php)を取り込む |
get_sideber | サイドバーのテンプレートを取り込む |
the_title | 投稿のタイトル |
the_content | 投稿の内容(コンテンツ) |
the_time | 投稿の日時 |
the_author | 投稿を書いたユーザーの名前 |
PHPの特徴
PHPは、Webアプリケーションの開発にとても使いやすい言語で、且つ習得しやすいプログラミング言語です。
文法はシンプル、多くのライブラリ・関数があり、オブジェクト指向プログラミングもサポートされています。
PHPはスクリプト言語なので、CやC++、Javaなどのコンパイル言語に比べると比較的習得しやすいと思います。
たとえば、Javaで開発する話になった場合、開発環境を構築するのに結構大変な思いをするかもしれません。
これが初心者の方ならJavaの開発環境を構築して、「Hello World!」を実行するだけでもそれなりに苦労すると思います。
逆に言うとPHPはそれだけ「敷居が低い」プログラミング言語です。
では、C言語と比べて大したことができないおもちゃのプログラム言語かというと、全く違います。
確かにPHPはスクリプト言語なので、コンパイル言語と比べると速度に見劣りがするのはしかたがありませんが、近年PHP7.1がリリースされたことが高速なCGIを動作させることができるようになりました。
このように日々改善が続いています。
コメント