2026.02.20 学習記録 ~WordPressとPHP~

WordPressのテーマについて

★インストールされている場所

FTPのWordPressをインストールした階層より /wp-content/themes/

  • 使いまわしの効率を上げるのには、出来るだけ「themes」にまとめておく。
  • 逆に、お客さんに編集をさせたくない場合は、これ以外の場所にファイルを作成する。
  • ファイル名の重複がおこりやすいので、管理とバックアップは要注意!

PHPの基本

「<?php~?>」 がphpの基本構文。
プログラムの終了には必ずセミコロン「;」になる。
拡張子は、「.php」。

  • wordpressはphpを基本として作られてる。
  • 動的プログラム、サーバサイドプログラム「php」を使って利用している。
  • サーバサイドプログラムのため「Javascript」と違いブラウザでコードを確認することはできない。

テーマ作成で必要最低限の構造

  • index.php…全てのテンプレート階層の元になる
  • style.css…テーマの情報を入力する場所

Style.cssに記述する内容

WordPressは「style.css」のコメントアウト部分を見てテーマの情報を読み取る。
オリジナルテーマの情報はここに記述する。
必須項目は「 Theme Name 」のみ。

/*
Theme Name: sample
Theme URI: /www/sample_test/wp-content/themes
Description: 専用テーマ名
Version: 1.0
Author: xxxxx
Author URI: http://samples.sakura.ne.jp/sample_test/
*/

WordPressサイトのフォルダ構成について

WordPressのフォルダで移行に関連するフォルダの例。
※投稿ページや固定ページ等コンテンツデータはデータベースに格納されているため、ファイルとして確認することはできない。

  • テーマフォルダ:/wp-content/themes
  • プラグインフォルダ:/wp-content/plugins
  • メディアライブラリィフォルダ:/wp-content/uploads

All-in-One WP Migrationのプラグインでサイト移行をした場合、移行データフォルダも作成される。

  • 移行データフォルダ:/wp-content/ai1wm-backups

インクルードを活用する方法

インクルードのタグ及びファイル

  • header.php
    <?php get_header(); ?>
  • footer.php
    <?php get_footer(); ?>
  • sidebar.php
    <?php get_sidebar(); ?>

自作テンプレート(例:sample.php)
<?php get_template_part('sample'); ?>
※Sampleの部分をファイル名に変更。

テンプレート階層

  • home.php
    トップページ
  • single.php
    投稿ページ
  • category.php
    カテゴリー別のページ一覧
  • 404.php
    エラーページ
  • page.php
    固定ページ
  • tag.php
    タグ別のページ一覧
  • search.php
    検索結果ページ
  • archive.php
    アーカイブ毎のページ
  • date.php
    日付別のページ一覧

※全ての元は「index.php」になる。

WordPressの独自タグ

必須のテンプレートタグ

  • head内の情報
    <?php wp_head(); ?>
  • 管理ツールバー
    <?php wp_footer(); ?>

よく利用するテンプレートタグ

  • 文字コード
    <meta charset="<?php bloginfo( 'charset' ); ?>">
  • 言語設定
    <html <?php language_attributes(); ?>>
  • タイトルの設定
    <title><?php wp_title('|', true, 'right'); ?>
    <?php bloginfo('name'); ?></title>
  • スタイルシートを読み込む
    <link href="<?php echo get_stylesheet_uri(); ?>" rel="stylesheet">
  • テーマファイルまでのパスを読み込む
    <?php echo get_template_directory_uri(); ?>
  • サイトタイトルを読み込む
    <?php wp_title(); ?>
  • 管理画面のキャッチフレーズ
    <?php bloginfo('description'); ?>
  • 記事のパーマリンク
    <?php the_permalink();?>
  • 説明文+カスタムフィールド
    ※管理画面のキャッチフレーズ
    <?php if ( $post->my_description ): ?>
    <meta name="description" content="<?php echo esc_attr( $post- >my_description ); ?>">
    <?php else: ?>
    <meta name="description" content="<?php bloginfo('description'); ?>">
    <?php endif; ?>
  • キーワード+カスタムフィールド
    <?php if ( $post->my_keywords ): ?>
    <meta name="keywords" content="<?php echo esc_attr( $post- >my_keywords ); ?>">
    <?php else: ?>
    <meta name="keywords" content="Sample,サンプル,ダウンロード">
    <?php endif; ?>
  • 記事のパーマリンク
    <?php the_permalink();?>
  • 記事タイトル
    <?php the_title(); ?>
  • 記事内容
    <?php the_content(); ?>
  • カテゴリ
    <?php the_category(','); ?>
  • 投稿時間
    <?php echo get_the_date(); ?>
    <?php the_time(); ?>
  • アイキャッチ画像
    <?php the_post_thumbnail(); ?>

備考・メモ

おすすめレンタルサーバー

  • さくらのレンタルサーバ スタンダードプラン
    36ヵ月払いとその他の短い期間での料金の差が少ない。
  • XSevber スタンダードプラン
  • ロリポップ!レンタルサーバー ライトプラン
    ※サポートが必要ならスタンダードプラン。
  • リトルサーバー リトルプラン
    最安!
    他のサーバーよりもディスク容量は少ないが問題なし。

※サーバーの他、ドメイン名を貰うにも別で契約が必要!

  • お名前.com

WordPressサイトの移行に必要なもの

  • WordPressサイト環境(テーマ、プラグインなど)
  • 設定情報、投稿データ、固定ページデータ
  • メディアデータ

※All-in-One WP Migration and Backupのプラグインを使えば、テーマやプラグインも含めて一括で移行ができる!

今回の移行作業でやること

  • ワードプレスの「設定」「一般」の「管理者メールアドレス」
    現在は訓練校になっているので、自分のアドレスに変更する。
  • ワードプレスの「設定」「一般」の「パーマリンク」
    何もいじらずに「変更を保存」を押下。
  • 「ユーザー」→ユーザー名の「test」を削除。

アップロードしたメディアの元データがローカルになかった場合、/wp-content/uploadsから直接データを落とし直すことも可能。

その他資料・リンク

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です