0

Wordpress の管理パネルから Pod として入力されている div のグループのループを作成しようとしています。

ポッドのセットアップがあります。不適切にセットアップすることもできますが、正しくセットアップされていると思います。Pod が 1 つあり、情報は次のとおりです。

ポッド情報:

  • レーベル: アドバイザーズ
  • お名前: アドバイザー
  • タイプ: カスタム投稿タイプ
  • ストレージ タイプ: メタ
  • フィールド数: 2

フィールド 1 情報:

  • レーベル: 顧問名
  • 名前: advisor_name
  • フィールド タイプ: プレーン テキスト

フィールド 2 情報:

  • レーベル: アドバイザー役職
  • 名前: advisor_title
  • フィールド タイプ: プレーン テキスト

複製しようとしている HTML は次のとおりです。

<div class="small-container text-center advisor-list">
      <h1 class="text-center">Header Title</h1>
      <div class="row  gutter-0 padding-30 text-center vpadding-30 ">
             <div class="box column large-3 vpadding-10 medium-3 text-center">
                    <img  src="/wp-content/uploads/2013/08/icon-star.png">
                    <h2>Name</h2>
                    <h4>Title</h4>   
            </div>
            <div class="box column large-3 vpadding-10 medium-3 text-center">
                    <img  src="/wp-content/uploads/2013/08/icon-star.png">
                    <h2>Name</h2>
                    <h4>Title</h4>   
            </div>
            <div class="box column large-3 vpadding-10 medium-3 text-center">
                    <img  src="/wp-content/uploads/2013/08/icon-star.png">
                    <h2>Name</h2>
                    <h4>Title</h4>   
            </div>
            <div class="box column large-3 vpadding-10 medium-3 text-center">
                    <img  src="/wp-content/uploads/2013/08/icon-star.png">
                    <h2>Name</h2>
                    <h4>Title</h4>   
            </div>
    <button id="showPartners" class="bttn bttn-4 bttn-4a vpadding-30">View Our List of Partners</button>
</div>

これは私がPHPで得た限りです:

<div class="small-container text-center advisor-list">
  <h1 class="text-center">Header Title</h1>
  <div class="row  gutter-0 padding-30 text-center vpadding-30 ">
    <?php 
      function get_the_pod($pod_name, $pod_fields, $order = 'name'){
      $item_no=0;
      $pod = new Pod($pod_name);
      $pod->findRecords($order);
      while ($pod->fetchRecord()){
        foreach ($pod_fields as &$field){
          $results[$item_no][str_replace(".guid","",$field)] = $pod->get_field($field);
            if($field == end($pod_fields)){$item_no++;}
        }
      }
      return $results;        
      }

     ?>
         <?php $fields = array('name'); ?>
         <?php $advisors = get_the_pod('advisors', 'name DESC'); ?>
         <?php  foreach($advisors as $advisor){ ?>
           <div class="box column large-3 vpadding-10 medium-3 text-center">
             <img  src="/wp-content/uploads/2013/08/icon-star.png">
             <h2 ><?php echo $item['advisor_name']; ?></h2>
             <h4><?php echo $item['advisor_title']; ?></h4>           
           </div>
     <?php } ?>  

    <button id="showPartners" class="bttn bttn-4 bttn-4a vpadding-30">View Our List of Partners</button>
  </div>
</div>

誰かが何か意見を持っていれば、それは大歓迎です。

ありがとう

4

2 に答える 2

4

Pods 1.X メソッドを使用しています。Pods 2.X メソッドを使用した、はるかに単純なコードを次に示します。pods()詳細については、およびのドキュメント ページを参照してください。pods::find()これには、 の設定方法$paramに関するpods()情報が含まれています。

         <?php 
                $param = array( 'orderby' => 't.name' );
                $advisors = pods('advisors', $param );

                foreach($advisors as $advisor) { 
                   $advisor_name = $advisor->field( 'advisor_name' );
                   $advisor_title = $advisor->field( 'advisor_title' );
         ?>
             <div class="box column large-3 vpadding-10 medium-3 text-center">
                  <img src="/wp-content/uploads/2013/08/icon-star.png" />
                  <h2><?php echo $advisor_name; ?></h2>
                  <h4><?php echo $advisor_title; ?></h4>           
             </div>
        <?php } //end foreach
        ?> 
于 2013-10-15T19:36:43.897 に答える
0

ポッドは、Wordpress のコア ループ タイプと構造を使用してループ内に投稿します。独自のデータ値で使用できます。

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
<div class="post" id="post-<?php the_ID(); ?>">
  <div class="entry">
    <?php
      $team = new Pod('sliders');
      $team->findRecords('slider_number ASC');       
      $total_members = $team->getTotalRows();
    ?>
    <?php if( $total_members>0 ) : ?>
      <?php while ( $team->fetchRecord() ) : ?>
        
        <?php
          // set our variables
          echo $member_id        = $team->get_field('id');
          echo $member_name      = $team->get_field('post_title');
          echo $number      = $team->get_field('slider_number');
          echo $img      = $team->get_field('slide_img._img');
        ?>
        
      <?php endwhile ?>
    <?php endif ?>
      
  </div>
</div>
<?php endwhile; endif; ?>
于 2021-09-28T06:46:13.293 に答える