フォーラムへの返信

6件の返信を表示中 - 1 - 6件目 (全6件中)
  • フォーラム: テーマ
    返信が含まれるトピック: 固定ページを埋め込む時にショートコードが効かない
    keiichiy

    (@keiichiy)

    gblsmさん、
    なるほど、普通にWP_Queryかなにかで投稿を読み出せばよかったのですね。

    <?php $args = array(
    ‘posts_per_page’ => 1,
    ‘post_type’ => ‘page’,
    ‘name’ => ‘hoge’,
    ); ?>
    <?php $loop = new WP_Query( $args );
    if($loop -> have_posts()): while($loop -> have_posts()): $loop -> the_post(); ?>
    <?php the_content(); ?>
    <?php endwhile; endif; ?><?php wp_reset_postdata(); ?>

    以上のようなコードで思った通りの表示ができました。
    ありがとうございました!

    フォーラム: 使い方全般
    返信が含まれるトピック: php構文の中にカスタムフィールド値を入れる
    keiichiy

    (@keiichiy)

    ありがとうございます!

    <?php
    $post_id = $post->ID;
    $key = 'size';
    $single = true;
    $thumb_size =  get_post_meta($post_id, $key, $single);
    the_post_thumbnail($thumb_size);
    ?>

    このようにしたら部解決しました!
    ありがとうございます!

    フォーラム: 使い方全般
    返信が含まれるトピック: php構文の中にカスタムフィールド値を入れる
    keiichiy

    (@keiichiy)

    <?php
    $post_id;
    $key = 'size';
    $single = true;
    $thumb_size =  get_post_meta($post_id, $key, $single);
    the_post_thumbnail($thumb_size);
    ?>

    と書いてみたのですが、
    どうも値が取得できていないみたいです。

    全体的には、
    「メニュー」というカスタムポストタイプの投稿で、
    カスタムタクソノミー「メニューカテゴリー」の中の
    「食べ物」のサムネイルを表示するという前提で、
    カスタムフィールドにてboxサイズを指定し、
    そのboxサイズに応じたサムネイルを表示したい
    という感じです。

    <div class="collect cf">
    <?php
    $args = array(
         'posts_per_page' => -1,
    	 'post_type' => 'menu',
    	 'tax_query' => array( /* カスタム分類 */
                array(
                    'taxonomy' => 'メニューカテゴリー',
                    'field' => 'slug',
                    'terms' => '食べ物',
                )
            )
    );
    ?>
    <?php $the_query = new WP_Query( $args );
    if ( $the_query->have_posts() ) : while ( $the_query->have_posts() ) : $the_query->the_post(); ?>
    <div class="box <?php echo (post_custom('size')); ?>">
    
    <div class="left">
    <a href="<?php the_permalink(); ?>"><div class="thum">
    
    <?php
    $post_id;
    $key = 'size';
    $single = true;
    $thumb_size =  get_post_meta($post_id, $key, $single);
    the_post_thumbnail($thumb_size);
    ?>
    
    </div></a>
    </div>
    
    <div class="right">
    <h4 class="title"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h4>
    <?php if(post_custom('price')): ?><div class="price"><?php echo nl2br(post_custom('price')); ?></div><?php endif; ?>
    <?php if(post_custom('cap')): ?><div class="cap"><?php echo nl2br(post_custom('cap')); ?></div><?php endif; ?>
    </div>
    
    </div>
    <?php endwhile; endif; ?><?php wp_reset_postdata(); ?>
    </div>
    フォーラム: プラグイン
    返信が含まれるトピック: Posts 2 Postsなどによる紐付けページの表示

    アドバイスありがとうございます。
    現在は、カスタムフィールドテンプレートを使っているのですが、
    Advanced Custom Fields のほうが汎用性が高そうですね。
    一度、試してみます。

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

    頂いたアドバイスを基に、
    プラグイン等を使い、思うような形に近く仕上げることができました。
    ありがとうございます。

    使用したプラグインは主に、

    ・Custom Post Type UI
    https://wordpress.org/plugins/custom-post-type-ui/
    カスタム投稿タイプ作成にあたり、少し煩わしいfanctions.phpへの記述をでかわりに行ってくれるプラグイン。

    ・Posts 2 Posts
    https://github.com/scribu/wp-posts-to-posts/wiki/Basic-usage
    カスタム投稿タイプ同士を紐付けしてくれるプラグイン。

    ・Custom Field Template
    https://wordpress.org/plugins/custom-field-template/
    カスタムフィールドのテンプレートを作ってくれるプラグイン。

    まず、「セミナー」と「講師」の
    ようなカスタム投稿タイプを作成しPost 2 Postで紐付け。
    Custom Field Templateで氏名や略歴などの「講師用」と、
    開催日時等の「セミナー用」のふたつのテンプレを制作。
    それぞれ、セミナーのカスタム投稿タイプにはセミナー用のカスタムフィールドしか表示しない様にし、それぞれを別々に入力。
    セミナーの編集画面で講師を選べばその講師のデータが所定の場所に入力される様になりました。
    参考にしたのは、
    http://560days.com/lab/2013/07/001348.php
    このあたりを参考にしました。

    どうもありがとうございます!

    フォーラム: テーマ
    返信が含まれるトピック: カスタムメニューの投稿数にクラス名を付ける

    自己解決しました。

    <?php
    /* カスタムメニューに記事数表示 */
    add_filter('wp_nav_menu_objects','my_nav_count');
    function my_nav_count($items){
      foreach ($items as $item){
        if(get_term($item->object_id,$item->object)->count > 0){
          $item->title .= ' <div class"hoge">'. get_term($item->object_id,$item->object)->count .'</div>';
        }else{
          $item->title .= get_term($item->object_id,$item->object)->count;
        }
        $args[] = $item;
      }
      return $args;
    }
    ?>

    このようにすれば、無事クラスを入れれました。
    間違っていれば、ご指摘御願いいたします。

6件の返信を表示中 - 1 - 6件目 (全6件中)