Hallo, lieber Forumbenutzer. Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen Möglichkeiten der Kommunikation ist das Forum ein wenig eingeschlafen und weniger Nutzer benutzen das Forum aktiv (trotzdem lohnt es sich evtl. hier nach Lösungen zu suchen oder seine Frage zu stellen).

Wir empfehlen, für deine Fragen/Probleme aktuell (zusätzlich) Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: http://redaxo.org/slack/
wolfgang
Beiträge: 126
Registriert: 20. Okt 2005, 20:52
Wohnort: 23966 Tressow
Kontaktdaten: Website

Rewrite Fehler nach Artikel verschieben / kopieren

2. Mär 2018, 09:47

Das Thema ist schon etwas alt und hat schon graue Haare. Deswegen ist es vielleicht auch etwas uninteressant geworden, sodass ein älteres Issue dazu schon begraben wurden (https://github.com/yakamara/redaxo_yrewrite/issues/57)

Im aktuellen REDAXO 5.5 mit aktuellem yrewrite wird das Path File nicht neu generiert wenn ein Artikel verschoben oder kopiert wurde. Es ist zwar einfach, dieses Verhalten zu umschiffen, indem man einmal auf offline und dann wieder auf online klickt. Damit wird das Path File von yrewrite neu generiert. Nicht jeder Redakteur kennt jedoch solche Kniffe oder mag sie sich merken. Ein Bug bleibt ein Bug, auch wenn man das Heck in eine andere Richtung dreht.

Ich habe mich grade mal ein paar Stunden mit dem Thema beschäftigt und versucht Workarrounds zu finden, die es ohne Codeänderung am Core und am Addon yrewrite möglich machen korrekte Urls zu bekommen. Da haben sich schon andere dran versucht - ich komme zum gleichen Ergebnis: ohne Extensionpoints ist das kaum zu handeln (https://github.com/redaxo/redaxo/issues/1239)

Die Extensionpoints hätten noch einen weiteren Vorteil: man könnte wieder automatische 301 Weiterleitungen machen. Das ist auch etwas, was einem Redakteur schwer beizubringen ist, dass er zusätzlich zu seiner redaktionellen Arbeit auch noch Urls verwalten soll.

Ich habe hier nur einen schalen Tipp, wie sich das Path File neu generieren lässt.

Wenn man sowas ins Template schreibt:

Code: Alles auswählen

if (rex::getUser()) {
    rex_yrewrite::generatePathFile([]);
}
Damit wird bei jedem Aufruf im Frontend bei eingeloggtem Redaxo Benutzer das Path File neu geschrieben. Bei kleinen Seiten kein Problem. Wenn es viele Seiten sind, könnte es zu einer Verzögerung kommen. Dann müsste man eine Erweiterung machen, z.B. einen Link im Backend "Pathfile neu generieren". Vielleicht hat ja noch jemand einen behaltenswerten Tipp dazu. Deswegen erscheint dieser Beitrag auch hier im Forum und nicht im Slack.

Liebe Grüße,
Wolfgang

Benutzeravatar
RexDude
Beiträge: 2543
Registriert: 22. Apr 2010, 11:24

Re: Rewrite Fehler nach Artikel verschieben / kopieren

9. Mär 2018, 15:47

Hi,

würde dein code in die boot.php des projects addon schmeissen. ins template gehört sowas nicht. desweiteren nur ausführen wenn backendpage = "content/functions". So wird das löschen der pathlist nur dann getriggert wenn der user sich auf der funktionen seite befindet. ansonsten: pull requests für redaxo und yrewrite einreichen...

nachtrag: habs grad mal umgesetzt:

Code: Alles auswählen

// yrewrite workaround for 3 year old bug, see https://github.com/yakamara/redaxo_yrewrite/issues/57
rex_extension::register('PACKAGES_INCLUDED', function(rex_extension_point $ep) {
	if (rex::isBackend() && rex_addon::get('yrewrite')->isAvailable() && rex_be_controller::getCurrentPage() == 'content/functions') {
		rex_yrewrite::generatePathFile([]);
	}
});

Zurück zu „AddOns / Packages [R5]“