2014-03-12 4 views
0

내 웹 사이트 뒷면에 뷰포트가 커지거나 작아지면 이미지를 표시하는 자바 스크립트 인 'Backstretch'을 사용하고 있습니다. 이제 WordPress의 get_post_thumbnail 기능과 결합하여 기능 이미지로 배경 이미지를 설정할 수 있습니다. 내가 지금 받고 있어요 때문에 가까이 받고 있어요 ..WP get_post_thumbnail with Backstretch JS

$.backstretch("<?php echo get_the_post_thumbnail($post_id, $size, $attr); ?>"); 

그래서 내가 그 태그를 제거해야합니다

나는 표준 WP 기능을 시도했지만 태그를 추가하기 때문에이 작동하지 않습니다 URL (이미지)하지만 항상 내가

<?php $url = wp_get_attachment_url(get_post_thumbnail_id($post_id, $size, $attr)); ?> 

<script>$.backstretch("<?php echo $url; ?>");</script> 
+0

때 루프를 사용 the_ID() 대신 $ post_id를 –

+0

@MichalS 미안 해요 당신이 말을하려고 모르겠어요 ... –

+0

내부 때 내부 HTTPS ://codex.wordpress.org/The_Loop (sam 참조) 거기에 ples) wp_get_attachment_url (get_post_thumbnail_id (the_ID(), $ size, $ attr)을 사용하십시오. –

답변

0

당신은이 튜토리얼의 질문에 대한 답변을 얻을 : http://sridharkatakam.com/set-featured-image-full-sized-background-posts-pages-wordpress/

backstretch-set.js 파일을 만들고 jQuery(document).ready(function($) { $("body").backstretch([BackStretchImg.src],{duration:3000,fade:750}); });

하고 대기열에 모두 JS-파일 (backstretch.js하고 backstretch 포함 -set.js) 당신의 functions.php에서

//* Enqueue Backstretch script 
add_action('wp_enqueue_scripts', 'enqueue_backstretch'); 
function enqueue_backstretch() { 

//* Load scripts only on single Posts, static Pages and other single pages and only if featured image is present 
if (is_singular() && has_post_thumbnail()) 

    wp_enqueue_script('backstretch', get_bloginfo('stylesheet_directory') . '/js/jquery.backstretch.min.js', array('jquery'), '1.0.0'); 
    wp_enqueue_script('backstretch-set', get_bloginfo('stylesheet_directory').'/js/backstretch-set.js' , array('jquery', 'backstretch'), '1.0.0'); 

    wp_localize_script('backstretch-set', 'BackStretchImg', array('src' => wp_get_attachment_url(get_post_thumbnail_id()))); 
+2

이 링크가 질문에 대답 할 수 있지만 여기에 답의 핵심 부분을 포함시키고 참조 용 링크를 제공하는 것이 좋습니다. 링크 된 페이지가 변경되면 링크 전용 답변이 유효하지 않게 될 수 있습니다. –

+0

좋아, 자습서에서 필요한 코드가 포함되어 있습니다. – kbrunner

0

글로벌 $ 포스트 오브젝트과 같이 사용해보십시오 모든 페이지에 다른 기능을 갖춘 이미지를 설정에도 동일 하나 :

<?php global $post; $url = wp_get_attachment_url(get_post_thumbnail_id($post->ID, 'full')); ?> 

<script>$.backstretch("<?php echo $url; ?>");</script> 
,
+0

답장을 보내 주셔서 감사하지만 아무 것도 바뀌지 않습니다 :( –

+0

어떤 파일에서 이것을 시도하고 있습니까? 이 코드를 작성할 때 백본 및 jquery 파일이로드 되었습니까? –

+0

내 footer.php에, JavaScript 코드의 나머지 부분이 header.php에 있습니다. –