Hey, I went through the docs for Load More with Ajax but am having some issues getting it working
Currently the code is rendering all projects and then upon clicking ‘Load More’ is loading the last 2 project subpages a second time
I have combed through the code a number of times to ensure it is the same but can’t work it out
Any suggestions?
Looks like you didn’t remove the part of the code that went into the project.php
snippet from the projects.php
template
Sorry which part should be removed?
site/templates/projects.php
<ul class="projects" data-page="<?= $pagination->nextPage() ?>">
<?php foreach ($page->children()->listed() as $project): ?>
<?php snippet('project', ['project' => $project]) ?>
<?php endforeach ?>
</ul>
<button class="load-more" accesskey="m">Load more</button>
site/snippets/project.php
<li class="">
<a href="<?= $project->url() ?>">
<?= $project->title()->html() ?>
</a>
</li>
No, that looks good. Could you please post all code snippets? Or maybe just provide a download link to the project via PM or a link to a GitHub repo, so that I can take a quick look where it is going wrong.
Thanks, I overlooked the error above.
You need to use the $projects
variable defined in the controller in the template:
So instead of
it needs to be
<?php foreach ($projects as $project): ?>
1 Like