Zum Ende der Metadaten springen
Zum Anfang der Metadaten

Sie zeigen eine alte Version dieser Seite an. Zeigen Sie die aktuelle Version an.

Unterschiede anzeigen Seitenhistorie anzeigen

« Vorherige Version anzeigen Version 2 Nächste Version anzeigen »

Verwendung

Um das Plugin zu verwenden ist kein zusätzlicher Aufwand des Nutzers notwendig, sofern das Plugin aktiv ist. Durch die Methode linkTo wird ein Eintrag in der "real Urls"-Tabelle erstellt, sofern eine entsprechend gemappte Entität bereitgestellt wird. Wird beispielsweise der Link für die Artikel-Entität "Schrauber" mit der ID "10" in der deutschen Sprache beantragt, so wird ein Eintrag in der Tabelle erstellt, der die URL ".../schrauber" auf die Artikeldetailseite mit der ID "10" und der Sprache "1" mappt.


Code-Beispiele

Einfacher Link mit Shortling (cmsPageShortLink)

use brandbox\cms\realurl;

private function linkTo($shortLink = 'basket') {
  return $this
	->getEngineRealUrl()
	->linkTo($shortLink)
	;
}

private function getEngineRealUrl() {
	return $this->staticController(realurl\engine::class);
}

Links zu Datenmodels

Beispiel shopGroup mit verschaltelten Gruppen
use brandbox\cms\realurl;

/**
  * @param int[] $groupIDs
  *
  * @return string
  */
public function get($groupIDs = []) {
	$groups = $this->getGroups($groupIDs);
    $contentType = $this
    	->getRepositoryShopGroup()
        ->getIdentifier()
     ;
    $realUrlModels = $this
    	->map()
        ->from($groups, true) // true = multiple
        ->withPropertyMap('contentID', 'id')
        ->withStaticMap('contentType', $contentType)
        ->to(group\lib\map\realUrlModel::class)
     ;

    return $this
    	->getEngineRealUrl()
        ->linkTo(self::SHORT_LINK, $realUrlModels)
        ;
}

private function getEngineRealUrl() { 
	return $this->staticController(realurl\engine::class); 
}

// group\lib\map\realUrl

namespace brandbox\shop\group\lib\map {

    use brandbox\cms\realurl;

    /**
     * @author Christopher Holden <holden@konmedia.com>
     */
    class realUrlModel extends realurl\lib\map\realurlModel {     
      /**
       * @var string
       */
      public $shopGroupName = '';
    }
  }
  • Keine Stichwörter