Download the PHP package yakamara/redaxo_yrewrite without Composer

On this page you can find all versions of the php package yakamara/redaxo_yrewrite. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package redaxo_yrewrite

YRewrite

Übersicht

Das AddOn YRewrite für REDAXO erweitert das CMS um "sprechende" URLs und unterstützt den Betrieb mehrerer Domains. REDAXO ohne Rewriter-AddOn erstellt Urls nach dem Schema index.php?article_id=13&clang=1zur Vefügung. YRewrite bietet lesbare URLs wie z.B. /de/news/archiv/ in verschiedenen Schemata.

Mehrere Domains können dann sinnvoll sein, wenn

Tipp: Wir empfehlen im ersten Fall, für jede einzelne Domain in der Struktur auf der obersten Ebene eine Kategorie anzulegen.

Features

Installation

Voraussetzung für die aktuelle Version von YRewrite: REDAXO >= 5.5

Erste Schritte

Setup

Unter dem Reiter Setup sind die sitemap.xml und robots.txt je eingerichteter Domain einsehbar. Außerdem lässt sich ein Setup durchführen, bei der die Apache-Konfiguration für YRewrite über eine .htaccess-Datei erstellt wird.

Apache-Konfiguration für YRewrite

Das Setup ausführen, um eine .htaccess-Datei im Hauptverzeichnis zu erstellen, die für die Verwendung von YRewrite benötigt wird. Anschließend werden alle Frontend-URLs in suchmaschinenfreundliche URLs umgeschrieben ("Rewriteing").

Hinweis Sollten nach Abeschluss des Setups die Frontend-URLs nicht funktionieren, bitte prüfen, ob es sich um einen Apache- oder NGINX-Server handelt (siehe unten). Außerdem prüfen, ob das Webhosting-Paket eigene .htaccess-Regeln erlaubt.

Hinweis: Das Addon leitet alle Anfragen von /media/ über das Media-Manager-AddOn. Stelle daher sicher, dass es weder eine Struktur-Kategorie "Media" gibt, noch, dass sich keine deiner Dateien fürs Frontend, bspw. CSS- oder JS-Dateien, darin befinden. Gute Orte hierfür sind die Ordner /assets/ oder die Verwendung des Theme-AddOns. Sollte es notwendig sein, eine Kategorie namens "Media" zu verwenden, dann müssen die entsprechenden Zeilen in der .htaccess-Datei auskommentiert oder umbenannt werden und diese fortan genutzt werden, wenn Medien aus dem Medien Manager verwendet werden. Dies hat weitere Auswirkungen, z.B. auf geschützte Dateien mit YCom - das Auskommentieren und Umbenennen sollte daher nur von erfahrenen REDAXO-Entwicklern vorgenommen werden.

NGINX-Konfiguration für YRewrite

Eine vollständige nginx config für YRewrite.

Hinweis für PLESK-Websites: Die Direktiven können unter Einstellungen für Apache & nginx der gewünschten Domain im Abschnitt Zusätzliche nginx-Anweisungen hinterlegt werden.

Domain hinzufügen

  1. In "YRewrite" unter "Domains" Auf das +-Zeichen klicken.
  2. Domain eintragen, bspw. https://www.meine-domain.de/.
  3. Mountpoint auswählen (optional). Das ist der Startartikel einer Kategorie, in der sich YRewrite einklinken soll. Alle Artikel unterhalb des Mount-Artikels sind dann über die Domain aufrufbar. Wird kein Artikel ausgewählt, sind alle Ebenen dieser Domain zugeordnet (Standard).
  4. Startseiten-Artikel auswählen. Das kann der Mount-Artikel sein oder eine separate Artikelseite. Diese wird als Startseite der Domain aufgerufen.
  5. Fehlerseiten-Artikel auswählen. Das ist der Artikel, der mit einem 404-Fehlercode ausgegeben wird, z.B., wenn eine Seite nicht gefunden werden kann oder ein Tippfehler in der Adresse vorliegt.
  6. Spracheinstellungen: Hier können Sprachen ausgewählt werden, die mit der Domain verknüpft werden. So lassen sich bspw. unterschiedliche Domains pro Sprache umsetzen.
  7. Titelschema eintragen, bspw. %T - Meine Domain. Dieses Titelschema kann dann im Website-Template ausgegeben werden.
  8. robots.txt-Einstellungen hinzufügen. Siehe Tipp unten.
  9. Domain hinzufügen.

Diese Vorgehensweise für alle gewünschten Domains wiederholen.

Tipp: Um die Installation während der Entwicklung zuverlässig gegen ein Crawling von Bots und Suchmaschinen zu schützen, genügt die robots.txt nicht. Dazu gibt es das maintanance-Addon von https://friendsofREDAXO.github.io

Tipp: Die Domain auch in der Google Search Console hinterlegen und die sitemap.xml dort hinzufügen, um das Crawling zu beschleunigen. Die Domain sollte in allen vier Variationen hinterlegt werden, also mit/ohne https und mit/ohne www.. Die sitemap.xml jedoch nur in der Hauptdomain, am besten mit https:// und www.

Hinweis: Domains mit Umlauten bitte derzeit decodiert eintragen. Umwandlung bspw. mit https://www.punycoder.com

Hinweis: Informationen zu Best Practice zu Domains und mehrsprachigen Websites auch unter Multiregionale und mehrsprachige Websites verwalten aus der Google Search Central Dokumentation.

