• Wenn du hier im Forum ein neues Thema erstellst, sind schon Punkte aufgeführt die du ausfüllen musst. Das dient im Allgemeinen dazu die notwendigen Informationen direkt mit der Frage bereitzustellen.
    Da in letzter Zeit immer wieder gerne das Formular gelöscht wurde und erst nach 3 Seiten Nachfragen die benötigten Infos für eine Hilfe kommen, werde ich nun jede Fragestellung die nicht einmal annähernd das Formular benutzt, sofort in den Sondermüll schicken.
    Füllt einfach die abgefragte Daten aus und alle können euch viel schneller helfen.

'post123456 zu post-123456 Permalinks

boa

Bekanntes Mitglied
Lizenzinhaber
Registriert
25. Nov. 2013
Beiträge
68
Punkte
48
Hab das Problem, das ich die Permalinks von VB nocht in Xenforo umgeschrieben bekomme, wegen dem blöden # in der htaccess. Kann man das irgendwie in den Dateien ändern, das der - nicht benötigt wird?
 
hattest du vBseo im Einsatz?
wenn du einen Permalink mit Seiten-Link und nur einem #post umschreiben willst wird das nicht klappen, da der Anker nicht Teil des Requests ist

Werden zudem beim Konvertieren die IDs nicht neu vergeben? das würde dir also vermutlich eh nicht wirklich helfen

da würde wohl nur eine Zwischenseite helfen welche per JS auf den Anker prüft und dann auf showthread.php?p=123456 leitet damit die korrekte Weiterleitung dann greift
 
Das ist so nicht ganz korrekt. Du kannst auch bei ReWrites die Parameter und Achors umschreiben.

Und wenn der Import mit der Funktion "ID's behalten" importiert wurde, kann das klappen.

Aber der Aufwand könnte sich schnell über den nutzen erheben. Die richtige Seite wird ja in der Regel aufgerufen, er springt nur nicht zum passenden Post.
 
Ja, hatte vbseo im Einsatz. Funktioniert alles, ausser der Bindestrich zwischen post und der Zahl fehlt. Ich hab die IDs belassen, um nicht mehr als eine Umleitung zu haben.
 
gut das mit ID behalten wusste ich jetzt nicht, dann ist es ja OK

Das ist so nicht ganz korrekt. Du kannst auch bei ReWrites die Parameter und Achors umschreiben.
du kannst ....threads/post123456-zu-post-123456-permalinks.3181/#post-35826 die 35826 per Modrewrite auslesen ???

lass hören, wäre mir wirklich neu

EDIT:
wenn sonst alles passt, würde ich trotzdem zu JS raten, einfach wie bei vbseo damals
Permalinks und Pagination dort hatte ich das Skript schon mal gepostet
könnte man (wenn man JS kann) vielleicht auch so modifizieren dass der Browser den Anker nur modifiziert - ist wohl auch die einfachste Variante
 
Hmm guter Ansatz ;)
Klappt aber nicht:
RewriteRule ^[^/]+/([0-9]+)-[^\.]+\.html%23post([0-9]+)$ /xenforo/threads/$1/%23-$2 [NE]
 
http://httpd.apache.org/docs/current/rewrite/flags.html#flag_ne
ich verstehe es so, man kann nicht AUF einen Anker redirecten ohne NE-Flag weil die Raute in HEX geändert wird

also müsste es schon so lauten (BTW R=301, sonst läuft es eh nur Intern ab), wobei ich nach wie vor bezweifle das es auf Request-Seite jemals einen Anker geben wird
Code:
RewriteRule ^[^/]+/([0-9]+)-[^\.]+\.html#post([0-9]+)$ /xenforo/threads/$1/#post-$2 [NE,R=301]
demnach wäre es eher so "machbar" bzw gedacht, da es aber dann keine PostID gibt, setze ich testweise einfach mal die ThreadID
Code:
RewriteRule ^[^/]+/([0-9]+)-[^\.]+\.html$ /xenforo/threads/$1/#post-$1 [NE,R=301]
 
meine Fresse, nen halben Nachmittag Trail&Error dazu googlefoo zu Hauf, aber nu funzt es :D

das JS müsste jetzt in den Footer des Threads

Code:
<script type="text/javascript">
//<![CDATA[
window.orig_onload = window.onload;
window.onload = function()
{

	var cpost=document.location.hash.substring(1);
	if(cpost)
	{ 
		var ispostvb=cpost.substring(0,4)=='post';
		var ispostxf=cpost.substring(0,5)=='post-';
		if(ispostvb && !ispostxf)
		{
			var cpostvb=parseInt(cpost.substring(4));
			var cpost2='post-'+cpostvb;
		};
		if( $('li#'+cpost2).length > 0 )
		{
			location.hash = '#' + cpost2;
		}else
		if(parseInt(cpostvb)>0)
		{
			location.replace('http://www.xendach.de/goto/post?id='+cpostvb);
		};
	} 
}
if(typeof window.orig_onload == "function") window.orig_onload();
//]]>
</script>

dabei wird der vB Anker übersetzt und angewendet oder per goto/ auf die neue URL verwiese wenn ein Post verschoben ist bzw. auf einer anderen Threadseite zu finden wäre

die Domain logischer Weise noch eintragen statt "xendach.de"
 
Zurück
Oben