WordPressで使用するPHPの書き方・ルール

WordPressは基本的にPHPで作成されているため、WordPressのテーマ制作やカスタマイズにはある程度PHPの知識が必要となる。

本記事では必要最低限となるPHPの基本を解説する。

ファイルの拡張子は.phpが基本

PHPファイルの拡張子は「.php」となる。

php_kakuchoushi
PHP拡張子

そのため、WordPressのテーマファイルは必ず「ファイル名.php」となる

基本的にすべてのファイル名は半角英数に統一する。日本語だとファイル名が文字化けするので後からの検索性にも欠けるため。

PHP文は半角英数での記述必須

コード内容に限らず、PHPはすべて半角英数で記述する。特に半角英数記述を間違えやすい対象は以下。

記号・カッコ 呼称
() まる括弧、小括弧、パーレン
{} 波括弧、中括弧、ブレース
[] 角括弧、大括弧、ブラケット
= イコール、等号
シングルクオート、一重引用符
" ダブルクオート、二重引用符
: コロン
; セミコロン
@ アットマーク

カッコもすべて半角英数で記述する

PHPコードの開始・終了の書き方

PHPコードの開始・終了の書き方は以下のとおり。

  • 開始:<?php
  • 終了:?>

実際の記述パターンを以下に示す。

PHPコードの記述例1

横に記述をしていくパターン。

<?php ここにWordPressのテンプレートタグを書く ?>

記述する際の操作は以下のとおり。

php-kijutu01
PHP記述パターン1

PHPコードの記述例2

開始・終了で記述を挟むパターン。

 <?php 
ここにテンプレートタグを書く
 ?> 

記述する際の操作は以下のとおり。

php-kijutu02.png
PHP記述パターン2

PHPコードの記述例3

HTMLソースの途中にPHPを書くこともできる。

 <h1><?php bloginfo('name'); ?></h1>
 

ただしファイルの最後が「?>」で終わる場合、誤作動を起こす可能性もあるため省力する。(PHPコードの終了タグは省略可

命令文の最後には「;」を実装する

echoなど命令文を記述する場合は、「(セミコロン)をつけて区切る

<?
/* PHPは命令文の最後にセミコロン(;) */
echo 'テストです<br>';
?>

詳しくは命令文のセミコロン付与は任意だが、まとまりを分かりやすくするため実装した方がおすすめ

命令文にセミコロンを付与しなくても良いパターン

  • 命令文が1つしかない場合
  • 最後に記述した命令文である場合

上記より後ろに命令文を追加した場合、セミコロンを付与し忘れエラーとなる場合もある。

エラー回避のために、すべての命令文の最後にセミコロンを付与すると良いわ

PHPのコメントアウトは主に3種類

PHPでは1行に対してのコメントアウト2種と、複数行に対してのコメントアウトが用意されている。

  • 1行に対してのコメントアウト:// コメント
  • 1行に対してのコメントアウト:# コメント
  • 複数行に対してのコメントアウト:/* コメント */

記述例は以下のとおり。

<?php
// 1行のコメントアウト
# 1行のコメントアウト

/*
  複数行のコメントアウト
  複数行のコメントアウト
  複数行のコメントアウト
*/
 ?>

表示は以下のとおり

php-commentout
phpコメントアウト表示例

1行のコメントアウトは、行の終わりまでコメントアウトが反映される

php_commentout2
phpコメントアウト

複数行のコメントアウトは「/*」から「*/」で閉じるところまでコメントアウトが反映される

php_commentout2-2
phpコメントアウト

コメントアウトの注意点

/**/を入れ子で使うとエラーになるので注意が必要。

<?php
  /*  echo "Hello World";       
   /*  echo "Hello World";  */
    echo "Hello World"; 
  /*      
?>

上記の場合、3行目の「echo "Hello World";」がコメントアウトされていない状態となる

PHPはechoを使って文字列を出力する

PHPでのechoの使い方は以下のとおり

<?php
    echo "Hello World";      
?>

上記では「Hello World」が文字列として出力・表示される

もちろんechoはHTML内で記述が可能。

<!DOCTYPE html>
<html lang="ja">
  <head>
    <meta charset="UTF-8">
    <title>Hello World</title>
  </head>
  <body>
    <?php
        echo "Hello World";
    ?>
  </body>
</html>

  • この記事を書いた人
  • 最新記事
oyakun

OYAKUN

40代3児のパパ。小企業のWeb担なんでも屋。趣味はジョギングとばどみんとん。はしゃぎすぎて骨折5回(左肘・両足首・鎖骨・右手首)経験済み。最近やっとウィスキー飲めるようになりました。