WordPress 外部PHPファイル 読み込み functions.phpでショートコード設定

WordPress 外部PHPファイル 読み込み functions.phpでショートコード設定
機能を追加したいときテーマやプラグインに頼らず、自力でカスタマイズできれば、WordPressサイトはより簡単にグレードアップできる。今回は外部PHPファイルの読み込み。デバイス振り分け、同一関連ページリストアップ

WordPressのカスタマイズは外部PHPファイル読み込みから

記事内でも、テーマファイル内でも、外部PHPファイルを読み込むことができる

外部PHPファイルは、拡張子を「.php」にしなければならないが、中身は素のテキストでも、JavaScriptでも、HTMLでも、もちろんphpでも、OK

WordPressサイトを変えたくなったらテーマかプラグイン?

WordPressは、必ずテーマを必要とする
そして、有効化できるテーマは1つだけ
そのままでは、同時に2つのテーマを有効にすることはできない

今、使用中のテーマにはない「A機能」を使いたいとき、それが使える別のテーマを探すことになる

次に、それではもの足らず「B機能」が欲しいときは、それがかなうテーマに変えると、「A機能」を諦めないといけない
または、「A機能」と「B機能」が備わった、またまた別のテーマを漁るしかない

あるいは、1機能だけのテーマに、足りない機能を追加できるプラグインに頼ることになる

切りがない

しかも、WordPress、PHPなどのバージョンアップで、今のテーマやプラグインが使えない、あるいはおかしくなることも多い

だから、自分でカスタマイズできるなら…

外部PHPファイルの読み込み事例

WordPressカスタマイズとしては序の口、外部PHPファイルを読み込むことは、サイトの作成や修正をより簡単にすることができる

SEO塾のメルマガはまぐまぐ殿堂入り 検索エンジン対策やインターネットビジネス情報のメールマガジン

上記ページで、メルマガ記事のバックナンバーを読み込んでいる

メルマガバックナンバー読み込み

読み込みたいページの最後に次のようにショートコードを記載

[magabknmbr]

ショートコードは、記事内に既述する

functions.phpにショートコード設定を追記

//ショートコードを使ってPHPを読み込む 
function show_magabknmbr_php() {
ob_start();
get_template_part('ownphpdir/magabknmbr');
return ob_get_clean();
}
add_shortcode('magabknmbr', 'show_magabknmbr_php');

記事内ではなく、テーマファイルで読み込むときは、次のような既述

<?php get_template_part('ownphpdir/magabknmbr'); ?>

記事内でもテーマファイルでも、テーマディレクトリー内に、たとえば子テーマなどで、「ownphpdir」ディレクトリーを作り、その中に「magabknmbr.php」ファイルを作成して、コンテンツを記述する

外部PHPファイルの読み込み事例 その2

【2020年3月】レスポンシブ CSSブレイクポイント・メディアクエリ(@media)

こちらのページでは、コンテンツの上下に、AdSenseが表示されているが、これは、外部PHPファイルのAdSenseコードを読み込んでいる

AdSenseを表示させる場所にショートコードを設定しておけば、外部PHPファイルのAdSenseコードを、よりクリック率が高いものにすぐに変更できる。たとえば、ネイティブ広告とディスプレイ広告を入れ替えるなど、ローカルで書き換えてファイルをアップロードするだけで済む

あるいは、記事内やテーマファイルのショートコードを検索置換して、別の外部PHPファイルを読み込む

読み込むファイルをデバイスで振り分け

事例のページを(サイトのどのページも)スマートフォンで閲覧、あるいはパソコンのブラウザーでレスポンシブモードで表示させると、スマホアプリでよく見かけるフッターナビゲーションバーが現れる

スマートフォンのアプリのようなフッターナビゲーションバー

テーマファイルのfooter.phpに、次のように既述している

<?php if ( is_mobile() ) : ?> //スマホのとき
フッターナビゲーションバーの外部PHPファイルを読み込み <?php else: ?> //スマホ以外のとき
<?php endif; ?>

つまり、スマートフォンでフッターナビゲーションバーを読み込むが、スマホ以外では読み込まない、デバイス振り分けの仕掛けである

読み込むファイルをタグで振り分け

このページのコンテンツ箇所の下部で、同じタグを持つページをリストアップしている

同一タグなど関連ページリストアップ テキスト版

これは、single.phpに次のように既述している

<?php get_template_part('ownphpdir/related-same-tag'); ?>

「related-same-tag.php」そのものは、WordPressカスタマイズ ガイドでどうぞ

また、姉妹サイトでは、テキストだけではなく、サムネイル付きで関連ページをリストアップ

同一タグなど関連ページリストアップ サムネイル版

こんなことは、むかしはプラグインでやっていた

YARPPカスタマイズ WordPress関連記事サムネイル/アイキャッチ(横長)と画像設定

 

«