【WordPress】Inspiroでフッターに表示されるテキストを変更する方法

inspiro-screenshot WordPress
記事内に広告が含まれていることがあります。
[PR]

WordPressの人気テーマInspiroを使うと、デフォルトでは下部に、「Powered by WordPress」と「Inspiro WordPress Theme by WPZOOM」が表示される。

Inspiroのデフォルトのフッター

変更方法

子テーマの作成

この処理はInspiroのテーマ内のファイルに記載されているため、変更は子テーマを作成して行う。

子テーマはTEMPLATEというサイトでダウンロードできる。

Zip形式のファイルを解凍すると、子テーマの作成に必要なファイル一式が入っている。

このファイルを、WordpressのInspiroのテーマと同じディレクトリに配置する。

wp-content > themes > inspiro-child

これで子テーマを使う準備が完了。

WordPress管理画面の「外観」→「テーマ」に、新しく子テーマが追加されているのでこれを有効化する。

子テーマの必要性や、名前の変更などは以下をご参照。

template-partsディレクトリのコピー

子テーマの中でファイルを編集するため、Inspiroのテーマディレクトリの中にある、「template-parts」ディレクトリをコピーして、子ーテーマのルートディレクトリの直下に配置する。

site-info.phpの編集

「template-parts」の中の「footer」ディレクトリの中にある、site-info.phpが今回編集するファイルになる。

この中に、「Powered by WordPress」と「Inspiro WordPress Theme by WPZOOM」を表示する設定が記述されている。

デフォルトでは以下のようになっている。

<?php
/**
 * Displays footer site info
 *
 * @package Inspiro
 * @subpackage Inspiro_Lite
 * @since Inspiro 1.0.0
 * @version 1.0.0
 */

?>
<div class="site-info">
	<?php
	if ( function_exists( 'the_privacy_policy_link' ) ) {
		the_privacy_policy_link( '', '<span role="separator" aria-hidden="true"></span>' );
	}
	?>
	<span class="copyright">
		<span>
			<a href="<?php echo esc_url( __( 'https://wordpress.org/', 'inspiro' ) ); ?>" target="_blank">
				<?php
				/* translators: %s: WordPress trademark */
				printf( esc_html__( 'Powered by %s', 'inspiro' ), 'WordPress' );
				?>
			</a>
		</span>
		<span>
			<?php esc_html_e( 'Inspiro WordPress Theme by', 'inspiro' ); ?> <a href="<?php echo 'https://www.wpzoom.com/'; ?>" target="_blank" rel="nofollow">WPZOOM</a>
		</span>
	</span>
</div><!-- .site-info -->

プライバシーポリシーのリンクの表示設定

冒頭に記述されている処理は、「the_privacy_policy_link」という関数が定義されているなら、処理を実行する。

	<?php
	if ( function_exists( 'the_privacy_policy_link' ) ) {
		the_privacy_policy_link( '', '<span role="separator" aria-hidden="true"></span>' );
	}
	?>

これは、固定ページにある「プライバシーポリシーページ」が公開されているときに、「プライバシーポリシー」というテキストとそのページヘのリンクを表示するコードになる。

現状だとフッターの一番最初に表示される。必要に応じて場所を移動したり消す。

プライバシーポリシーページを有効化した場合

プライバシーポリシーページの変更や新しく作成する方法については以下をご参照。

(参考)【WordPress】 プライバシーポリシーページとは何か?リンクを表示・非表示にする方法。(the_privacy_policy_link、get_the_privacy_policy_linkの使い方)

Powered by WordPressの変更

「Powered by WordPress」の部分を変更していきます。ソースコードは以下のようになっています。

			<a href="<?php echo esc_url( __( 'https://wordpress.org/', 'inspiro' ) ); ?>" target="_blank">
				<?php
				/* translators: %s: WordPress trademark */
				printf( esc_html__( 'Powered by %s', 'inspiro' ), 'WordPress' );
				?>
			</a>

PHPの処理は大きく2つで、aタグのリンク取得と、アンカーテキストの表示です。

