Need to sort views block by current node first So what I'm doing is setting up a block with images that link to it's corresponding testimonial page.  Each testimonials has it's own node, and I want to sort the block so that the first image in the block is the one that links to the current testimonial page that the user is on. For example:

I have testimonials from:

Student A
Student B
Student C
Student D

If I'm on the page for Student C then the order of the block should be:

Student C
Student A
Student B
Student D

Anyone have a good way to do this?
A quick solution might be using the module Views PHP.

As far as I understand your problem, you want to sort a list but have the current student at the top.

I used a Content Type name 'Students' with a integer field 'Rank', representing the field to sort the students.

Create your view and a block and set up your view as follows:


Format: as you like, no grouping 
Show: Fields, no special settings
Fields: 


Content: Nid (exclude from display)
Content: Title
Content: Rank

Filter Critera


Content: Published (yes)
Content: Type (= Student)

Sort Criteria:


Content: Rank (asc)
Global: PHP (asc) -> this is from the Views PHP module



Configure the Views PHP filter similar to this:
Sort Code (no php tags!):

$nidFirst = arg(1);
return $row1-&gt;nid != $nidFirst;


That's it. Embed the resulting block on your students page and navigate to one of those pages.

Sort criteria 1 gets the result into the default order, e.g. best rank is on top.
Sort criteria 2 fetches the current students node id (nid) from the url (assuminf it realy is the first argument), compares it to each row and returns true, if the rows nid is not equal to the current students nid. 
As the sort direction is ascending, all rows with a comparison result of true will be moved below the row with the result false, so the current student ends up at the top of the list.