WordPressでWebサイトを制作すると、トップページに複数の記事を表示させたい時があるんですが、任意の場所に固定ページや投稿ページを自由に呼び出してきて記述するソースが意外と無いので、ショートコードを作成してみました。
自分用に作成したので、ちょっとおかしいところがあるかもしれませんが。

ショートコード

<?php /*子テーマで利用する関数を書く*/

//固定ページ投稿ページをショートコードで呼び出す
function page_func($atts) {
    extract(shortcode_atts(array(
        'name' => 'defalt',
        'post_type' => 'post', 
        'class' => 'defalt',
        'show' => 'content',
        'category' => 'default',
    ), $atts));
    $args = array(
        'category_name' => $category,
        'post_type' => $post_type,
        'showposts'=>5,
    );
    //$blog_posts = query_posts('category_name=top&showposts=5');
    $the_query = new WP_Query( $args );
    while ( $the_query->have_posts() ) : $the_query->the_post();
    echo '<div class="front_post">';
    if($show == 'title'){ //titleだったら「投稿タイトル」を表示させる
        $content_title = get_the_title(); 
        echo '<div class="'. $class.'_title"><a href="'. get_permalink($post->ID) .'">' . $content_title . '</a></div>';
    }
    //それ以外(デフォルト)だったら「投稿本文」を表示させる
    $thumbnail = get_the_post_thumbnail();
    $content = get_the_content();
    $content = preg_replace("/\n/","<br />",$content); 
    echo $thumbnail;
    echo '<div class="'. $class.'">' . $content . '</div>';
    echo '</div>';
    endwhile;

    //wp_reset_postdata();
    return ;

   //return $html_echo;

}

add_shortcode( 'page_echo', 'page_func', true );

任意の場所に下記のショートコードを記述する
[page_echo name=スラグ名 post_type=post]

オプション
show=title タイトルを表示
class=任意のクラス名 divタグにクラス名をつける

参考サイト

wordpressの特定のページ(投稿・固定ページなど)を呼び出すショートコード – 新潟ホームページ制作【マザーシップ】フリーランス(SOHO)
http://mothershipweb.jp/wordpress/post607/