WordPress のカスタムページテンプレートの使い方

カスタムページテンプレートとは固定ページのカスタムテンプレートのことです。

固定ページを別テンプレートで表示できると言ってもよいですね。

使い方

PHP ファイルを作成して、以下のようにコメント内に Template Name を書きます。

<?php
/*
Template Name: 私のカスタムページ
*/

ページテンプレート – WordPress Codex 日本語版

こちらのファイルを記載するだけで、テンプレートを利用できるようになります。

テンプレートの適用ページ

テンプレートが適用されるかは命名規則がありますので、開発する場合はこちらは押さえておきましょう。

テンプレート階層

カスタムテンプレート — ページにカスタムテンプレートが割り当てられていれば、WordPress はファイルを探し、見つかればこれを使用します。
page-{slug}.php
 —
 見つからなければ、WordPress はページのスラッグで特殊化されたテンプレートファイルを探し、見つかればこれを使用します。
page-{id}.php
 —
 見つからなければ、WordPress はページの ID で特殊化されたテンプレートファイルを探し、見つかればこれを使用します。
page.php
 —
 見つからなければ、WordPress はテーマのデフォルトのページテンプレートを探し、見つかればこれを使用します。
index.php
 —
 見つからなければ、WordPress はテーマの index ファイルを使用します。
ページテンプレート – WordPress Codex 日本語版

ポイントとしてはpage-{id}.php などは、id部分がマジックナンバーになりますので使わない方が良いと考えています。

参考

https://wpdocs.osdn.jp/%E3%83%9A%E3%83%BC%E3%82%B8%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88

WordPress サーバー移行方法とポイント

WordPress のサーバー移行に関する投稿となります。

WordPress の移行方法には様々な選択肢があります。結論から言えば All-in-One WP Migration による移行がおすすめですが、他の手法も強力なので慣れておくと役立ちます。

WordPress Importer による移行

WordPress のデフォルトプラグイン、WordPress Importer による移行は、シンプルで最も簡単というメリットがあります。

WordPress Importer の移行はテキストの投稿を移行するだけなら、十分に動作しますので、オススメの手法です。

一方で、いくつか課題もありますのでご注意ください。

  • xml ファイルの容量制限
  • メディアファイルの移行
  • アイキャッチの移行

xml ファイルの移行や容量制限、もしくは条件によってはメディアファイルの移行がうまくいかない、また、そもそも現状ではアイキャッチは移行されませんので、注意が必要です。

All-in-One WP Migration による移行

プラグインの All-in-One WP Migration を利用した移行は圧倒的におすすめです。

All-in-One WP Migration の無料版では、移行ファイル 512MB 以内なら移行できます。

ビジネスサイトを運営されている方なら、有料版でも7000円ほどなのでそれほど気に留める金額でもないでしょう。

All-in-One WP Migration のメリット

WordPress の移行では多くの場合、様々な課題が生じものですが、All-in-One WP Migration を使用した移行では、あらゆる WordPress の設定が移行されます。

例えばユーザー設定やテーマやプラグインの設定などの細かい部分ですね。これは大きなメリットです。

移行はエクスポートしたファイルをインポートするだけ

「エクスポート先」は基本的には「ファイル」を選択すれば問題ありません。

「サイトをインポートしました。」と表示されれば成功です。

サイトをインポートしました

インポートが成功した場合ですね。

懸念点

インポートの際には、post_size など容量の設定変更が必要になるかもしれません。また、仮に有料版を使用しても、あまりにも巨大なサイトを移行するには問題が生じる可能性があります。

CSV による移行

WordPress Importer のアイキャッチ移行されない問題への対応時や All-in-One WP Migration を使用しない際に使えるのが CSV を使った移行です。

複雑なことをしていないサイトなら CSV による移行は使える手法です。

WP CSV Exporter で CSV をエクスポートする

CSV のエクスポートには WP CSV Exporter を使用します。

ツール > CSV エクスポート からエクスポートを行います。
アイキャッチ画像(thumbnail)をチェックしてからエクスポートを行なってください。

Really Simple CSV Importer でインポートする

インポートには、Really Simple CSV Importer を使用します。

CSV 移行の課題

CSV による WordPress の移行では、プラグインに任せるため、デフォルト以外のカスタマイズなど複雑な設定などはうまく移行できないかもしれません。

Really Simple CSV Importer に慣れていたら、Excel などでカスタマイズもできるかもしれませんね。

Really Simple CSV Importer の使い方 については記事で公開しています。

画像などメディアファイルの移行が課題のケース

WordPress の移行作業では、メディアファイルの移行が課題になる場合があります。

FTP やコピーでメディアファイルを移行すると WordPress に認識されない

メディアファイルをサーバーの wp-content/uploads/ に同じ構成でアップロードしたにもかかわらず、メディアファイルが WordPress から見つからない場合があります。

権限の問題ではない場合は、メディアファイルの紐付けにより回復させることができます。

Add From Server でファイルの紐付けをする

ファイルと紐付けをするには Add From Server を使います。

プラグインを利用することで、ファイルの紐付けが可能です。
紐付け後に、WordPress のメディア画面から確認してください。

まとめ

WordPress サーバー移行方法とそのポイントに関してまとめました。

WordPress の移行方法には様々な方法がありますが、基本的には All-in-One WP Migration がおすすめです。ただ、経験を重ねると環境にあった方法を選択することができます。WordPress のスムーズな移行ができるといいですね!

wp_footer() の使い方

footer で呼ばれている wp_footer() というのはどういう意味があるのでしょうか。

wp_footer() については1度知ってしまうとシンプルなものです。
footer 付近で呼びたいスクリプトなどを出力する関数です。

使い方

wp_footer(); は引数がないのでポイントです。

wp_footer();

基本的には wp_head() と同じような動きだが、呼ばれる場所が違うものと考えれば良いでしょう。

もし WordPress のテーマ内で呼ばれていたらどこかで wp_footer() で呼ばれたスクリプトが使用されているかもしれません。むやみに消さないほうがいいですね。

参考

https://wpdocs.osdn.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0/wp_footer

最低限で始める SEO ツール

ビジネス上の SEO 対策を行う際、無料のツールで十分 SEO 対策が可能です。

一見小難しく感じる SEO の専門家の分析も、基本的にはツールの力でコンサルティングを行なっているだけです。
SEO 対策を行う上で対策の予算が少ない場合でも、無料のツールで十分に成果を出すことができます。

ツールは完全に知識だけの分野なので、ツールを学ぶことでビジネスで成果を出してください。

アクセス解析ツール

  • GoogleAnalytics(グーグルアナリティクス)
  • SearchConsole(サーチコンソール)

GoogleAnalytics(グーグルアナリティクス)

GoogleAnalytics は SEO 対策初期から導入しましょう。
これを抜きには話が始まらないという GoogleAnalytics です。

まずは GoogleAnalytics を導入してアクセス数を見てみましょう。

SearchConsole(サーチコンソール)

SearchConsole は SEO 対策初期から導入しましょう。
SearchConsole を導入することで、サイトへの検索流入の具体的なキーワードを閲覧することができます。

必ず GoogleAnalytics との連携を済まして起きましょう。

キーワード分析ツール

  • キーワードプランナー – Google Ads
  • Neil Patel さんの Ubersuggest

キーワードプランナー – Google Ads

Google Ads は Google に検索エンジン型広告を出すツールです。SEO 対策初期から導入しましょう。

Google Ads にキーワードプランナーがくっついています。検索エンジン型広告は SEO とも関連が深いということがわかると思います。

Ubersuggest

Ubersuggestとして、Neil Patel(ニール・パテル)という方のサイトで公開されている SEO ツールです。SEO 対策初期から導入しましょう。

このツールは強力なツールです。キーワード調査からドメイン調査までできてしまいます。

最低限で始める SEO ツールまとめ

最低限で始める SEO ツールということで、無料で開始できる SEO ツールを中心にご紹介しました。

他にもランキング水位分析やコンテンツ分析ツールなどがございますが、最初は本当に最低限のツールで十分の効果が得られます。

ツールが多すぎるなども学習コストが増えてビジネスのスピードが遅くなります。最初はツールを絞ってスモールスタートがビジネスで成果をだすポイントだと思います。

WordPress のプラグインとはなんのこと?疑問に答えます

WordPress ではよくプラグインをインストールをすればいいとされています。
しかし、なぜ WordPress はプラグインを入れた方がいいのか、WordPress の前提などについてはあまり述べられていないことが一般的かもしれません。

この記事ではそもそも WordPress のプラグインとはなんのことなのか、疑問に答えます。

WordPress のプラグインとは何?

プラグインとは、WordPress では次のように説明されています。

プラグインは、WordPressの機能を拡張するためのツールです。

プラグイン – WordPress Codex 日本語版

つまり、プラグインとは WordPress に簡単に機能を追加することができるプログラムパッケージと考えてください。

WordPress の初期状態は最低限の機能しかない

WordPress の魅力とは、無料でありながら世界中に開発者がおり、プラグインやテーマが豊富に用意されていることだとされています。

しかし、WordPress をインストールした初期状態では、WordPress は最低限の機能しか有していません。

これは、WordPress が最小の構成を用意する代わりに、プラグインなどを活用してユーザーに合った使い方をして欲しいということなのです。