esc_url( __( ‘https://wordpress.org/’, ‘inspiro’ ))

まずは、aタグのリンクを取得してる部分です。

esc_urlというWordpressの関数を使って、引数で渡したURLを安全なものにしています。

引数の、__()はWordpressの関数で、指定の言語ファイルの中で、対象のキーの値を出力します。

__( $text, $domain )

引数は2つで、必須な$textと、オプションの$domain。どちらも文字列(string)で指定します。

$domainは指定した$textの値が保存してある言語ファイルの場所を指します。指定の言語ファイルが存在しない場合は、$textをそのまま表示します。

$domainを省略した場合は、現在のロケール名が入ります(「ja」など)。

__( ‘https://wordpress.org/’, ‘inspiro’ ) の場合、対応する言語ファイル inspiro-ja.mo (言語設定が英語の場合は inspiro-en.mo) が存在する場合は、そのファイルの中の「https://wordpress.org/」の値を出力します。

ファイルや「https://wordpress.org/」が存在しない場合は、第1引数の 「https://wordpress.org/」 をそのまま出力します。

言語ファイルは自分で作成して登録・編集することもできます。詳細は以下をご参照ください。

(参考)WordPressのアンダーバー2つ __() とは何?意味と使い方を実例で解説。poやmoの違い。

printf( esc_html__( ‘Powered by %s’, ‘inspiro’ ), ‘WordPress’ );

次の、「printf( esc_html__( ‘Powered by %s’, ‘inspiro’ ), ‘WordPress’ );」はアンカーテキストを表示しています。

・printfはPHPの関数で、指定したフォーマットに沿って文字列を生成し、出力します。

printf ( string $format , mixed ...$values ) 

第1引数に出力したいフォーマットを文字列で記述します。その中で指定子を使い型と入力する内容を指定します。

代入する値は、第2引数以降に記述していきます。

以下の場合は、文字列を指定する指定子%sに、第2引数の「Wordpress」が代入され、出力は「Powered by WordPress」となります。

printf( 'Powered by %s', 'WordPress' )

・esc_htmlはWordpressの関数で、渡した値からタグを除去します。

例えば、「esc_html(<title>ページのタイトル</title>)」とすると、出力は「ページのタイトル」になります。

このため以下の記述は、inspiro-ja.moという言語ファイルの中に、「Powered by %s」という文字列が存在したら、その値を取得し、esc_htmlでタグを除外したものを表示する。という処理になります。

esc_html__( 'Powered by %s', 'inspiro' )

ソースコードの変更

言語ファイルを作成していない場合は、__()を用いる必要はありません。

そもそも、Powerd by 〇〇 は特に表示しなくてもいいものなので、ごっそり削除しても問題ありません。

<div class="site-info">
	<?php
	if ( function_exists( 'the_privacy_policy_link' ) ) {
		the_privacy_policy_link( '', '<span role="separator" aria-hidden="true"></span>' );
	}
	?>
	<span class="copyright">
		<span>
			<?php esc_html_e( 'Inspiro WordPress Theme by', 'inspiro' ); ?> <a href="<?php echo 'https://www.wpzoom.com/'; ?>" target="_blank" rel="nofollow">WPZOOM</a>
		</span>
	</span>
</div><!-- .site-info -->

これで、フッターがかなりシンプルになります。

レイアウトは別途CSSで調整してください。

Inspiro WordPress Theme by WPZOOMの編集

つづいて、「Inspiro WordPress Theme by WPZOOM」の部分を編集します。元のコードは以下のようになっています。

		<span>
			<?php esc_html_e( 'Inspiro WordPress Theme by', 'inspiro' ); ?> <a href="<?php echo 'https://www.wpzoom.com/'; ?>" target="_blank" rel="nofollow">WPZOOM</a>
		</span>

esc_html_e( ‘Inspiro WordPress Theme by’, ‘inspiro’ )

最初のPHP処理の中身は、「esc_html_e( ‘Inspiro WordPress Theme by’, ‘inspiro’ )」です。

esc_html_eは、esc_html関数と、_e関数で、それぞれ別の処理になります。

・esc_htmlはHTMLタグを除外した文字列のみを表示します。

・_eは指定した言語ファイルから、対象のキーの値を抜き出し出力します。冒頭の「e」は「echo」の略です。

__()の場合は、値を取得してくるのみで出力はしません(※echoはつかない)。

_e( 'Inspiro WordPress Theme by', 'inspiro' )

inspriro-ja.mo (またはinsprio-en.moなど)ファイルの中の、「Inspiro WordPress Theme by」キーの値を取得して、出力するという処理になります。

対象のキーやファイルが存在しない場合は、「Inspiro WordPress Theme by」をそのまま出力します。

href=”<?php echo ‘https://www.wpzoom.com/’; ?>” target=”_blank” rel=”nofollow”

後ろのaタグの部分は、href属性として、「https://www.wpzoom.com/」を表示しています。(文字列をそのままechoしているので、phpタグで囲む必要はない)

<a href="<?php echo 'https://www.wpzoom.com/'; ?>" target="_blank" rel="nofollow">WPZOOM</a>

・target=”_blank” はリンク先を別タブ(ウィンドウ)で開く指示。

・rel=”nofollow”はクローラーにリンク先を辿らないように指示しています。

ソースコードの変更

表示したいリンクや文字列をベタ打ちするのでも問題ありません。せっかくなので、現在のWordpressサイトのホームURLを表示する、「home_url()」を使います。

また、サイト名は「bloginfo(‘name’)」、サイトの説明は「bloginfo(‘description’)」で表示することができます。

<div class="site-info">
	<?php
	if ( function_exists( 'the_privacy_policy_link' ) ) {
		the_privacy_policy_link( '<span role="separator" aria-hidden="true">', '</span>' );
	}
	?>
	<span class="copyright">
		<span>
			<a href="<?php echo home_url(); ?>" target="_blank" rel="noopener noreferrer">
				<?php echo bloginfo('name')  ?>
			</a>|
			<?php bloginfo('description') ?>
		</span>
	</span>
</div><!-- .site-info -->
カスタム後のフッター

以上で完成です。お疲れさまでした~

タイトルとURLをコピーしました