mirror of
https://github.com/silverstripe/silverstripe-cms
synced 2024-09-28 20:29:20 +02:00
Merge pull request #1052 from @dmeeking
This commit is contained in:
commit
4aca9ac145
@ -55,26 +55,20 @@ class OldPageRedirector extends Extension {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!$page) {
|
if (!$page) {
|
||||||
// If we haven't found a candidate, lets resort to finding an old page with this URL segment
|
// If we haven't found a candidate, resort to finding a previously published page version with this URL segment
|
||||||
$oldFilter = array(
|
$oldRecords = DataList::create('SiteTree')
|
||||||
'"SiteTree_versions"."URLSegment"' => $URL,
|
->filter(array(
|
||||||
'"SiteTree_versions"."WasPublished"' => true
|
'URLSegment' => $URL,
|
||||||
);
|
'WasPublished' => 1
|
||||||
if($parent) {
|
))
|
||||||
$oldFilter[] = array('"SiteTree_versions"."ParentID"' => $parent->ID);
|
->sort('"LastEdited" DESC')
|
||||||
}
|
->setDataQueryParam("Versioned.mode", 'all_versions');
|
||||||
$query = new SQLSelect(
|
|
||||||
'"RecordID"',
|
if($parent) $oldRecords->filter(array('ParentID' => $parent->ID));
|
||||||
'"SiteTree_versions"',
|
|
||||||
$oldFilter,
|
$page = $oldRecords->first();
|
||||||
'"LastEdited" DESC',
|
|
||||||
null,
|
if ($page) {
|
||||||
null,
|
|
||||||
1
|
|
||||||
);
|
|
||||||
$record = $query->execute()->first();
|
|
||||||
if ($record) {
|
|
||||||
$page = SiteTree::get()->byID($record['RecordID']);
|
|
||||||
$redirect = true;
|
$redirect = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user