```php
class HomePage extends Page
{
private static $many_many = [
'HeroImages' => [
'through' => PageImageLink::class,
'from' => 'Page',
'to' => 'Image',
]
];
}
```
```php
class PageImageLink extends DataObject
{
private static $has_one = [
'Page' => SiteTree::class,
'Image' => Image::class,
];
}
This fails because the linking object's relation class doesn't exactly match the owner. Sharing the linking objects across various entries in the ancestry should be a supported use case.
Co-authored-by: Aaron Carlino <unclecheese@leftandmain.com>