2012-11-03 15 views
6

Unter EE 1 war ich in der Lage, die Quelle zu hacken, um mir zu erlauben, URL-Titel mit dem genauen Fall des Titels zu behalten. Das heißt, ich konnte verhindern, dass alle URL-Titel kleingeschrieben werden.Den Fall eines Titels in ExpressionEngine beibehalten?

Ich muss das gleiche Verhalten auf EE 2 replizieren, aber ich bin nicht ganz so weit.

Was ich bisher getan haben, ist dies:

In <system>/expressionengine/modules/channel/mod.channel_standalone.php: 

commented out this line: NewText = NewText.toLowerCase(); 

added “A-Z” to this line: NewText = NewText.replace(/[^a-z0-9-_]/g,’‘); 

In <system>/expressionengine/helpers/EE_url_helper.php: 

removed strtolower() from this section: 

    if ($lowercase === TRUE) 
    { 
    $str = strtolower($str); 
    } 

added “A-Z” to this line: [^a-z0-9\-\._] 

Ich weiß nicht sicher, ob alle diese Änderungen tatsächlich notwendig waren, aber ich denke schon. Wie es aussieht, sollten die Änderungen an mod.channel_standalone.php für alle Einsendungen über ein eigenständiges Anmeldeformular sorgen und die Änderungen an EE_url_helper.php sollten für regelmäßige Buchungen sorgen.

Es ist fast, außer für die Live-URL. Die URL, die beim Eintippen eines Titels generiert wird, wird in Kleinbuchstaben generiert. Wenn ich es jedoch lösche, bevor ich den Beitrag speichere, speichert es den Post mit demselben Fall im URL-Titel wie der Titel. Zumindest tut es das meistens. Manchmal wird es mit der Kleinbuchstaben-URL gespeichert.

Wenn mir jemand sagen könnte, wie man den Live-URL-Titel zur Zusammenarbeit bringt, wäre ich sehr dankbar.

+0

die URL Titel leben, ist eine JavaScript-Sache, mit einem anständigen Text-Editor können Sie suchen durch das gesamte EE- oder Themenverzeichnis. – GDmac

+0

Ich habe genau das gemacht, aber da muss etwas sein, das ich nicht fange. Ich habe nach Instanzen von a-z09, strtolower und NewText.toLowerCase gesucht, aber ich habe nicht mehr Instanzen gefunden als die oben genannten, die relevant aussehen. Ich habe etwas im Codeigniter-Verzeichnis gefunden (eine andere URL-Hilfsfunktion), aber die Bearbeitung hatte keine Wirkung. Wenn es durch ein Javascript getan wird, würde es irgendeine Art von Standardklasse geben, nach der man suchen könnte? –

+0

Oh, oh, du hast gerade gesehen, dass du vorgeschlagen hast, Themen zu suchen. Danke, das habe ich übersehen. Wird überprüfen! –

Antwort

5

Dies geschieht in themes/javascript/compressed/jquery/plugins/ee_url_title.js.

es ein bisschen kann schwierig sein, da die Javascript zu finden ist komprimiert, aber der Ausdruck wird wollen Sie bearbeiten ist: a = (k + a).toLowerCase().replace(d, c);

+0

Danke. :) Ich sehe, dass es im selben Skript auch einen Abschnitt gibt, der a-z09 als gültige Zeichen erwähnt. Sollte ich dort auch A-Z hinzufügen oder ist das nicht nötig? –

Verwandte Themen