Перейти к содержанию
Форум поддержки пользователей VamShop

Новая версия VaM Shop 1.35


support

Рекомендуемые сообщения

  • Ответов 100
  • Created
  • Последний ответ

Top Posters In This Topic

  • support

    43

  • terrom

    28

  • ABerezin

    11

  • a69

    5

terrom

Переносы сейчас постараюсь исправить, напишу, как сделать.

А вот краткое описание у тебя скочет на главной странице, видимо, из-за слишком большой ширины картинок, оно просто не влазит слева от картинки.

ABerezin

Андрей, попробовал эту функцию, пишет ошибку - Call to undefined function mb_stripos()

Сейчас поищу другой вариант, вроде бы только вчера на forum.dklab.ru видел набор функций для работы с utf-8.

Ссылка на сообщение
Поделиться на другие сайты

Пока временно можно их убрать.

Открой /inc/vam_break_string.inc.php и замени:


  function vam_break_string($string, $len, $break_char = '-') {
    $l = 0;
    $output = '';
    for ($i=0, $n=strlen($string); $i<$n; $i++) {
      $char = substr($string, $i, 1);
      if ($char != ' ') {
        $l++;
      } else {
        $l = 0;
      }
      if ($l > $len) {
        $l = 1;
        $output .= $break_char;
      }
      $output .= $char;
    }

    return $output;
  }
[/code] на:
[code]
  function vam_break_string($string, $len, $break_char = '-') {
    return $string;
  }

Ссылка на сообщение
Поделиться на другие сайты

Тоже не работает, пишет нет такой функции.

terrom

Да что-то перерыл всякие статьи, форумы, почему-то ни один найденный вариант правильно не работает.

Пока не нашёл оабочий вариант.

Ссылка на сообщение
Поделиться на другие сайты

В текущей версии да, переносы неправильно немного расставляются.

К следующей версии исправлю, как найду решение, напишу, как исправить.

Временное решение я чуть выше написал, используй пока его.

Ссылка на сообщение
Поделиться на другие сайты

Понятно, значит у тебя php без Multibyte String Functions.

Тогда самое простое: в vam_break_string перед разбивкой перекодировать из utf8 в cp1251, после - обратно :)

Ссылка на сообщение
Поделиться на другие сайты

Да, видимо у меня без, может тогда и у других быть без.

Я наверное не буду использовать mb* функции пока.

Что-то вариант с двойной перекодировкой не внушает как-то.

Может вообще убрать vam_break_string, она то особо и не нужна вроде бы.

Хотя всё-таки попробую ещё поискать, может есть какой-то вариант.

Ссылка на сообщение
Поделиться на другие сайты

Да, у дригих тоже так будет, ты ж пока мой совет используй, ничего страшного не будет, просто в отзыве не будут br вставиться и всё.

Ссылка на сообщение
Поделиться на другие сайты

Да, видимо у меня без, может тогда и у других быть без.

Наверняка.

Что-то вариант с двойной перекодировкой не внушает как-то.

Не понял.

Ссылка на сообщение
Поделиться на другие сайты

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

Ссылка на сообщение
Поделиться на другие сайты

Наверняка.

Не понял.

Просто как-то некрасиво, две перекодировки.

Я попробую поискать другой вариант, более правильный чтоли.

Ссылка на сообщение
Поделиться на другие сайты

Вот в этой теме нашёл немного функций - http://forum.dklab.ru/php/advises/Php-funktsiiDlyaObrabotkiTekstaVKodirovkeUtf-8.html

Сейчас  проверим.

Ссылка на сообщение
Поделиться на другие сайты

Ну тогда:

  function vam_break_string($string, $len, $break_char = '-') {
    $l = 0;
    $output = '';
    $string = iconv('utf-8', 'cp1251', $string);
    for ($i=0, $n=strlen($string); $i<$n; $i++) {
      $char = substr($string, $i, 1);
      if ($char != ' ') {
        $l++;
      } else {
        $l = 0;
      }
      if ($l > $len) {
        $l = 1;
        $output .= $break_char;
      }
      $output .= $char;
    }
    $output = iconv('cp1251', 'utf-8', $output);
    return $output;
  }[/code]

Если нет обработки мультибайтовых строк, то самое простое использовать однобайтовую, а для этого надо перекодировать. Другое дело, что сразу возникнут проблемы с языками не совместимыми с cp1251.

Ссылка на сообщение
Поделиться на другие сайты

А вот краткое описание у тебя скочет на главной странице, видимо, из-за слишком большой ширины картинок, оно просто не влазит слева от картинки.

А как это можно исправить?

Ссылка на сообщение
Поделиться на другие сайты

ABerezin

Спасибо, попробую.

А если на хостинге iconv нет?

terrom

В Админке - Настройки - Основные - Картинки

Ширину маленькой картинки поставь чуть меньше, например поставь 120 на 80

Затем запусти Админка - Модули - XT-Модули - Пакетная обработка картинок, он тебе нарежет картинки по новому формату.

Ссылка на сообщение
Поделиться на другие сайты

Ну описания просто физически не влазят, места для них нет.

Переключись на шаблон vamshop_table в Админке - Настройки - Основные - Мой магазин - Шаблон.

На табличном шаблоне, по идее, влезет.

Ссылка на сообщение
Поделиться на другие сайты

×
×
  • Создать...