私のslider.phpに私はカスタム投稿タイプを要求するループがあります。このカスタム投稿タイプにはスライドURLのメタボックスがあります(link/title/etc)。私はループを見ることができますし、ソースコードではメタボックスからの正しいURLを示しているので、他のすべてはうまくいっています。しかし、それはスライダーをロードしません。しかし、ループの外側の画像への直接パスをドロップすると、スライダーが機能してロードされ、メタボックスから動的画像がロードされます(2番目のスライドとして)。
それは思われる、そして私はこれが間違っていることを知っている、しかしそれはまるでメタボックスからのイメージがスライドのためのスクリプトの後にロードされているかのように。そのため、画像が存在していることがわかりませんし、スライドに対してjsコードが実行されることもありません。
私の頭は正しいjs関数を持っています。
私のメタボックスと投稿の種類は目覚めて保存中です。
'slider.php'を含む私のホームテンプレート。 (以下)
<div id="slides_wrap">
<div id="slides_frame"> <!-- frame -->
<div id="slides">
<?php include 'slider.php'; ?>
<!-- pagination things -->
</div>
</div> <!-- frame -->
</div> <!-- slides wrap & shadow-->
持っている私のslider.php
<!-- start slider -->
<?php $args = array( 'post_type' => 'home_slider', 'posts_per_page' => 10 ); ?>
<?php $loop = new WP_Query( $args ); ?>
<div class="slides_container">
<?php // query the "slider" custom post type and import its posts into the slider ?>
<?php while ( $loop->have_posts() ) : $loop->the_post(); ?>
<?php $slide_img_src = smc_get_the_slide_img_source(); ?>
<a href="#" title="Dum Slider 1" target="_blank"><img src="<?php echo $slide_img_src; ?>" class="max-image" width="" height="" alt="Slide 1"></a>
<?php endwhile; ?>
<!-- if i add this below the slider will work and use this image below first (then load the loop???)
<a href="#" title="#" target="_blank"><img src="http://smc-collective.com/okay/images/sliders/dum_slide_2.png" class="max-image" width="" height="" alt="Slide 1"></a> -->
</div>
<!-- end slider -->
Slide.jsファイル(スライド用の関数)も(明らかに)ロード中で、フッターに入れられています。
私は私の脳を悩ませています、そしてphpは私の長所ではありません。私はそれを理解することができないか、何を検索すべきかさえも気にしません。進んでくれてありがとう。
編集 - あなたがこれ以上コードを見る必要があるなら、私に知らせてください。他に何が問題を引き起こしているのか私は知りません。
最も簡単な説明は、あなたのコードでレンダリングされたHTMLはあなたが実際に探しているものと一致しないということです。スライダーを担当しているJSを見なくても、どこに問題があるのかを判断することはできませんが、モックアップされたバージョン(実際に動作するバージョン)と実際に表示されるもの(ページレンダリング後のHTMLソース)を比較してください。誤字やその他の潜在的な間違い。
別の可能性としては、あなたの画像へのURLは正しいが、そこには奇妙な性質があるということです。 HTML属性内でこれを行っているので、 esc_attr()
を使用してサニタイズを通してecho
ステートメントを実行することをお勧めします。
<a href="#" title="Dum Slider 1" target="_blank"><img src="<?php echo esc_attr($slide_img_src); ?>" class="max-image" width="" height="" alt="Slide 1"></a>
可能であれば、スライダーコードを共有してもいいですか。
この行は問題のように見えます
<?php $slide_img_src = smc_get_the_slide_img_source(); ?>
多分あなたは持っているべきです
<?php $slide_img_src = $smc_get_the_slide_img_source; ?>
$smc_get_the_slide_img_source
はWordPressの機能ではないので、何をしているのでしょうか。
メタボックスを取得する必要があります。
$smc_get_the_slide_img_source = get_post_meta($post->ID, 'image_field', true);
たぶんあなたはスライダーとあなたのマークアップのコネクタがjqueryの後とslide.jsの後に走らなければならないことを確実にするべきです
優先順位は次のとおりです。1. jQuery 2. Slide.js 3.マークアップとスクリプトの接続。
がんばろう!あなたが何か助けが必要な場合は、私たちを投稿してください!