Der Breadcrumb Cache ist eine neue Implementierung der alten breadcrumb(x) Funktion. Die Aufgabe dieser Funktion ist es, sobald eine ID angefragt wird, den entsprechenden Link herzustellen.
Wie auch beim Menü wird die Funktionalität durch 2 Teilbereiche gesichert. Der Frontend Bereich betrifft den Reader der Backend Bereich den Writer.
Jedes mal, wenn die url der Seiten verändert werden oder wenn der Language Button in der Konfig betätigt wird, wird ein neuer Breadcrumb Cache geschrieben. Dazu liest der Writer eine Liste aller Seiten aus und erstellt daraufhin eine Liste, aus der später gelesen werden kann. Die liste ist sortiert nach LanguageId und dann nach Id der Seite, sodass die Datei mit folgendem Codesnippet gelesen werden kannjson_decode(file_get_contents(path))[$languageId][$pageId]; Falls der Cache fehlerhaft ist, nicht Existiert, an der falschen Stelle sitzt oder keine Schreibrechte besitzt, wirft das Programm im Frontend eine Exception mit einer dazugehörigen Nachricht.
Der Reader wird in der Init geladen und bei jedem Aufruf der breadcrumb Funktion wird die übergebene ID und die SprachID genutzt, um den Link der angefragten Seite aus dem Cache zu lesen.