2017-03-25 3 views
1

質問:高度なカスタムフィールドを使用してギャラリーを作成しました。私がギャラリーに追加したすべてのイメージ私はカスタムタクソミーミー(カテゴリ)を与えました。 「ファッション」、「肖像画」などギャラリー上のすべての用語をリストアップしました。たとえば、用語をクリックすることができます。ファッション、および下の画像コンテナに「ファッション」という用語を含むすべての画像がロードされます。 https://demo.kaliumtheme.com/photography/と同様です。私は、画像をクリックして読み込むことに悩まされています。手伝ってくれますか?メディアカテゴリとAjaxで高度なカスタムフィールドギャラリーを使用する

はここでギャラリーのためのコードです:

 <?php $images = get_field('gallery'); 

     if($images): ?> 
      <ul><div class="image__sizer"></div> 
       <?php foreach($images as $image): $link = get_field('link', $image['ID']); ?> 
       <?php $terms = get_the_terms($image['ID'], 'category_media'); ?> 
       <?php if (!empty($terms)) : $term = array_shift($terms); ?> 
        <li class="<?php echo $term->term_id; ?>"> 
         <div data-200-bottom="top: 0px;opacity:0%;" data--200-top="top:-250px;opacity:100%;" class="image__wrap"> 
         <a href="<?php echo $image['url']; ?>"> 
          <img src="<?php echo $image['sizes']['large']; ?>" alt="<?php echo $image['alt']; ?>" /> 
         </a> 
         <div class="image__meta"> 
          <span><?php echo $term->name; ?> - <?php echo $image['title']; ?></span> 
         </div> 
         </div> 
        </li> 
       <?php endif; ?> 
       <?php endforeach; ?> 
      </ul> 
     <?php endif; ?> 

カスタム分類が 'category_media' と呼ばれます。このjQueryの機能を

function prefix_load_term_posts() { 
    $term_id = $_POST[ 'term' ]; 
     $args = array (
     'term' => $term_id, 
     'posts_per_page' => -1, 
     'order' => 'DESC', 
      'tax_query' => array(
       array(
        'taxonomy' => 'category_media', 
        'field' => 'id', 
        'terms' => $term_id, 
        'operator' => 'IN' 
       ) 
      ) 
     ); 

    global $post; 
    $myposts = get_posts($args); 
    ob_start(); ?> 

    <?php foreach ($myposts as $post): 
    echo $images = get_field('gallery', $post->ID); ?> 
    <?php endforeach; ?> 

    <?php wp_reset_postdata(); 
    $response = ob_get_contents(); 
    ob_end_clean(); 
    echo $response; 
    die(1); 
    } 

:私は、以下のこの1のような機能を使用するために探していた

<script> 
function term_ajax_get(termID) { 
jQuery("a.ajax").removeClass("current"); 
jQuery("a.ajax").addClass("current"); //adds class current to the category menu item being displayed so you can style it with css 
jQuery('.image-container ul li').fadeOut(); 
jQuery("#loading-animation").show(); 
var ajaxurl = '<?php echo admin_url('admin-ajax.php'); //must echo it ?>'; 
jQuery.ajax({ 
    type: 'POST', 
    url: ajaxurl, 
    data: {"action": "load-filter2", term: termID }, 
    success: function(response) { 
     jQuery(".image-container ul").html(response); 
     return false; 
    } 
}); 
} 
</script> 

はしかし、何のイメージがコンテナにロードされていません。誰でも助けて私に何が欠けているか教えてもらえますか?大変感謝しています。

答えて

0

ご質問は理解されていない あなたは、私が質問を編集した

+0

特定の問題を抱えているだけのところ、すべてのコードがあなたを与えることはできません。詳細を与えることを試してみて、コード を短縮します。 – AShone

関連する問題