サポート » 使い方全般 » お知らせなどをpageに作成して、それを全ての記事の下に表示させる方法

  • 解決済 eijiy

    (@eijiy)


    WordPress 3.0 日本語版をindex.php,style.css,functions.phpの3ファイルの自作テーマで使っております。

    それで、タブ形式のお知らせなどをpageに作成して、それを全ての記事の下に表示させるにはどうしたらいいでしょうか。

    現在、XAMMPテスト環境にてjQuery UI Tabs with Next/Previousをテスト中です。

    どうかご協力頂けないでしょうか。

    宜しくお願い致します。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • モデレーター jim912

    (@jim912)

    eijiyさん、こんにちは。

    ご質問いただいているのは、大別して

    1. 固定ページに、タブ形式のお知らせを作成する方法
    2. すべての記事の下に1で作成した固定ページの内容よ表示する方法

    という理解でよいでしょうか。

    1.については、WordPressからは離れる内容でもありますし、固定ページの投稿欄内に、タブ形式が動作するフォーマットに従って記入してくださいとしか申し上げられません。
    2.については、get_post関数の引数にお知らせの固定ページIDを指定すれば、お知らせを取得する事ができます。これを表示させたいテンプレート上に記述し、echoしてあげれば実現できるはずです。

    トピック投稿者 eijiy

    (@eijiy)

    jim912さん、返信ありがとうございます。

    <?php the_content(); ?>の下に以下のコードを入れてみました。

    <?php
       $pid = 2117;
       $post_id_2117 = get_post($pid);
       $content = post_id_2117->post_content;
       $content = apply_filters('the_content',$content);
       $content = str_replace(']]>',']]>',$content);
       echo $content;
    ?>

    しかし、Parse error: syntax error, unexpected T_OBJECT_OPERATOR in C:\xampp\htdocs2\wp\wp-content\themes\eijiy\index.php on line 111 この様にエラーが表示されます。

    どうしらいいでしょうか。

    以下が<div id=”content”></div>の全てです。

    <div id="content">
    
    	<?php if (have_posts()) : ?>
    
    	<?php while (have_posts()) : the_post(); ?>
    
            <h1><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h1>
            <p class="meta">posted in <?php the_category(', '); ?> by <?php the_author(); ?> on <?php the_time('Y.n.j G:i'); ?> <?php edit_post_link('Edit'); ?></p>
    
            <div id="main">
    
                 <?php the_content(); ?>
                      <p class="tagP"><?php the_tags(); ?></p>
                      <p class="comP"><?php comments_popup_link(); ?></p>
    
                      <?php
                      $pid = 2117;
    		 $post_id_2117 = get_post($pid);
    		 $content = post_id_2117->post_content;
    		 $content = apply_filters('the_content',$content);
    		 $content = str_replace(']]>',']]>',$content);
    		 echo $content;
    		 ?>
    
                      <?php comments_template(); ?>
    
               </div>	<!-- end main -->
    
            <?php endwhile;		// end loop ?>
    
                    <!-- Page Navi -->
                    <div class="tablenav"><?php global $wp_rewrite;
                    $paginate_base = get_pagenum_link(1);
                    if (strpos($paginate_base, '?') || ! $wp_rewrite->using_permalinks()) {
                        $paginate_format = '';
                        $paginate_base = add_query_arg('paged', '%#%');
                    } else {
                        $paginate_format = (substr($paginate_base, -1 ,1) == '/' ? '' : '/') .
                        user_trailingslashit('page/%#%/', 'paged');;
                        $paginate_base .= '%_%';
                    }
                    echo paginate_links( array(
                        'base' => $paginate_base,
                        'format' => $paginate_format,
                        'total' => $wp_query->max_num_pages,
                        'mid_size' => 5,
                        'current' => ($paged ? $paged : 1),
                    )); ?></div>
    
                <?php endif; ?>
    
    </div>	<!-- end content -->

    宜しくお願い致します。

    モデレーター jim912

    (@jim912)

    eijiyさん、こんにちは。

    111行目に文法違反があって解釈できないというメッセージですから、該当行の記述を良く見直してください。

    トピック投稿者 eijiy

    (@eijiy)

    jim912さん、お陰で記事の最後にお知らせを表示させることができました。

    以下の様に、get_pageで可能になりました。

    <?php if (!is_page('Welcome!')) : ?>
            <?php
                  $page_id = 2117;
    	      $myInfo = get_page($page_id);
    	      echo $myInfo->post_content;
    	?>
    <?php endif; ?>

    ありがとうございました。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「お知らせなどをpageに作成して、それを全ての記事の下に表示させる方法」には新たに返信することはできません。