添加“more”;按钮

Adding a "more" Button

本文关键字:按钮 more 添加      更新时间:2023-09-26

我正在尝试添加一个"load more"按钮并限制下面的结果,这样就不会有1000个东西同时在投资组合页面中加载,这里:http://typesetdesign.com/portfolio/

我的PHP知识不是很好,所以我不确定我应该做什么。我知道我可以在这里限制项目:

<?php query_posts( 'post_type=project&posts_per_page=200' );

但是如果我限制了这个结果,我该如何加载更多呢?

这是整个页面的页面编码:

<div id="projects" class="clearfix">        
<?php $page_skills = get_post_meta($post->ID, "_ttrust_page_skills", true); ?>
<?php if ($page_skills) : // if there are a limited number of skills set ?>
    <?php $skill_slugs = ""; $skills = explode(",", $page_skills); ?>
    <?php if (sizeof($skills) > 1) : // if there is more than one skill, show the filter nav?>  
        <ul id="filterNav" class="clearfix">
            <li class="allBtn"><a href="#" data-filter="*" class="selected"><?php _e('All', 'themetrust'); ?></a></li>
            <?php
            $j=1;                     
            foreach ($skills as $skill) {               
                $skill = get_term_by( 'slug', trim(htmlentities($skill)), 'skill');
                if($skill) {
                    $skill_slug = $skill->slug;             
                    $skill_slugs .= $skill_slug . ",";
                    $a = '<li><a href="#" data-filter=".'.$skill_slug.'">';
                    $a .= $skill->name;                 
                    $a .= '</a></li>';
                    echo $a;
                    echo "'n";
                    $j++;
                }         
            }?>
        </ul>
        <?php $skill_slugs = substr($skill_slugs, 0, strlen($skill_slugs)-1); ?>
    <?php else: ?>
        <?php $skill = $skills[0]; ?>
        <?php $s = get_term_by( 'name', trim(htmlentities($skill)), 'skill'); ?>
        <?php if($s) { $skill_slugs = $s->slug; } ?>
    <?php endif;        
    $temp_post = $post;
    $args = array(
        'ignore_sticky_posts' => 1,
        'posts_per_page' => 200,
        'post_type' => 'project',
        'skill' => $skill_slugs
    );
    $projects = new WP_Query( $args );      
else : // if not, use all the skills ?>
    <ul id="filterNav" class="clearfix">
        <li class="allBtn"><a href="#" data-filter="*" class="selected"><?php _e('All', 'themetrust'); ?></a></li>
        <?php $j=1;
        $skills = get_terms('skill');
        foreach ($skills as $skill) {
            $a = '<li><a href="#" data-filter=".'.$skill->slug.'">';
            $a .= $skill->name;                 
            $a .= '</a></li>';
            echo $a;
            echo "'n";
            $j++;
        }?>
    </ul>
    <?php
    $temp_post = $post;
    $args = array(
        'ignore_sticky_posts' => 1,
        'posts_per_page' => 200,
        'post_type' => 'project'            
    );
    $projects = new WP_Query( $args );
endif; ?>
<div class="thumbs masonry">            
<?php  while ($projects->have_posts()) : $projects->the_post(); ?>
    <?php
    global $p;              
    $p = "";
    $skills = get_the_terms( $post->ID, 'skill');
    if ($skills) {
       foreach ($skills as $skill) {                
          $p .= $skill->slug . " ";                     
       }
    }
    ?>      
    <?php get_template_part( 'part-project-thumb'); ?>      
<?php endwhile; ?>
<?php $post = $temp_post; ?>
</div>

非常感谢,任何输入都是一个帮助!

编辑
使用分页引导样式的表http://datatables.net/examples/basic_init/multiple_tables.html

带分页的海量数据库请看这里:https://stackoverflow.com/a/3707457/2293454

我没有看到你的网站,现在我看到了,你可能需要的是这样的东西:
https://stackoverflow.com/a/21408418/2293454
正如你所看到的,这个例子有一个限制器iMyLoadLimit = 5,所以,当用户向下滚动页面时,它会根据获取的数据总数加载更多,如果你加载100篇或1000篇文章,它们将在java中除以限制器,结果将是每次用户向下滚动它将显示下一个5或任何你想要显示的数字…

我希望这有助于……

您需要分页(服务器端)并且可能需要无限滚动(客户端)

你可能想看看:

简单的PHP分页脚本

http://jscroll.com/

如何为无限滚动分页查询结果?