Ошибка при просмотре 404

#1 19 октября 2026 в 16:38

Здравствуйте. 

Уже в который раз пользователи добавляют материал (вакансии), но я не никак не могу открыть этот материал. Выдаёт 404. 

На адресной строке у всех одинаковая ссылка: id номер-%7Btitle%7D.html

Изображение

Приходится заходить в базу и в ручную менять.

Незнаю в компоненте ли проблема или нет, но стоит компонент Вакансии и резюме от My-InstantCMS.Ru .

Заголовой материала на азербайджанской латинице.

Изображение

Это не в первый раз уже. Почти больше половины контента в таком состоянии. 

Версия instantcms предпоследняя

#2 19 октября 2026 в 16:43
Здравствуйте.  Уже в который раз пользователи добавляют материал (вакансии), но я не никак не могу открыть этот материал. Выдаёт 404.
F_a_R_i_D

это связано с заголовком, используется стандартное поле?

#3 19 октября 2026 в 18:56

 TOPg,  Да, стандартное

#4 20 октября 2026 в 10:21
 TOPg,  Да, стандартное
F_a_R_i_D

Обычно такое происходит, когда при добавлении оно не было заполнено, нужно включить обязательное заполнение в настройках, а уже сломанные отредактировать в ручную, при этом на время включить функцию изменять урл при редактировании

#5 20 октября 2026 в 13:56

Поле должно быть заполнено стоит как обязательное поле, т.е. всё нормально и заголовок как вы видите по скринам заполнен.

Не всегда такая ошибка, но и не редко.
 

#6 20 октября 2026 в 15:43
Поле должно быть заполнено стоит как обязательное поле, т.е. всё нормально и заголовок как вы видите по скринам заполнен. Не всегда такая ошибка, но и не редко. 
F_a_R_i_D

это всё равно связано с заголовком из-за этого не создаётся slug и тут я вспомнил… у вас же вроде бы установлен парсер парвиза на этот тип контента?

#7 20 октября 2026 в 16:25

 TOPg, Нет парсера от Парвиза нет, но в самом компоненте Вакансии есть парсер.

#8 20 октября 2026 в 16:30
 TOPg, Нет парсера от Парвиза нет, но в самом компоненте Вакансии есть парсер.
F_a_R_i_D

ну вот такое бывает, когда ему не удалось заполнить поле заголовок, кнопка обязательно для заполнения на него не влияет ибо он записывает сразу в базу

#9 20 октября 2026 в 21:18

 TOPg, В чëм может быть ошибка? Где копать?

#10 21 октября 2026 в 09:39
 TOPg, В чëм может быть ошибка? Где копать?
F_a_R_i_D

это уже к разработчику

#11 22 октября 2026 в 10:01

 TOPg, А разработчик пропал

#12 1 ноября 2026 в 16:52

Up

#13 1 ноября 2026 в 20:57

Чисто как вариант костыля. Что если изменить в настройках — Шаблон генерации URL, убрать {title}, оставив только id.

#14 2 ноября 2026 в 00:01

азербайджанской латинице

F_a_R_i_D

Может тут что то не правильно в локализации?
github.com/instantsoft/icms2/blob/a4e281b5d9920458a951149f93edf55dcbf49373/system/languages/ru/functions.php#L50

#15 3 ноября 2026 в 08:53

 Jestik, Я тоже об этом думал, т.к. у меня 2 локализации, 1 менял под себя.

