MENU
HOME
TOP

WordPressでサイトマップページの表示方法2パターン 「プラグインなし!」

全記事一覧表示するだけでプラグイン増やすのも嫌ですよねえ。

うーん…….。何か良い方法がないものか、よく考えました。

が、しかし考えた時間も無駄になった結論は、単純に全記事出せばええだけやん!!

そうです。なんも考えずに、固定ページを使ってほにゃほにゃしたら良いだけなんです。

今回の考えですが、、以下2パターンのどちらが良い方法かは、そろぞれ個人で決めて頂くとしましょう。

サイトマップ用にphpファイルを作成

そいじゃとりあえず、サイトマップ用に独自の固定ページを作る方法から紹介します。

sitemap.phpの作成

以下のコードをsitemap.phpというファイル名で保存します。テーマの直下に保存

<?php
/*
Template Name: サイトマップ用ののテンプレートです。*
Template Post Type: page
*/
?>
<div id="entry-content">
<div class="site-map">
<?php
$args=array(
'orderby' => 'name',
'order' => 'ASC'
);
$categories=get_categories($args);
foreach($categories as $category) {
echo '<h3><a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '"' . '>' . $category->name.'</a></h3>';
?>
<ul>
<?php
global $post;
$myposts = get_posts('numberposts=100&category=' . $category->term_id);
foreach($myposts as $post) : setup_postdata($post);
?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endforeach; ?>
</ul>
<?php }; ?>
<h3>固定ページ</h3>
<ul>
<?php wp_list_pages('title_li='); ?>
</ul>
</div>

あとは、新規固定ページからテンプレートを選ぶだけ!!

実際のサイトマップは、僕のサイトマップと同じです。

ショートコードを作って表示する

プラグインにして配布した方が早いかって思ったけどもさ、、話が違うじゃねーか!!

ま、そうなるのがオチなので、ちょっとネタを探してきましたよ。

僕がコレいいなぁ~っと思ったのが、寝ログさんが紹介してるこの記事です。

ネタ元を見た方が早いかもだけど、紹介しておきます。

functions.phpに追記

コードの変更はいらないので、そのまま使わせてもらいますね。

add_shortcode('sitemap', 'sitemap_shortcode');
if ( !function_exists( 'sitemap_shortcode' ) ):
function sitemap_shortcode( $atts, $content = null ) {
extract( shortcode_atts( array(
'page' => 1,
'single' => 1,
'category' => 1,
'archive' => 0,
), $atts ) );
ob_start();?>
<div class="sitemap">
<?php if ($page): ?>
<h2>固定ページ</h2>
<ul>
<?php wp_list_pages('title_li='); ?>
</ul>
<?php endif; ?>
<?php if ($single): ?>
<h2>記事一覧</h2>
<ul>
<?php wp_get_archives( 'type=alpha' ); ?>
</ul>
<?php endif; ?>
<?php if ($category): ?>
<h2>カテゴリー</h2>
<ul>
<?php wp_list_categories('title_li='); ?>
</ul>
<?php endif; ?>
<?php if ($archive): ?>
<h2>月別アーカイブ</h2>
<ul>
<?php wp_get_archives('type=monthly'); ?>
</ul>
<?php endif; ?>
</div>
<?php
return ob_get_clean();
}
endif;

引用元 WordPressで簡単なサイトマップページを作れるショートコードの実装方法【プラグイン不要】

固定ページにショートコードを貼り付ける

で、サイトマップを表示したい固定ページの本文に、以下のショートコードを貼り付けます。

 [sitemap] 

デフォルトでは、摘出のアーカイブスがオフです。1が表示で0が非表示

例えば、わしゃカテゴリ一の全記事だけ表示したいんだヨ!!

てな場合には、↓こういう風に使うという事ですね。

 [sitemap page=0 single=0 category=1 archive=0] 

まとめ

WhiteTigerのトップページは、カテゴリごとの記事一覧が表示されてるのが分かるかと思います。

実はコレ、元々サイトマップ用に作った固定ページを加工して作成したページなんす。

固定ページ「 オリジナル 」の作り方が分かれば、全く違ったオサレなページを何個でも作れるので、個人的にはこっちを一回作ってみてほしいです。

そんだけ!!(ごめん)

いつものウザい個人的な考えでした。

スポンサーリンク

この記事をかいた人

閲覧どうもありがとうございます。当サイトキャンディースタイルとWordPressテーマのWhite Tigerというサイトを運営しています。まだまだ初心者なので、お見苦しいとこがありますがどうぞよろしく。

コメントを閉じる

コメントを残す

メールアドレスが公開される事はございませんが*の付いている欄は必須項目となります。
なおコメントの反映にお時間がかかる場合があります事をご了承ください。


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください