Merge branch '4.9' into 4

This commit is contained in:
Steve Boyd 2021-11-18 17:07:02 +13:00
commit 96fdf6dc72
5 changed files with 35 additions and 14 deletions

View File

@ -143,9 +143,10 @@ class VirtualPage extends Page
$copied = $this->CopyContentFrom();
if ($copied && $copied->exists()) {
$tags['canonical'] = [
'tag' => 'link',
'attributes' => [
'rel' => 'canonical',
'content' => $copied->AbsoluteLink(),
'href' => $copied->AbsoluteLink(),
],
];
}

View File

@ -79,10 +79,12 @@ de:
SilverStripe\CMS\Controllers\CMSPageHistoryController:
AUTHOR: Autor
COMPAREMODE: 'Vergleichsmodus (wähle zwei)'
COMPARINGVERSION: 'Vergleiche Versionen {version1} und {version2}.'
MENUTITLE: Historie
MULTISELECT: Massenaktionen
NOTPUBLISHED: 'Nicht veröffentlicht'
PREVIEW: 'Vorschau der Webseite'
NO_PREVIEW: 'Keine Vorschau verfügbar'
PUBLISHER: Herausgeber
REVERTTOTHISVERSION: 'Zurück zu dieser Version'
SHOWUNPUBLISHED: 'Zeige unveröffentlichte Versionen'

View File

@ -84,6 +84,7 @@ it:
MULTISELECT: 'Azioni di gruppo'
NOTPUBLISHED: 'Non pubblicato'
PREVIEW: 'Anteprima sito'
NO_PREVIEW: 'Nessuna anteprima disponibile'
PUBLISHER: Editore
REVERTTOTHISVERSION: 'Ripristina a questa versione'
SHOWUNPUBLISHED: 'Mostra versioni nascoste'
@ -155,10 +156,10 @@ it:
DESCRIPTION: 'Reinoltra ad una pagina interna o una URL esterna'
HEADER: 'Questa pagina redirigerà gli utenti su un''altra'
OTHERURL: 'Altro indirizzo del sito web'
PLURALNAME: 'Pagine di reindirizzamento'
PLURALNAME: 'Pagine Base'
PLURALS:
one: 'Una Pagina di Redirezione'
other: '{count} Pagine di Redirezione'
one: 'Una Pagina Base'
other: '{count} Pagine Base'
REDIRECTTO: 'Redirigi a'
REDIRECTTOEXTERNAL: 'Un altro sito web'
REDIRECTTOPAGE: 'Una pagina sul tuo sito web'
@ -285,10 +286,10 @@ it:
EditLink: modifica
HEADER: 'Questa è una pagina virtuale'
HEADERWITHLINK: 'Questa è una pagina virtuale copiata da "{title}" ({link})'
PLURALNAME: 'Pagine virtuali'
PLURALNAME: 'Pagine Base'
PLURALS:
one: 'Una Pagina Virtuale'
other: '{count} Pagine Virtuali'
one: 'Una Pagina Base'
other: '{count} Pagine Base'
PageTypNotAllowedOnRoot: 'Il tipo di pagina originale "{type}" non è consentito al primo livello per questa pagina virtuale'
SINGULARNAME: 'Pagina virtuale'
SilverStripe\CMS\Reports\BrokenFilesReport:

View File

@ -83,7 +83,7 @@ nl:
MENUTITLE: Geschiedenis
MULTISELECT: 'Meervoudige acties'
NOTPUBLISHED: 'Niet gepubliceerd'
PREVIEW: 'Website voorbeeld'
NO_PREVIEW: 'Geen voorbeeld beschikbaar'
PUBLISHER: 'Gepubliceerd door'
REVERTTOTHISVERSION: 'Deze versie terugzetten'
SHOWUNPUBLISHED: 'Toon nog niet gepubliceerde versies'
@ -155,10 +155,10 @@ nl:
DESCRIPTION: 'Stuurt door naar een interne pagina of een externe URL'
HEADER: 'Deze pagina zal gebruikers naar een andere pagina doorsturen (redirect)'
OTHERURL: 'Andere website URL'
PLURALNAME: 'Verwijzingspagina''s'
PLURALNAME: Verwijzingspagina
PLURALS:
one: 'een verwijzingspagina'
other: '{count} verwijzingspagina''s'
one: Verwijzingspagina
other: '{count} Verwijzingspagina''s'
REDIRECTTO: 'Doorverwijzen naar'
REDIRECTTOEXTERNAL: 'Een andere website'
REDIRECTTOPAGE: 'Een pagina op deze website'
@ -285,10 +285,10 @@ nl:
EditLink: wijzigen
HEADER: 'Dit is een virtuele pagina'
HEADERWITHLINK: 'Dit is een virtuele pagina met de inhoud van "{title}" ({link})'
PLURALNAME: 'Virtuele pagina''s'
PLURALNAME: 'Virtuele pagina'
PLURALS:
one: 'een virtuele pagina'
other: '{count} virtuele pagina''s'
one: 'Virtuele pagina'
other: '{count} Virtuele pagina''s'
PageTypNotAllowedOnRoot: 'Voor deze virtuele pagina is het originele paginatype "{type}" niet toegestaan op het hoogste niveau.'
SINGULARNAME: 'Virtuele pagina'
SilverStripe\CMS\Reports\BrokenFilesReport:

View File

@ -7,6 +7,7 @@ use SilverStripe\CMS\Controllers\ModelAsController;
use SilverStripe\CMS\Model\RedirectorPage;
use SilverStripe\CMS\Model\SiteTree;
use SilverStripe\CMS\Model\VirtualPage;
use SilverStripe\Control\ContentNegotiator;
use SilverStripe\Core\Config\Config;
use SilverStripe\Dev\FunctionalTest;
use SilverStripe\ORM\DataObject;
@ -93,6 +94,22 @@ class VirtualPageTest extends FunctionalTest
$this->assertEquals("<p>New content</p>", $vp2->Content);
}
public function testMetaTags()
{
$this->logInWithPermission('ADMIN');
$master = $this->objFromFixture('Page', 'master');
$vp1 = $this->objFromFixture(VirtualPage::class, 'vp1');
// Test with title
$meta = $vp1->MetaTags();
$charset = Config::inst()->get(ContentNegotiator::class, 'encoding');
$this->assertContains('<meta http-equiv="Content-Type" content="text/html; charset='.$charset.'"', $meta);
$this->assertContains('<link rel="canonical" href="'.$master->AbsoluteLink().'"', $meta);
$this->assertContains('<meta name="x-page-id" content="'.$vp1->ID.'"', $meta);
$this->assertContains('<meta name="x-cms-edit-link" content="'.$vp1->CMSEditLink().'"', $meta);
$this->assertContains('<title>'.$master->Title.'</title>', $meta);
}
/**
* Test that, after you publish the source page of a virtual page, all the already published
* virtual pages are published