サポート » 使い方全般 » ある特定の固定ページのカスタマイズ方法

  • 解決済 photographer hiro.

    (@mura0403)


    ページ内の上部に「WP Custom Search」にて作成した簡易検索機能を設け、その下部に「求人情報」を新着順で10件、出るようにしたいのです。

    こんな感じですかね?
    求人情報はカテゴリーで使用ですか?カスタム投稿タイプをご使用でしょうか?
    乗せたい部位に張り付けて編集してください

    <div>
    <h2>採用情報</h2>
      <ul>
      <?php $args = array(
      'numberposts' => 10,  //表示(取得)する記事の数
      'post_type' => array( 'post', 'カスタム投稿など' ) , //投稿タイプの指定
      'category' => 1,//投稿タイプがpostの時はカテゴリーIDを指定
      'order' => 'DESC',//昇順または降順
      'orderby' => 'date'	//更新日順modified、投稿日順はdate
      );
      $customPosts = get_posts($args);
      foreach($customPosts as $post):
      setup_postdata( $post );
      ?>
        <li>
          <a href="<?php the_permalink() ?>">
    	  <?php if(mb_strlen($post->post_title)>20) { $title= mb_substr($post->post_title,0,20) ; echo $title. ・・・ ;} else {echo $post->post_title;}//文字数制限 ?>
          </a>
        </li>
    <?php endforeach; ?>
      </ul>
    </div>

    参考
    http://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/WP_Query

    間違っていたらすみません。

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • health-firstさん

    その下部に「求人情報」を新着順で10件、出るようにしたいのです。

    こんな感じですかね?
    カテゴリーIDとか、カスタムポストの使用しているいないなどわからばもう少し具体的なソースをお伝えできるのですが

    新しい固定ページのテンプレートを作成し、以下のソースを編集してください
    カテゴリーIDは「投稿≫カテゴリー≫採用情報」でURLの中にIDが記載されています

    <div>
    <h2>採用情報</h2>
      <ul>
      <?php $args = array(
      'numberposts' => 10,  //表示(取得)する記事の数
      'post_type' => array( 'post', 'カスタム投稿など' ) , //投稿タイプの指定
      'category' => 1,//投稿タイプがpostの時はカテゴリーIDを指定
      'order' => 'DESC',//昇順または降順
      'orderby' => 'date'	//更新日順modified、投稿日順はdate
      );
      $customPosts = get_posts($args);
      foreach($customPosts as $post):
      setup_postdata( $post );
      ?>
        <li>
          <a href="<?php the_permalink() ?>">
    	  <?php if(mb_strlen($post->post_title)>20) { $title= mb_substr($post->post_title,0,20) ; echo $title. ・・・ ;} else {echo $post->post_title;}//文字数制限?>
          </a>
        </li>
    <?php endforeach; wp_reset_postdata(); //クエリのリセット ?>
      </ul>
    </div>

    簡単ですみません。

    モデレーター のむらけい (Kei Nomura)

    (@mypacecreator)

    $post->post_title だと諸々問題が出る可能性があるので
    get_the_title など、用意されている関数を使ってください。
    またechoの際は esc_url()なども併用してください。

    今回は、タイトルの文字数を抜粋したいというご要望はないので
    以下のような感じでよいでしょう。
    ついでに、採用情報が1件がなかった時も考慮してみました。

    <div>
    <h2>採用情報</h2>
      <?php $args = array(
      'posts_per_page' => 10,  //表示(取得)する記事の数
      'post_type' => array( 'post', 'カスタム投稿など' ) , //投稿タイプの指定
      'category' => 1,//投稿タイプがpostの時はカテゴリーIDを指定
      'order' => 'DESC',//昇順または降順
      'orderby' => 'date'	//更新日順modified、投稿日順はdate
      );
      $customPosts = get_posts($args); ?>
    
      <?php if($customPosts): //表示させる記事があれば ?>
      <ul>
      <?php foreach($customPosts as $post):
      setup_postdata( $post );
      ?>
        <li>
          <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
        </li>
       <?php endforeach; ?>
      </ul>
      <?php else: //表示させる記事がなければ ?>
      <p>現在、採用情報はありません。</p>
      <?php endif; wp_reset_postdata(); //クエリのリセット ?>
    </div>

    mura0403さん、mypacecreatorさん、ご教示ありがとございます。

    再度初歩的な質問で大変恐縮ですが、Wordpressの「テーマの編集」にある固定ページのテンプレート(page.php)の箇所に貼り付けるということでよろしいでしょうか?また、ペーストする際には固定ページのテンプレートのどの箇所でも自由にペーストしてもよろしいものなのでしょうか。

    不勉強で大変に申し訳ないですが、再度ご教示を願えますようお願い申し上げます。

    モデレーター のむらけい (Kei Nomura)

    (@mypacecreator)

    固定ページのカスタムテンプレートを作成するのがお勧めです。

    ページテンプレート – WordPress Codex 日本語版
    http://wpdocs.osdn.jp/%E3%83%9A%E3%83%BC%E3%82%B8%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88

    WordPressのテンプレートファイルの種類とテンプレート階層 | Mignon Style
    http://mignonstyle.com/wordpress-template-file/

    ありがとうございます、チャレンジしてみます!

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • トピック「ある特定の固定ページのカスタマイズ方法」には新たに返信することはできません。