2016-11-10 5 views
0

私は投稿選択ボックスを持っており、選択ボックスから投稿を選択している間に投稿の特集画像を表示したいと考えています。このようなもの 選択ボックスから投稿を選択し、そのポストの特集画像を以下に示します。選択ボックスから投稿を選択してその特色画像を表示

http://prntscr.com/d5e3ad カスタムのjsファイルのコードは、あなたができる選択ボックスオプションでのdivラップ

<form method="post" action=""> 
      <div class="form-group-field"> 
       <div class="left_label"><label> 
        Select Post 
       </label></div> 
       <div class="rigth_input"> 
        <select id="vzxms-post-slct" name="vzxms-post-slct" class="vzxms-post-slct"> 
         <option selected="selected"> Select Post </option> 
         <?php 
         $args = array('post_type'=>'post'); 
         $myposts = get_posts($args); 
         foreach ($myposts as $post) : setup_postdata($post); ?> 
          <option value="<?php the_ID();?>"><?php the_title(); ?></option> 
         <?php endforeach; 
         wp_reset_postdata();?> 
        </select> 
    <!-- and here i want to show image --> 
        <?php 
        $thumb = wp_get_attachment_image_src(get_post_thumbnail_id($post_id), 'post'); 
        ?> 
        <img src="<?php echo $thumb[0]; ?>" id="post-thumb"/> 
       </div> 
      </div> 
     </form> 
+0

バックエンドでは? – crs1138

+0

はい、私もスクリーンショットリンクを添付しています。バックエンドではどうすればいいですか?私は管理者側のプラグインで作業しています。 – HeroWeb512

答えて

0

のフォームと

var $ = jQuery; 
$(document).ready(function(){ 
$("post-thumb").css("display", "none"); 
$("#vzxms-post-slct").on('change', function(e){ 
    e.preventDefault(); 
    $slct_val = $("#vzxms-post-slct").val(); 
    console.log($slct_val); 
    $.ajax({ 
     url: ajaxurl, 
     data: $slct_val, 
     success: function(data){ 
      $("#post-thumb").css("display", "block"); 
     } 
    }); 

}); 
}); 

とプラグインインデックスファイルをある以下のようなすべての記事のタイトルをループ:

<select > 
    <?php 
    $args = array('post_type'=>'post'); 
    $myposts = get_posts($args); 
    foreach ($myposts as $post) : setup_postdata($post); ?> 
     <option value="<?php the_ID();?>"><?php the_title(); ?></option> 
    <?php endforeach; 
    wp_reset_postdata();?> 
    </select> 

selecの変更時にajaxコールを発信する投稿IDから投稿サムネイルを取得するオプション

$thumb = wp_get_attachment_image_src(get_post_thumbnail_id($post_id), 'post'); 
//thumbnail link 
echo $thumb[0]; 
+0

ありがとうございました4助けてくださいが、私は選択ボックスとそのポストのイメージを表示する下で働いている1ページしかありません。 – HeroWeb512

+0

同じページでajax関数を作成するか、functions.phpファイルを追加し、jquery @ HeroWeb512経由でimgタグに返すサムネイルリンクを追加してください –

+0

コードで質問を更新しました。選択した投稿IDをどのように渡すことができますかajaxを介してget_post_thumbnail_id($ post_id)を返します。 – HeroWeb512

関連する問題