in der Struktur eine Kategorie/Artikel Preisträger
eine YForm-Tabelle mit Büchern, wobei pro Jahr es einen Gewinner gibt
In dem Artikel Preisträger wird das Buch dargestellt.
Jetzt wollte ich mit nachfolgenden Code versuchen, das der Artikel Preisträger gleich die Url preistraeger/2021 erhält.
Das klappt, aber nur soweit bis der ArtikelCache oder auch das Umbenennen des Artikels erfolgt. Dann werden Urls für den Artikel wie ../index.php?article_id=12 erstellt.
Ich hatte mich bereits mit @gharlan geschrieben und wir sind zur Erkenntnis gekommen, dass es mit den aktuellen Bordmitteln nicht möglich ist, solch eine dynamisch Url zu generieren.
<?php
namespace Project;
use Project\Model\Book;
use Url\Profile;
class Scheme extends \rex_yrewrite_scheme
{
/**
* @param \rex_article $art
* @param \rex_yrewrite_domain $domain
*
* @return string|false
*/
public function getCustomUrl(\rex_article $art, \rex_yrewrite_domain $domain)
{
if ($art->isStartArticle() && $profiles = Profile::getByNamespace('pdsb')) {
foreach ($profiles as $profile) {
$article = \rex_article::get($profile->getArticleId());
if ($article->getId() === $art->getId() || $article->getCategoryId() === $art->getId()) {
dd($art);
$winner = Book::findWinner();
$winnerYearIdPair = $winner->toKeyValue('year', 'id');
return $art->getUrl() . '/' . array_key_first($winnerYearIdPair) . $this->suffix;
}
}
}
return parent::getCustomUrl($art, $domain);
}
Ich habe
Preisträger
In dem Artikel
Preisträger
wird das Buch dargestellt. Jetzt wollte ich mit nachfolgenden Code versuchen, das der ArtikelPreisträger
gleich die Urlpreistraeger/2021
erhält. Das klappt, aber nur soweit bis der ArtikelCache oder auch das Umbenennen des Artikels erfolgt. Dann werden Urls für den Artikel wie../index.php?article_id=12
erstellt.Ich hatte mich bereits mit @gharlan geschrieben und wir sind zur Erkenntnis gekommen, dass es mit den aktuellen Bordmitteln nicht möglich ist, solch eine dynamisch Url zu generieren.