https://my-site.ru/catalog/
https://my-site.ru/en/catalog/
RewriteCond %{QUERY_STRING} ^(brand)=([^&]+)$
RewriteRule ^catalog/.+/$ /$0%1/%2/? [R=301,L]
https://my-site.ru/catalog/bdsm-kostumi/maski-s-klapom/?brand=microsoft
https://my-site.ru/catalog/bdsm-kostumi/maski-s-klapom/brand/microsoft/
https://my-site.ru/en/catalog/bdsm-kostumi/maski-s-klapom/?brand=microsoft
https://my-site.ru/en/catalog/bdsm-kostumi/maski-s-klapom/brand/microsoft/
нужно ставить правило редиректа в начало файла .htaccess чтобы редирект был выше остальных правил.
RewriteCond %{QUERY_STRING} ^(brand)=([^&]+)$
RewriteRule ^catalog/.+/$ /$0%1/%2/? [R=301,L]
RewriteEngine on
RewriteCond %{QUERY_STRING} (^|&)brand=([-0-9a-z]+)
RewriteRule (.*[^/])/*$ /$1/brand/%2/? [R=301]
https://my-site.ru/bitrix/urlrewrite.php/brand/microsoft/
Надо взять железную линейку, и надавать по рукам тому, кто писал этот код.
Исправлять надо всегда причину, а не следствие.
public function clearFromHtmlSpecificChars(string $text): string
{
$search = ['<', '>', '"', ''', '&', 'quot;', 'amp;'];
$replace = ['', '', '', '', '', '', ''];
return str_replace($search, $replace, $text);
}
Ну вы меняете одно, а смотрите другое
Сделайте $this->title = $seo['ELEMENT_META_TITLE'];
Вероятно задумывалось сделать так
"Ну или там амперсанд тоже сущность хтмл" - как раз 4 лишних байта.
Сначала напихиваем кучу htmlscpacialchars, причем на входе,
по уму вообще ничего удалять не надо
< > " ' &
на фронте смотрятся не разу не убого, а заботливо оставленные бекендером двойные кавычки в строках, не разу не разматывают вёрстку к хренам. Очень по уму!!!
в кривизне исходной PDF, возможно
**** Error reading a content stream. The page may be incomplete.
Output may be incorrect.
**** Error: Form stream has unbalanced q/Q operators (too many q's)
Output may be incorrect.
**** Error reading a content stream. The page may be incomplete.
Output may be incorrect.
**** Error: File did not complete the page properly and may be damaged.
Output may be incorrect.
**** This file had errors that were repaired or ignored.
**** The file was produced by:
**** >>>> iLovePDF <<<<
**** Please notify the author of the software that produced this
**** file that it does not conform to Adobe's published PDF
**** specification.
**** The rendered output from this file may be incorrect.
gs -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=output.pdf no_marks.pdf pdfmarks
Но не говорит о том, как именно это делается
Предположим, вам надо добавить небольшое изменение - пропускать ссылки, которые находятся внутри блоков pre и code
Так-же заметил ещё заметил что данный редирект не будет работать для корневых страниц каталога:
https://my-site.ru/catalog/?brand=microsoft
Поправил его ещё и под этот кейс: