akroll
April 28, 2016, 5:30pm
1
Hello,
i have a gallery like:
`
<?php foreach($page->images()->sortBy('name', 'desc') as $pic): ?>
<li class="colA">
<a data-strip-options="maxWidth: 800" target="_blank" data-strip-caption="<?php echo html($pic->caption()); ?><?php if(!$pic->Link()):?> ā <a href='http://<?php echo html($pic->Link()) ?>'><?php echo html($pic->Link()) ?></a><?php endif;?>" data-strip-group="shared-options" class="strip" href="<?php echo $pic->url(); ?>">
<?php echo thumb($pic, array('width' => 300,'height' => 410));?>
</a>
</li>
<?php endforeach ?>`
and a file structure like:
1-file.jpg
2-file.jpg
3-file.jpg
ā¦
10-file.jpg
11-file.jpg
But in kirby it is sortet wrongly like:
1-file.jpg
10-file.jpg
11-file.jpg
2-file.jpg
3-file.jpg
What can i do?
You can use a sort flag as the third parameter
<?php foreach($page->images()->sortBy('name', 'desc', SORT_NUMERIC) as $pic): ?>
...
https://getkirby.com/docs/cheatsheet/files/sortBy
http://php.net/manual/de/function.sort.php
1 Like
Helge
December 11, 2016, 1:38pm
3
Hi, i have the same issue. Iād like to display my image files like:
1
2
3
4
5
ā¦
11
<?php foreach($page->images()->sortBy('name', 'desc', SORT_NATURAL) as $image): ?>
gives me the files in the wrong order
11
ā¦
5
4
3
2
1
<?php foreach($page->images()->sortBy('name', 'desc', SORT_NUMERIC) as $image): ?>
does not solve the problem as well, the files are displayed as
1
11
ā¦
2
3
4
5
Could isotope be the problem? I have no clue how to solve it. Thx for help in advance
texnixe
December 11, 2016, 1:50pm
4
Looks like SORT_NATURAL returns the right order, though? But you should make it asc instead of desc. If you think Isotope could be the culprit, Iād disable it for the moment and check if the result is correct.
Helge
December 11, 2016, 2:03pm
5
<?php foreach($page->images()->sortBy('name', 'asc', SORT_NUMERIC) as $image): ?>
Makes it! Thank you
1 Like