pathauto und Dateiendung
am 08.01.2022 - 12:13 Uhr in
Sagt mal,
weiss jemand, wie ich mit Pathauto die Dateiendung „jpg“ aus dem erzeugten Pfadnamen wegbekomme?
Ich benutze Pathauto auch für media entities, also Bilder ganz konkret, deren Dateiname für den URL-Alias übernommen wird ( Token [media:name] ).
Die Dateiendung „jpg“ wird dem URL-Alias leider immer hinten angehängt. Der Punkt vor dem Suffix wird zwar „vernichtet“, die drei Buchstaben (jpg) bleiben aber hintendran, z.B.
"/maria-mit-kindjpg"
Obwohl ich jpg in die Liste „Zu entfernende Zeichenketten“ sehr wohl geschrieben habe.
Wenn ich das Wörtchen jpg irgendwo in der Mitte des Dateinamens unterbringe, also z.B. „bilddatei20220104 jpg auto“, oder „2022jpghaus“, dann wird jpg ordnungsgemäß entfernt, also grundsätzlich scheint das zu laufen. In Form eines Dateisuffix möchte Pathauto aber scheinbar ganz bewußt die Zeichenkette nicht entfernen.
Kennt da jemand einen Grund für? Meine Versuche pathauto dabei dumm auszutricksen scheitern, ich müsste wohl echt wissen, warum es so handelt.
Dankbar für Tipp!
- Anmelden oder Registrieren um Kommentare zu schreiben
Da müssen wir uns mal
am 11.01.2022 - 08:09 Uhr
Da müssen wir uns mal ansehen, wie Du den Medien-Typ konfiguriert hast.
Das Feld Name ist ein Pflichtfeld, das man zwar bei den Formulareinstellungen deaktivieren kann, damit es nicht ausgefüllt werden muss, aber das dann dennoch im Hintergrund befüllt wird, und zwar mit dem Dateinamen des Bildes.
Ich habe das gerade bei mir ausprobiert.
Wenn ich das Feld Name pflegbar mache und meinetwegen "Das ist der Name vom Bild" reinschreibe, dann lautet der Alias "meinedomain/dasistdernamevombild"
Wenn ich das Feld Name nicht pflegbar mache, dann wird der Bildname eingetragen "das_ist_ein_bild.jpg" und der Alias lautet "meinedomain/dasisteinbildjpg".
Du musst also entweder den Namen pflegbar machen (und auf unsichtbar setzen, wenn er nicht erscheinen soll) und dort eintragen, was auch immer der Alias ohne jpg sein soll.
Oder wenn Du Dir das sparen sollst und der Alias aus dem Bildnamen automatisch generiert werden soll, dann müsstest Du mit einer Funktion den Namen automatisch befüllen und den Dateinamen ohne Endung rein schreiben.
Vielleicht könntest Du die Dateieindung jpg auch hier entfernen bei Strings to remove:
/admin/config/search/path/settings
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de
montviso schrieb Wenn ich das
am 11.01.2022 - 12:32 Uhr
Wenn ich das Feld Name pflegbar mache und meinetwegen "Das ist der Name vom Bild" reinschreibe, dann lautet der Alias "meinedomain/dasistdernamevombild"
Wenn ich das Feld Name nicht pflegbar mache, dann wird der Bildname eingetragen "das_ist_ein_bild.jpg" und der Alias lautet "meinedomain/dasisteinbildjpg".
Du musst also entweder den Namen pflegbar machen (und auf unsichtbar setzen, wenn er nicht erscheinen soll) und dort eintragen, was auch immer der Alias ohne jpg sein soll.
Oder wenn Du Dir das sparen sollst und der Alias aus dem Bildnamen automatisch generiert werden soll, dann müsstest Du mit einer Funktion den Namen automatisch befüllen und den Dateinamen ohne Endung rein schreiben.
Es ist genau dieses Problem. Ich lade ja, bzw. gedenke zu laden, "bulk". Die Dateinamen lauten natürlich x.jpg, y.jpg. Das soll ja auch so bleiben. Ansonsten mündet es immer in eine Umbenennerei, die man nicht will.
Vielleicht könntest Du die Dateieindung jpg auch hier entfernen bei Strings to remove:
/admin/config/search/path/settings
Und das wäre genau die Lösung. Aber sie funktioniert einfach nicht. Und da verstehe ich nicht, warum nicht. "jpg" steht in dieser Liste. Ich hab' auch schon verschiedene Varianten ausprobiert, sogar mit ausschliesslich "jpg" in der Liste, usw. Bei allen strings funktionierts, aber jpg will er einfach nicht killen, obwohl er' s müsste.
Die bekommst du nur weg, wenn
am 12.01.2022 - 15:22 Uhr
Die bekommst du nur weg, wenn du den Media-Name änderst. Bzw. beim Import der Medien darauf achtest, dass die Endung nicht mit übernommen wird. Das ist eine Frage der Konfiguration des für den Import verantwortlichen Medientyps. Wenn du Media verwendest natürlich. Wenn nicht und du lädst die Bilde über ein stinknormales Image-Field hoch wird als Media-Name immer der Dateiname des bildes verwendet und der enthält logischerweise auch die Dateiendung. Du musst also sicherstellen dass die Dateiendung beim Upload via z. B. Media-Library nicht mit in das Feld des Medai-Name übernommen wird.
https://drupal-tv.de
Drupal sehen und lernen
OK, das heisst wohl in den
am 13.01.2022 - 12:50 Uhr
OK, das heisst wohl in den pathauto-Einstellungen in den "Zu entfernende Zeichenketten" lassen sich keine Dateiendungen ausschliessen. Schade. Da hat man im pathauto eigentlich genau die elegante Funktion dafür, und dann funktioniert ausgerechnet diese nicht.
Wenn man irgendwelche Benutzer Bilder hochladen lassen will, darf natürlich kein manueller Schritt drin sein. Alleine bekommt man das ja noch verlässlich hin.
Ich schau mal, welchen Workaround ich mir dafür ausdenken werde.
Danke sehr euch, fürs Helfen.
Zitat: "Wenn man irgendwelche
am 13.01.2022 - 13:59 Uhr
"Wenn man irgendwelche Benutzer Bilder hochladen lassen will, darf natürlich kein manueller Schritt drin sein. "
Du könntest das Namensfeld auch für Benutzer zum Pflichtfeld machen. Und dann wird ein vernünftiger Alias draus gebildet.
Und man könnte das gleichzeitig zum ALT-/Titel Text machen.
Dazu müsste man nur das Template überschreiben.
Wäre doch den Besuchern zumutbar, oder?
LG Regina Oswald
-------------------------
Montviso - Internetdienstleistungen
http://www.montviso.de