RU

  1. <?php
  2.  
  3. /**
  4.  * Returns months names for current language
  5.  * @return array
  6.  */
  7. function lang_months() {
  8. return [
  9. 'января', 'февраля', 'марта', 'апреля', 'мая', 'июня',
  10. 'июля', 'августа', 'сентября', 'октября', 'ноября', 'декабря'
  11. ];
  12. }
  13.  
  14. /**
  15.  * Returns days names for current language
  16.  * @return array
  17.  */
  18. function lang_days() {
  19. return [
  20. 'вс', 'пн', 'вт', 'ср', 'чт', 'пт', 'сб'
  21. ];
  22. }
  23.  
  24. /**
  25.  * Returns date for current language
  26.  * @param string $date_string
  27.  * @return string
  28.  */
  29. function lang_date($date_string) {
  30. $eng_months = [
  31. 'January', 'February', 'March', 'April', 'May', 'June',
  32. 'July', 'August', 'September', 'October', 'November', 'December'
  33. ];
  34. return str_replace($eng_months, lang_months(), $date_string);
  35. }
  36.  
  37. /**
  38.  * Converts string from current language to SLUG
  39.  *
  40.  * @param string $string Input string
  41.  * @param boolean $disallow_numeric Disallow numeric SLUG
  42.  * @return string
  43.  */
  44. function lang_slug(string $string, $disallow_numeric = true) {
  45. $string = mb_strtolower(strip_tags(trim($string)));
  46.  
  47. $string = strtr($string, [
  48. // Азербайджанский алфавит
  49. 'ə' => 'e', '&ccedil;' => 'ch', 'ğ' => 'gh', 'ı' => 'i', '&ouml;' => 'o',
  50. 'ş' => 'sh', '&uuml;' => 'u',
  51.  
  52. // Русский алфавит
  53. 'а' => 'a', 'б' => 'b', 'в' => 'v', 'г' => 'g', 'д' => 'd', 'е' => 'e',
  54. 'ё' => 'yo', 'ж' => 'zh', 'з' => 'z', 'и' => 'i', 'й' => 'i',
  55. 'к' => 'k', 'л' => 'l', 'м' => 'm', 'н' => 'n', 'о' => 'o', 'п' => 'p',
  56. 'р' => 'r', 'с' => 's', 'т' => 't', 'у' => 'u', 'ф' => 'f', 'х' => 'h',
  57. 'ц' => 'c', 'ч' => 'ch', 'ш' => 'sh', 'щ' => 'sch', 'ъ' => '',
  58. 'ы' => 'y', 'ь' => '', 'э' => 'e', 'ю' => 'yu', 'я' => 'ja'
  59. ]);
  60.  
  61. $slug = preg_replace('/[^a-z0-9\-\/]+/u', '-', $string);
  62. $slug = preg_replace('/-+/', '-', $slug);
  63. $slug = preg_replace('/\/+/', '/', $slug);
  64. $slug = trim($slug, '-/');
  65.  
  66. if (!$slug) {
  67. $slug = 'untitled';
  68. }
  69.  
  70. if ($disallow_numeric && ctype_digit($slug)) {
  71. $slug .= strtolower(date('F'));
  72. }
  73.  
  74. return $slug;
  75. }
  76.  
  77. /**
  78.  * Set locale information
  79.  * @return mixed
  80.  */
  81. function lang_setlocale() {
  82. $locale = 'ru_RU.UTF-8';
  83.  
  84. setlocale(LC_COLLATE, $locale);
  85. setlocale(LC_CTYPE, $locale);
  86. setlocale(LC_MONETARY, $locale);
  87. setlocale(LC_TIME, $locale);
  88. if (defined('LC_MESSAGES')) {
  89. setlocale(LC_MESSAGES, $locale);
  90. }
  91. setlocale(LC_NUMERIC, 'POSIX');
  92.  
  93. return true;
  94. }
  95.  
  96. /**
  97.  * Locale name
  98.  */
  99. define('LC_LANGUAGE_TERRITORY', 'ru_RU');
  100.  
  101. /**
  102.  * Locale validate regexp
  103.  */
  104. define('LC_LANGUAGE_VALIDATE_REGEXP', "/^([a-zа-яёə&ouml;&uuml;ı&ccedil;şğ0-9 \.\?\@\,\-]*)$/ui");
  105.  
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.

Похожие темы

Биллинг и просмотры

Биллинг Создана 4 года назад 1 сообщение

Похожее в блогах

🍪Мы используем файлы cookie для работы сайта. Читать подробнее.