Jump to content

randomising the page array order

Recommended Posts

Hi, I'm trying to combine two find() arrays in a random order but currently can only make it give me back the same order each time. here's what im working with:

$works = $pages->find('template=work');
    $articles = $pages->find('template=article');
    $randWorks = $works->getRandom(count($works));

    foreach($randWorks as $child) {
      $class = $child === $page->rootParent ? " class='active'" : '';
      echo "<a$class href='{$child->url}'>{$child->title}</a>";

Share this post

Link to post
Share on other sites

like this?

$randWorks = $works->findRandom(count($works));

doesn't seem to work, still in same (non random) order

Share this post

Link to post
Share on other sites

Sorry, forgot to mention that you also need to shuffle if you want random order rather than just random selection. So do this once you have $randWords populated:

  • Like 2

Share this post

Link to post
Share on other sites

My comment is related to this topic.

I can not for the life of me figure out how to randomize something.

$onetestimonial = $pages->find("template=testimonial,limit=1");
foreach ($onetestimonial as $testes) {
	echo $testes->title;

I can get that far.

But I can not figure out how to randomize the output. There are currently 10 Testimonials. I'd like to display only one randomly.

I've seen $a->shuffle()
and getRandom()

but haven't the slightest idea how to use them.

Every attempt has resulted in some page error.

UGH, please help a PHPNEWB? lol

Share this post

Link to post
Share on other sites

GOSH DARNIT!!!!!!!!!

I solved it. I previously spent about an hour reading over the API and cheatsheet. Then I came upon sort=random

I hate it when this happens:

$onetestimonial = $pages->find("template=testimonial,limit=1,sort=random");

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By EyeDentify
      Hello dear PW gurus.

      I have stumbled over a strange error that i all of sudden got when trying to upload an image to a images field on a page.
      There where images allready stored in the field that i wanted to keep, but during the upload the error apear and after that all images are gone from the field and i can´t upload any, i just get the error every time.
      I am running ProcessWire 3.0.153 dev.
      After looking in the assets folder i find the folder for the page and the image files seems to be there including the ones i tried to upload when the error occured.
      But they don´t show up in the images field in the page editor.
      The error reported:
      SQLSTATE[01000]: Warning: 1265 Data truncated for column 'ratio' at row 1 And here is a screenshot of the event:

      The TracyDebugger Error reporting:

      I hope you fine folks could point me in a direction.
      But it seems our old pal set_time_limit() is back.

      Regards, EyeDentify
    • By Spyros
      I'm having a strange issue with the $page->find(), for some reason I'm missing some of the pages from the results. I found then that I was missing all the pages with the same "PAGE NAME". Is it a bug or am I missing something?
      If I change the "PAGE NAME" of one of the missing ones then I'm retrieving the page without any problem.
      Thank you
    • By benbyf
      Hi, Looking to create form elements on a page–some input with a colection of form inputs and the appropriate labels and variables for that input. I've used ProForms in the past and rolled out my own when creating simply one off forms, but I wonder if anyone has found a good way of allowing form creation on page editing so that clients can adhocly make and edit forms?
    • By EyeDentify
      Hello Dear PW Gurus.

      Hope you fair well in these Corona Crisis times.

      Anyhow, i have a problem with a Cryptic error message that shows up when i am trying to Delete images out of a Images field.
      The Error message does say a little but it does not make sense to me why i can´t delete the images because of it.

      Is it some permission issue perhaps?

      I will attach screenshots of it and what i did prior to it.
      I am from sweden so ignore the funny words here and there.

      Hope you all can send me on the right track.
      i am running PW 3.0.139 on this install.


      Step 2: Select the images with the trashcan symbol

      Step 3: Cryptic Error message

      I am scratching my head on this one, have not seen this before.

      Thankfull for all help.
    • By EyeDentify
      I have been experimenting with the new $page->meta() method and find it useful.

      Once i figured out that the data i "save" with it is tied to the page where i called the method from.

      So this is not obvious at least not for me in the documentation:
      So i just wanted to share that revelation with the community so you don´t get as confused as i was.

      Happy Coding Everyone.
  • Create New...