STINGER+2ではトップページと、サイドバーの記事一覧(「STINGER PLUS2 基本管理画面」でサイドバーに新着記事一覧を表示する設定にしている場合)に抜粋文が表示されますが、今回はその文字数を変更、または削除する方法を備忘録として残します。
STINGER+2(STINGER PLUS2)でトップページ、サイドバーの抜粋文の両方を変更する方法
抜粋文とは、以下の赤字で囲った部分のような、記事の抜粋文です。
STINGER+2では、デフォルトで抜粋文が100文字表示されるように設定されています。
「STINGER PLUS2 基本管理画面」でサイドバーに新着記事一覧を表示する設定にしている場合、その記事にも同じ文字数の抜粋文が表示されます。
まずは、このどちらにも同じ設定を反映させるカスタマイズをしていきます。
トップページとサイドバーの抜粋文の文字数を変更
初期設定では100文字の抜粋ですが、functions.phpを編集する事でこの文字数を変更することができます。
作業前は必ずバックアップを取って保存してください。
WordPress管理画面 > 外観 > テーマの編集をクリックします。
STINGER PLUS2 Child:(子テーマ)になっている事を確認し、右のバーの「functions.php」をクリックして開きます。
以下のコードを編集後、コピペしていきます。
if (!function_exists('st_custom_excerpt_length')) { function st_custom_excerpt_length($length) { if(trim($GLOBALS['stdata73']) !== ''){ $excerptcount = $GLOBALS['stdata73']; }else{ $excerptcount = 100; } return $excerptcount; } }
上のコード内のこの部分、
$excerptcount = 100;
100という数字が抜粋文の文字数なので、好きな数字に変更します。
試しに30に変更し、functions.phpにコードをペーストして「ファイルを更新」をクリックします。
デフォルトは文字数100で、こんな感じでしたが
文字数30に変更後はこうなります。
トップページとサイドバーの抜粋文を削除・消す
また、文字数0にするとこうなりますが
「・・・」が残ってしまいます。
「・・・」を消すにはfunctions.phpに以下のコードを追記します。
if ( !function_exists( 'st_custom_excerpt_more' ) ) { function st_custom_excerpt_more( $more ) { return ''; } } add_filter( 'excerpt_more', 'st_custom_excerpt_more' );
先ほどコピペしたコードの下に追記して、「ファイルを更新」をクリック。
これでトップページとサイドバーの抜粋文が無くなりました。
STINGER+2(STINGER PLUS2)でサイドバーの抜粋文だけ文字数を変更・削除する方法
でもトップページの抜粋文も無くなると、このままのレイアウトでは寂しいですね。
そこで、トップページの記事一覧の抜粋文はデフォルトで100文字のまま残し、サイドバーの抜粋文だけ文字を変更・削除していきます。
作業前は必ずバックアップを取って保存してください。
サイドバーだけ抜粋文の文字数を変更
親テーマから必要なphpファイルをダウンロードし、編集後、子テーマにアップロードしていきます。
FTPソフトで・・・\wp-content\themes\stingerplus2(親テーマのフォルダ)から以下を全部、デスクトップなどにダウンロードします。
newpost-original-thumbnail-off.php
newpost-original-thumbnail-on.php
newpost-originalpage-thumbnail-off.php
newpost-originalpage-thumbnail-on.php
newpost-page-thumbnail-off.php
newpost-page-thumbnail-on.php
newpost-thumbnail-off.php
newpost-thumbnail-on.php
各ファイルの以下のコードを探します。
<?php the_excerpt(); //抜粋文 ?>
その<?php the_excerpt(); //抜粋文 ?> を削除し、以下のコードに書き換えます。
<p><?php echo mb_substr(get_the_excerpt(), 0, 30); ?>...</p>
「30」という数字が抜粋文の文字数です。
この数字を変えることで、表示される文字数が変わります。
実行すると、以下のように、メインの記事一覧はデフォルトの文字数100のままで、サイドバーの新着記事の抜粋文のみ、指定した文字数になりました。
サイドバーだけ抜粋文の文字数を削除・消す
また、サイドバーの抜粋文を非表示にしたい場合は<?php the_excerpt(); //抜粋文 ?> を削除し、以下のコードに書き換えます。
<p><?php echo mb_substr(get_the_excerpt(), 0, 0); ?></p>
すると、サイドバーだけ抜粋文が無くなりました。
ダウンロードした以下のファイルを全て同じように書き換えて、子テーマのフォルダ(・・・\wp-content\themes\stingerplus2-child)にアップしたら完了です。
newpost-original-thumbnail-off.php
newpost-original-thumbnail-on.php
newpost-originalpage-thumbnail-off.php
newpost-originalpage-thumbnail-on.php
newpost-page-thumbnail-off.php
newpost-page-thumbnail-on.php
newpost-thumbnail-off.php
newpost-thumbnail-on.php
phpを保存する時のコードは「UTF-8N」(ボム無し)、改行コードは「LF」にします。
また、phpファイルをアップする時はアスキーモードでアップします。
STINGER+2(STINGER PLUS2)でサイドバーに新着記事を載せない方法
そもそもサイドバーのトップに「新着記事」を表示したくない、という場合は管理画面から設定できます。
WordPress管理画面 >STINGER管理画面をクリック。
新着記事の、「トップページのサイドバーの新着記事一覧を非表示にする」にチェックを入れると表示されなくなります。