スポンサー


    ウェブデザイン基礎講座

    フォトショップ講座

    HTML&CSS講座

    グラフィック講座

    Flash講座

    3D講座

    ウェブプログラミング講座

    サイトメンテナンス講座

    サイト紹介

    スペシャルリンク

サイト内検索

 メールマガジン

テクニック

HomeHTML&CSS講座 > ワードプレスショートコードのサブベージリスト化

ワードプレスショートコードのサブベージリスト化

投稿日:2016年1月8日

このチュートリアルではワードプレスのソーシャルブックマークプラグインを紹介します。


Step1:リストをショートコードへ救出

最近、私はクライアントからの要望で、ページ内のどのエリアにサブベージがリスト化されているかを定義する方法を探していました。通常これはワードプレスが提供するwp_list_pagesファンクションを使って対処することができます。ただそれだと表はテンプレートファイルの中で使われてしまい、典型的なクライアントは何も知らずにいます。ですので、リストをショートコードへ救出しましょう!

あなたのテーマ内にある「functions.php」ファイルに下記のコードを加えてください。

/* Create shortcode to list subpages. */
function list_subpages() {
global $post;
$children = wp_list_pages('title_li=&child_of='.$post->ID.'&echo=0&depth=1');
if($children) {
return '<ul id="subpages"?>'.$children.'';
}
}
add_shortcode('subpages', 'list_subpages');

上記のファンクションが行うこと:
・サブベージの最新ページを取ってくる。
・最初のレベル(深さ)からのみ取ってくる。ほかのサブベージは取ってこない。
・もしサブベージがあれば、それらをリスト化して表示する。
・もしサブベージが無ければ、なにも表示しない。






Step2:辿ってきた元のページに戻す

ショートコードを使用するため、ページ内のリストを表示したいところに[subpages]とタイプしてください。これは素晴らしいと私は思いました!

しかし、もしクライアントが辿ってきた元のページに戻りたかったらどうでしょう?そのショートコードも作成しましょう!

あなたのテーマ内にある「functions.php」ファイルに下記のコードを加えてください。

/* Create shortcode for parent page. */
function list_parent_page() {
global $post;
$parent = $post->post_parent;
$parent_title = get_the_title($parent);
$parent_url = get_permalink($parent);
if($parent) {
return '<a href="' . $parent_url . '"?>« Back to ' . $parent_title . '';
}
}
add_shortcode('parentpage','list_parent_page');

上記のファンクションが行うこと:
・現在いるサブベージの元ページのタイトルとURLを取ってくる。
・もしそこに元ページがあれば、それらをリスト化して表示する。
・もしそこに元ページが無ければ、なにも表示しない。

ショートコードを使用するため、ページ内のリンクを表示したいところに[parentpage]とタイプしてください。



引用:Web Design Library  著者:jacorre  翻訳:山下



スポンサードリンク

コメント

ランダム記事5件

2016年5月の人気記事ランキング