Alias-Domain hinzufügen

Alias-Domains werden nur dann benötigt, wenn mehrere Domains auf den selben Ordner im Server zeigen, aber keine separaten Websites aufrufen. z.B. www.meinedomain.de und www.meine-domain.de.

Alias-Domains müssen nicht eingetragen werden, wenn die Domain nicht auf das Serververzeichnis zeigt. Einige Hoster bieten bspw. von sich aus die Möglichkeit, per Redirect von www.meinedomain.de auf www.meine-domain.de weiterzuleiten. Dann wird die Einstellung nicht benötigt.

  1. In "YRewrite" unter "Domains" Auf das +-Zeichen klicken
  2. Alias-Domain eintragen, bspw. https://www.meine-domain.de/
  3. Ziel-Domain aus YRewrite auswählen
  4. Alias-Domain hinzufügen

Weiterleitungen

Unter Weiterleitungen können URLs definiert werden, die dann auf einen bestimmten Artikel oder eine andere Adresse umgeleitet werden.

Hinweis: Mit dieser Einstellung können nicht bereits vorhandene Artikel / URLs umgeleitet werden, sondern nur URLs, die in der REDAXO-Installation nicht vorhanden sind. Das ist bspw. bei einem Relaunch der Fall, wenn alte URLs auf eine neue Zielseite umgeleitet werden sollen.

Tipp: Damit lässt sich auch ein Artikel oder eine Kategorie zu einem gänzlich anderen URI-Protokoll ändern, bspw. tel:, mailto: u.a. Diese werden auch an anderer Stelle, bspw. von der rex_navigation::factory(), berücksichtigt.

Weitere Schritte

Die sitemap.xml kann pro Domain bspw. in der Google Search Console eingetragen werden, um die korrekte Indexierung der Domain(s) und deren Seiten zu überprüfen.

Klassen-Referenz

YRewrite-Objekt

Siehe auch: https://github.com/yakamara/redaxo_yrewrite/blob/main/lib/yrewrite/yrewrite.php

Methoden

YRewrite-Domain-Objekt

Siehe auch: https://github.com/yakamara/redaxo_yrewrite/blob/main/lib/yrewrite/domain.php

Methoden

YRewrite-SEO-Objekt

Siehe auch: https://github.com/yakamara/redaxo_yrewrite/blob/main/lib/yrewrite/seo.php

Methoden

Beispiele

ID der aktuellen Domain in YRewrite

Beispiel-Rückgabewert: 1

Mount-ID der Domain

Beispiel-Rückgabewert: 5

Startartikel-ID der Domain

Beispiel-Rückgabewert: 42

Fehler-Artikel-ID der Domain

Beispiel-Rückgabewert: 43

Name der aktuellen Domain

Beispiel-Rückgabewert: meine-domain.de

vollständige URL eines Artikels

Beispiel-Rückgabewert: https://www.meine-domain.de/meine-kategorie/mein-artikel.html

Zu welcher Domain gehört der aktuelle Artikel?

Beispiel-Rückgabewert: meine-domain.de

Meta-Tags auslesen (description, title, image usw.)

Diesen Codeabschnitt in den <head>-Bereich des Templates kopieren:

Dies erzeugt folgende Ausgabe:

Meta-Tags erweitern / ändern

Navigation Factory in Abhängigkeit der gewählten Domain

Weitere Informaionen zur Navigation Factory des REDAXO-Cores in der API-Dokumentation unter https://REDAXO.org/api/master/ und bei den Tricks von FriendsOfREDAXO: https://github.com/friendsofREDAXO/tricks/

Übersicht aller Domains ausgeben

URL-Schemes für YRewrite

Übersicht

YRewrite kann durch Schemes erweitert werden.

Installation

Nachfolgend listen wir hier ein paar Beispiele.

Endung auf .html setzen

Trailing Slash entfernen

URL-Replacer

Ersetzt URLs leerer Elternkategorien mit den URLs der nächsten mit inhalt versehenen (online-)Kindkategorie.

Basiert auf: https://gist.github.com/gharlan/a70704b1c309cb1281c1

Weiterleitung egal ob Inhalt in Startartikel der Elternkategorie

Weiterleitung nur wenn kein Inhalt im Startartikel der Elternkategorie

URL manipulieren, hier mit dem AddOn Sprog

So kann als Kategoriename ein Platzhalter wie {{contact}} verwendet werden und durch die in Sprog hinterlegten Sprachvarianten ersetzt werden.

One Level, Kategoriename-Ersetzung durch Sprog.

Multilevel, Kategoriename-Ersetzung durch Sprog.

Ersetzungsmuster mit einem eigenen Schema verändern

Die Ersetzungsmuster können mit eigenen Schema verändert werden. In diesem Beispiel wird & durch und getauscht.

  1. Datei in den lib-Ordner des Project-AddOns anlegen

  2. In der boot.php-Datei des project-AddOns diesen Code einfügen:

rex_yrewrite::setScheme(new rex_project_rewrite_scheme());

Addons, die eigene Schemes mitbringen:

Weitere Unterstützung


All versions of redaxo_yrewrite with dependencies

PHP Build Version
Package Version
Requires php Version >=8.1
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package yakamara/redaxo_yrewrite contains the following files

Loading the files please wait ....