プラグインの設定には管理者権限が必要

WordPress のプラグインをインストールしたり、設定するには管理者権限が必要です。

WordPress のプラグインは簡単に機能を追加できてしまいますから、逆に色々なユーザーが機能を追加しすぎてしまうと管理が難しくなってしまいます。そのため管理者権限のユーザーのみがプラグインを管理できるようになっています。

WordPress デフォルトプラグイン

WordPress にはデフォルトプラグインが入っています。

  • Akismet Anti-Spam
  • Hello Dolly
  • WP Multibyte Patch

これら Akismet Anti-Spam と WP Multibyte Patch は必須と言われるプラグインです。有効にしておく良いでしょう。日本語版だと WP Multibyte Patch が入っています。

その他、レンタルサーバーやホスティングサービスによってデフォルトプラグインが用意されている場合があります。

おすすめプラグインについては、別記事で紹介しましたのでこちらもご覧ください。

まとめ

WordPress プラグインとはなんなのかというテーマで簡単にご紹介させていただきました。

WordPress はプラグインを使いこなすことでパワフルな効果を出し、ビジネスへ貢献します。プラグインは数が多くわかりにくい面もありますが、有名な必須プラグインは限られています。

必須のものを抑えながら、有効活用していってください。

参考

https://wpdocs.osdn.jp/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3

エスケープをする esc_attr

WordPress でエスケープをする esc_attr() の使用方法です。

echo esc_attr($text);

フォームの値を表示する場合は必ず esc_attr() を使用してエスケープするようです。

参考

https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/esc_attr

CSRF対策のwp_nonce_fieldの使い方

CSRF 対策で wp_nonce_field() を利用することができます。

使い方

wp_nonce_field() を呼ぶとhidden要素が生成されます。

wp_nonce_field( $action, $name, $referer, $echo );

form タグ内に wp_nonce_field() を呼んで出力された HTML コードを確認してみるとわかりやすいです。

参考

https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/wp_nonce_field

WPINC という定数について

WordPress では WPINC という定数が定義されています。

define( 'WPINC', 'wp-includes' );

つまり、WPINC とは wp-includes という文字列のことですね。
wp-includes への参照をしたいときにはこちらを利用しましょう。

プラグイン SAKURA RS WP SSL をさくらレンタルサーバーで設定する

さくらレンタルサーバーで WordPress をクイックインストールすると、プラグイン SAKURA RS WP SSL がインストールされています。

SAKURA RS WP SSL を有効することによって SSL 対応がやりやすくなります。

SAKURA RS WP SSL とは

さくらレンタルサーバーでのみ有効な SSL プラグインということなので、さくらレンタルサーバーで利用します。

SAKURA RS WP SSL の効果

SSL 設定では、HTTP と HTTPS のリダイレクトが必要になります。
これを .htaccess で設定するのがよくある手法です。

しかし、.htaccess の手動編集にはコストがかかります。
SAKURA RS WP SSL を利用することで、.htaccess などの編集することなしにリダイレクト設定が完了する効果があります。

SAKURA RS WP SSL の設定

設定 > SAKURA RS WP SSL で設定画面を開くことができます。

SAKURA RS WP SSL

設定はチェックボックスにチェックをして、「SSL化を実行する」を押下するだけです。

設定変更はプラグイン停止

説明に「変更した内容を取り消したい場合は、プラグインを停止してください。」とありました。

確かにこのプラグインは一度設定すると、設定変更ができないのです。これは珍しいですね。

まとめ

SAKURA RS WP SSL はさくらレンタルサーバーの SSL 対応をするには有力なプラグインだと感じました。

さくらレンタルサーバーをご利用の方はこのプラグイン導入により運用コストの省力化が見込めるとでしょう。

参考

https://help.sakura.ad.jp/hc/ja/articles/115000047641–WordPress-SSL%E5%8C%96%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%E3%81%AE%E4%BD%BF%E3%81%84%E6%96%B9

Parse error: syntax error, unexpected ‘)’ in のような PHP エラー対策

例えば WordPress のサイトを運用している中で PHP で syntax error(シンタックスエラー)が表示される場合があります。

Parse error: syntax error, unexpected ')' in hoge.php on line 11 

このようにエラーが出た場合の対策です。

syntax error は文法ミス

syntax error は文法ミス、つまり PHP コードの書き方を間違っている場合でしょう。

例えば ; (セミコロン)が抜けていたり、)(カッコ)を閉じ忘れていたり基本的なミスがほとんどです。

PHP の文法が正しいか見直そう

syntax error は PHP の文法ミスの場合が多いので、文法を見直すことが一番です。

動いているタイミングでのソースをバックアップしてから、一行一行確認をしてみることが解決への近道となるでしょう。