Usuwanie ostatnich znaków w ciągu XSLT
W moim systemie CMS można utworzyć nowy artykuł i wybrać obraz, który ma być pokazany w tym artykule. Po wybraniu obrazu zostanie automatycznie utworzona miniatura obrazu.
Jeśli przesłany obraz jest wywoływanyimage.jpg, następnie odpowiednia miniatura zostanie automatycznie nazwanaimage_thumbnail.jpg.
Chciałbym teraz użyć miniatury obrazu, wszędzie na stronie internetowej, w której wymieniony jest artykuł, z wyjątkiem samego artykułu (w którym powinien być pokazany oryginalny duży obraz).
Ale jak mogę to zrobić?
Wyobrażam sobie, że mógłbym uzyskać oryginalną nazwę obrazu, a następnie podzielić go przed przyrostkiem (.jpg
, .png
, .jpeg
itd.) i hardcode_thumbnail
po nazwie byłoby to wystarczające.
Innymi słowy, chcę pobrać pełną nazwę pliku i wyciąć ją na dwie części, dzięki czemu mogę wstawić łańcuch_thumbnail
między dwiema częściami.
Może to zadziała, ale jeśli zadzwoni obrazimage.2horses.jpg (plik z więcej niż jedną kropką w nazwie pliku) jest przesyłany? Naiwne cięcie przed „.” nie działałbym tutaj.
Czy istnieje sposób na obejście tego problemu? Być może wycinając nazwę pliku przed ostatnimi 4 (.jpg
, .png
) lub 5 (.jpeg
) postacie?