ぱそこん生活感。のTOPへ


2012.05.22

次の記事へのリンクをショートコードで作ってみる

 ワードプレスのテーマ自作サイトの基礎編では、連続ものなので記事の最後において「次の記事はこちら」みたいなリンクを設置しています。これは普通に設置すると、下のような結構ややこしいものになります。そこで、ちょっと楽する方法を考えて見ました。

<p class="next-kiji-link">
次は:<a href="http://(アドレス)/?p=174">(記事タイトル)</a>
</p>

 
具体的にはショートコードを使って見ようと思います。記事のIDを与えて、それを上のようなリンクに展開するようにします。
 
 ネット検索をしたら、antispambot()、get_permalink()をショートコードで。WordPressのショートコードを自作してみるといった参考サイトが見つかりました。ありがたく参考にさせて頂きます。結論としてはfunctions.phpに下のコードを追加することで実装できました。

function get_next_kiji_link($atts) {
  extract(shortcode_atts(array( /*ショートコード内のidを取り出す*/
    'id' => 1, /* 記事id 未指定時の初期値 */
  ),$atts));
  $link = get_permalink($id); /* 記事IDからリンクURLを取得 */
  $title = get_the_title($id);
  return '<p class="next-kiji-link">次は:<a href="'.$link.'">'.$title.'</a></p>'; /*リンク書式全体を結合して返す*/
}
add_shortcode('link','get_next_kiji_link'); /* linkショートコードが呼ばれたらget_next_kiji_link関数を実行する */

 
get_next_kiji_linkという関数を設定し、add_shortcodeでショートコード名(ここではlink)を関数(ここではget_next_kiji_link)と結び付けます。
 
そして、最後に投稿画面にて次のようなショートコードを書き入れます。

[link id="174"]

 
以上の作業により、↓のように見事に次記事へのリンクが生成されます。やりました!


ちなみに右寄せするにはCSSが必要です。今回は下のようにしました。

.next-kiji-link {
    margin: 10px 0 0;
    text-align: right;
    color: forestgreen;
    font-weight: bold;
}

 

この記事には追記があります。→リンクのショートコードの改造





    国の金融政策