Thank you, your post really helped. I couldn't seem to get the $checkstatus->is(Page::statusUnpublished) to work (even when changing it to statusHidden) but what I did was this:
foreach (...) {
$checkstatus = $homeblock->PageLink->status;
if ($checkstatus == 1) {
echo 'show stuff';
}
else {
echo 'nothing to show';
}
}
Not sure if that is the most economical way to do it but it seems to work. $homeblock->PageLink->status outputs a number for each repeater item (1 = published) and doesn't show anything that isn't published.
Now i just need to figure out a way to tidy up the backend