2014-09-22 63 views
0

我一直試圖讓無限滾動工作,但似乎無法讓它工作。Jetpack Infinite Scroll無法正常工作

我有三個文件後循環content-post-ft.phpthe functions.php然後我的頭版,其中職位加載frontpage.php

的functions.php

add_theme_support('infinite-scroll', array(
    'container' => 'main-content', 
    'type' => 'scroll', 
    'footer' => 'foot', 
    'render' => 'infinite_scroll_render' 
    )); 

function infinite_scroll_render() { 
    get_template_part('content-post-ft', 'standard'); 
    } 

內容後ft.php

<div class="hub-cont"> 
<?php 

$thumb_id = get_post_thumbnail_id(); 
$thumb_url_array = wp_get_attachment_image_src($thumb_id, 'thumbnail-size', true); 
$thumb_url = $thumb_url_array[0]; 
?> 
<div id="newsitem"> 
<div id="newsimg" style="background-image: url('<?php echo $thumb_url ?>')"> 
<a href="<?php the_permalink(); ?>"></a> 
</div> 
<div id="newsname"> <a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>   </div> 
<div id="newstext"><?php $text = $post->post_content; $trimmed = wp_trim_words($text, 40, null); echo $trimmed; ?></div> 
<div class="clear"></div> 
</div> 

<?php 
// endwhile; 
// endif; 

wp_reset_postdata();?> 

</div> 

Frontpage.php

<div id="main-content"> 
<?php 

$myargs = array (
//'showposts' => 2, 
'post_type' => 'post', 
'category_name' => 'News' 
); 
$myquery = new WP_Query($myargs); 
if($myquery->have_posts()) : 
while($myquery->have_posts()) : $myquery->the_post(); 
    get_template_part('content-post-ft', get_post_format()); 
endwhile; 
endif; 
?> 
</div> 

我已經試過看着這麼多的教程和其他人有類似的問題,但似乎沒有奏效。

該頁面顯示,因爲循環的10個職位,但它只是增加了10,不「滾動」

得到這個固定的將真正幫助我的應力水平!

+0

您是否試過在[瀏覽器控制檯](https://developer.mozilla.org/en-US/docs/Tools/Web_Console)中查找?任何錯誤? – max 2014-09-23 09:34:49

+0

沒有我能看到的錯誤。該頁面不想使用無限滾動來處理任何原因。 我也有一個檢查頁面,以確保它正在運行,它是。只是有些東西阻止它工作,我不知道是什麼。 – Kyon147 2014-09-25 19:50:35

回答

0

解決了它。我不得不讓Jetpack允許在自定義字段和頁面上使用無限滾動。默認情況下,它只能在原始帖子頁面上運行。

功能文件:

function tweakjp_custom_is_support() { 
return true; 
$supported = current_theme_supports('infinite-scroll') && (is_home() ||  is_archive() || is_front_page()); 

return $supported; 
} 
    add_filter('infinite_scroll_archive_supported',  'tweakjp_custom_is_support'); 

function mm_infinite_scroll_render() { 
    while (have_posts()) : the_post(); 
     get_template_part('content'); 
    endwhile; 
} 

    function mm_infinite_scroll_query_args($args) { 

$new_args = array(
    'posts_per_page' => $args['posts_per_page'], 
    'paged' => $args['paged'], 
    'orderby'   => 'date', 
    'order'   => 'DESC', 
    'post_type'  => 'post', 
    'post_status'  => 'publish', 
); 

return $new_args; 
} 

function mm_infinite_scroll_posts_where($clause) { 
return ""; 
} 

add_filter('infinite_scroll_posts_where', 'mm_infinite_scroll_posts_where'); 

add_filter('infinite_scroll_query_args', 'mm_infinite_scroll_query_args', 9999); 
add_theme_support('infinite-scroll', array(
'container' => 'main-content', 
'render' => 'mm_infinite_scroll_render' 
)); 

然後content.php文件具有渲染代碼。我看起來像這樣幫助那些不確定的人。

<div class="news-list"> 
<ul class="promo-list-items"> 
    <?php 
    // Fetch all posts relating to a certain tag then display 4 of them 
    //Get the Thumbnail URL 
    $src = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), array(720,405), false, ''); 
    ?> 
    <div id="promolink"></div><li class="news-list-item" style="background-image: url(' <?php echo $src[0];?> '); background-repeat: no-repeat; background-size: cover;"> <a class="gdbnewslink" href="<?php echo get_permalink();?>" > 
      <?php the_title();?> 
     </a> 
     <?php wp_reset_postdata(); ?> 
    </li> 
    <div class="clear"></div> 
</ul> 
</div> 

希望這可以幫助與我相同問題的人。