「続きを読む」(moreタグ)をカスタマイズ

WordPressではほとんどのテーマでは、複数の投稿を表示するアーカイブページ(カテゴリー別、タグ別、年月日別、作成者別など)ではmoreタグ(<!--more-->)を挿入することで、各投稿をその部分まで抜粋として表示してくれます。
今回はその「続きを読む」についてのカスタマイズについていくつか。
URLに#more~が付かないようにする
「続きを読む →」の遷移先のURLには、[#more~]とついてしまいます。それを取り除くコードです。
URLに#more~が付いた状態で一人歩きするのもキモチ悪いので除去しました。
// functions.php(子テーマ)に追加 function remove_more_jump_link( $link) { $offset = strpos( $link, '#more-'); if ($offset) { $end = strpos( $link, '"', $offset); } if ($end) { $link = substr_replace( $link, '', $offset, $end-$offset); } return $link; } add_filter( 'the_content_more_link', 'remove_more_jump_link');
要素まで移動しないようにする
「続きを読む」からページに移動した際には通常、moreタグを挿入した後続の要素<span id="more-xxx"></span>までジャンプしますが、StripTeaseを導入するとページ先頭から表示されます。
上記の「「続きを読む →」のURLに#more~が付かないようにする」のプラグインです。(インストール・有効化だけです。)
別タブ(ウィンドウ)で開くようにする
「続きを読む」をクリックすると別タブ(ウィンドウ)で遷移先ページが開くようになります。
以下のコードをfucntions.php(子テーマ)に追加して下さい。上の#more~除去と組み合わせる場合は、2~5行目をreturn $link前に挿入。
function my_more_jump_link( $link) { $offset = strpos( $link, 'a href'); if ($offset) { $link = substr_replace( $link, 'a target="_blank" href', $offset, 6); } return $link; } add_filter( 'the_content_more_link', 'my_more_jump_link');
「続きを読む →」のスタイルを変更する。
リンクに"more-link"クラスが付与されているので子テーマのstyle.cssで定義できます。
.more-link{ .. }
「続きを読む」折りたたみ
「続きを読む →」をクリックすると通常はその単一のページにリンクされますが、以下のプラグインを使用するとページ遷移することなく、残りの部分(moreタグ以降)を表示してくれます。
Read More Right Here => 折りたためる・開閉が可能
AJAX Read More => 一度開くと折りたためない
「続きを読む」を自動で付与してくれるプラグイン
Auto More Tag
ダウンロード
インストール・有効化して、管理画面の「設定」→「Auto More Tag」へ移動
以下の項目で設定ができます。
- Add More Tag after:設定数値
- Characters, Words or Percent of Post?:設定数値のカウント
「Characters」:文字数ベース 「Words」:単語数ベース 「Percent」:パーセンテージ - Break On?:moreタグを挿入する際
「Space」:スペースを挿入 「End of Line」:改行を挿入 - Auto Update Posts On Settings Update?:設定変更の際した場合に自動的に更新するか
- Ignore Manually Inserted Tags?:投稿で挿入したmoreタグ
「Yes」:優先させない 「No」:優先させる - Set More Tag On Pages?:固定ページで使用するか否か
「続きを読む」をマークアップできる「Custom More Link Complete」
これ知らなかった
投稿内でmoreタグを挿入すると<!--more-->と追加されますが、例えば<!--more クリックして続きを読む-->とするとテキストをそのように書き換えてくれます。
<!--more [置き換えたいテキスト]-->
その他「こうカスタマイズしたい」や「こういうことできるよ」というのありましたらコメントいただけたらと。
関連記事
-
-
テーブル実装プラグイン「TablePress」 + レスポンシブ対応
「TablePress」は、WordPressにテーブルを実装できるプラグインです。専用のレスポンシブ化のプラグインもリリースされています。ダウンロード デモ (PCの場合はブラウザの幅狭めてみたり
-
-
パーマリンク・スラッグなどURL カスタマイズ
管理画面からの設定 管理画面の「設定」→「パーマリンク設定」で以下の設定が可能です。 共通設定 色々なタグの組み合わせで、URLをカスタマイズできます。 パーマリンク設定の画面に利用可
-
-
「編集(Edit)」リンクの非表示方法
ログインした状態で投稿ページを開くと投稿内や各コメントに各編集ページへリンクしてくれる「編集」リンクが表示されます。(繰り返し言いますが、自サイトにログインしているユーザにしか見えません。) こ
-
-
Twenty Fifteen テーマ用フォント "Noto" / "Inconsolata"の使用を止
TwentyFifteenでは、テーマ用のフォントとして「Noto」と「Inconsolata」というフォントをGoogleフォントから引っ張ってきて使用されるようです。 ちなみにどのようなフォント
-
-
テーマ ブックマーク 2014
有料 技術系・ガジェットサイトテーマ 30 Blog & Magazine Style WordPress Themes for Tech & Gadget Sites
-
-
RSS/Atomフィード カスタマイズ
RSSフィードのカスタマイズ 標準で出力されるフィード WordPressの各種ページで出力されるフィードは以下になると思います。 投稿:投稿のフィード @全てのページ サイトのコメント:
-
-
アップグレードで「更新を展開しています... 」のままになった場合の対処のひとつ
久々に出会ったような気がするのでメモです。 ローカルのテスト環境でWordPressを3.7から3.8にアップグレードしようとしたところ、「更新を展開しています... 」で止まってしまい更新処理がす
-
-
アバターサイズの変更など Twenty Twelve 1.3での変更点
Twenty Twelve 1.3 での変更点 アバターサイズの設定ロジック変更 ヘッダ画像の設定ロジック変更 全ての変更点はこちら Changes from twentytwel
-
-
アイキャッチにマウスオーバーすると投稿タイトルを表示
WordPressのフォーラムから定期的に流入があるため、対応をいくつか探ってみました。トピックは、「サムネイルにマウスオーバーするとタイトルが表示されるようにしたい」 ちなみに、投稿内のキャプ
-
-
プラグイン関連のJSやCSSの読み込みをフィルター
プラグインをインストールしていくとheadやfooter内がCSSやJSで溢れていきます。できるだけ、自分で書けるものに関しては、余計なコールが少なくなるので可能な場合はそうしていますが(そうもいかず
Comment
あとで | 「続きを読む」(moreタグ)をカスタマイズ http://t.co/O7hC6T9OLH
[…] 「続きを読む」(moreタグ)をカスタマイズ http://kwski.net/wordpress/1095/ […]
◆「続きを読む」をカスタマイズ
http://kwski.net/wordpress/1095/