MENU

【WordPress】投稿記事ページ区切りリンクの自作

長い記事だとページ区切りを使って記事を複数ページに分割したりする。

そのリンクに自作スタイルを当てたい場合について。

目次

該当CSSクラス

基本のクラス名は.post-page-numbers、現在のページは.currentが追加。

上図の例ではこんな感じで自作スタイルを当てる。

.post-page-numbers {
  display: inline-block;
  margin-left: 10px;
  width: 34px;
  height: 36px;
  line-height: 36px;
  text-align: center;
  color: #1391E6;
  background: #FFFFFF;
  border: 1px solid #1391E6;
  border-radius: 4px;
  cursor: pointer;
  -webkit-transition: color 0.4s, background-color 0.4s;
  transition: color 0.4s, background-color 0.4s;
}

.post-page-numbers.current {
  color: #FFFFFF;
  background: #1391E6;
}

ちなみに:リンクを出力するWordPress関数

wp_link_pages();で出力できる。(Codexリンク

自作でスタイルを当てたい場合はリンクを囲う前後のタグの指定等もしたい場合があるため、この関数でカスタマイズする。

パラメーター説明デフォルト値備考
beforeリンクの前に挿入されるテキスト<p>Pages:
afterリンクの後に挿入されるテキスト</p>
link_beforeリンクテキストの前に挿入されるテキスト(空文字列)バージョン 2.7 以降
link_afterリンクテキストの後に挿入されるテキスト(空文字列)バージョン 2.7 以降
next_or_numberページ番号を使用するか、次へのリンクを表示するか‘number’‘next’はWordPress 1.5 以降
separatorページ番号の間に挿入されるテキスト(スペース 1 文字)WordPress 3.6 以降
nextpagelink次のページへのリンクのテキストNext pageWordPress 1.5 以降
previouspagelink前のページへのリンクのテキストPrevious pageWordPress 1.5 以降
pagelinkページ番号のテキストフォーマット%% はページ番号に置換される
echoHTMLを直接出力するかどうか1 (True)0 は False

↓実装例

<?php
wp_link_pages(
  array(
    'before'          => '<div class="pagination"><div class="pagination-inner">',
    'after'           => '</div></div>',
    'link_before'     => '',
    'link_after'      => '',
    'next_or_number'  => 'number',
    'separator'       => '',
  )
);
?>

↓出力されるHTML

<div class="pagination">
  <div class="pagination-inner">
    <a href="http://〜省略〜" class="post-page-numbers">1</a>
    <span class="post-page-numbers current" aria-current="page">2</span>
  </div>
</div>
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

CAPTCHA


目次