This example works better, with:
type ById []Recordsort.Sort(sort.Reverse(ById(records.Records))) 
Len()Swap()Less()RecordRecords 
Output:
{{ records} 
  [{{ record} 64321 http://golang.com} 
   {{ record} 3456 http://www.lommers.org/sampleurl} 
   {{ record} 4 http://www.this-is-my-url.com}]} 
 
Less() 
a := ById(records.Records)
sort.Slice(a, func(i, j int) bool {
    return a[i] > a[j]
})