[WordPress] 別ディレクトリのWPとfunctions.phpを共有する

      2018/04/07

wordpress-logo

複数のWordPressを運営している場合に、別の場所にあるWordPressシステムとテーマファイルを共有する方法です。

前回、functions.php以外のテーマファイルの共有方法を説明しました。

[WordPress] 別ディレクトリのWPとテーマを共有する
複数のWordPressを運営している場合に、別の場所にあるWordPressシステムとテーマファイルを共有する方法です。 全ファイルコピーではないので、部分共有も可... 続きを読む

今回は functions.php の共有方法です。

SPONSORED LINK

functions.php 内で別ファイルの読み込み

方法は意外と簡単でした。functions.php を複数のファイルに分割する場合と同じく、functions.php 内で別ファイルを呼び出すことで実現できます。

分割したファイルの呼び出し

通常なら分割したファイルをこう呼び出します。

require 'functions_hoge.php';

これを、サーバー上のフルパスで記述するようにします。例えばこんな感じです。

require '/home/username/itjo.jp/public_html/wordpress/wp-content/themes/hoge/functions_hoge.php';

「/home/username/itjo.jp/public_html」の部分はサーバーによって異なるので適宜変更してください。

サイトAからもサイトBからも、同じサイトAのphpファイルを参照するようにすることで、一つのファイルに統一するということです。

functions.php は外部ファイルの呼び出しだけにした方が良い

サイトAもサイトBも functions.php には外部ファイルの呼び出しだけにした方が管理しやすいです。

サイトA の functions.php

<?php
require '/home/...[サイトA].../themes/hoge/functions_hoge.php';
require '/home/...[サイトA].../themes/hoge/functions_fuga.php';
?>

サイトB の functions.php

<?php
require '/home/...[サイトA].../themes/hoge/functions_hoge.php';
require '/home/...[サイトA].../themes/hoge/functions_fuga.php';
?>

 

あとはサイトAに functions_hoge.php と functions_fuga.php を用意すれば、一つのファイルに統一できます。

サイトBからサイトAの functions.php を直接参照することもできますが、やめておいた方が良いです。直接 functions.php を参照してしまうと、片方のサイトだけに適用したい関数を追加することができなくなります。現状そのような関数が無かったとしても、後々必要になる可能性を想定しておくべきだと思います。

SPONSORED LINK

まとめ

これで複数サイトでもテーマ内のすべての php ファイルを統合することができました。

あとはスタイルシートも共通にすれば完璧ですね! まだスタイルシートの統合はしていませんが、いずれやろうと思っているのでうまくいったらまた解説します。

itjo レスポンシブ 本文下

 - WordPress
 - ,