dwd

dwd

+366
Репутация
6735
Рейтинг
#1 Картинки в результатах поиска 7 октября 2020 в 10:48
jeeper, прошу простить и понять))
На коленке писал, в строке
  1. <?php html_image($item['photo'], 'normal', $item['title']); ?>
пропущен оператор echo потому и не выводится картинка. Вот так должно быть
  1. <?php if(!empty($item['image'])){ ?>
  2. <div class="field search_field_image">
  3. <?php echo html_image($item['photo'], 'normal', $item['title']); ?>
  4. </div>
  5. <?php } ?>
#2 Картинки в результатах поиска 6 октября 2020 в 23:51
Олег Васильевич я, зачем так усложнять?
1. вместо
  1. $core_model = new cmsModel;
  2. $photos = $core_model->yamlToArray($item['photo']);
лучше использовать статический метод
  1. cmsModel::yamlToArray($item['photo']);
2. Код из п.1 вообще не нужен, поскольку функция html_image() принимает как массив так и YAML

В итоге получается что не нужно ничего мудрить:
  1. <?php if(!empty($item['image'])){ ?>
  2. <div class="field search_field_image">
  3. <?php html_image($item['photo'], 'normal', $item['title']); ?>
  4. </div>
  5. <?php } ?>
#3 Ошибка в запросе БД 6 октября 2020 в 19:55
@VitaliyV, открываем таблицу widgets_bind_pages, переходим на вкладку "Структура", выделяем столбцы page_id, position, ordering и жмем кнопку "Индекс". Индекс создан, проблема решена.
Иллюстрация

после резервирования сайта и восстановление с Бэкапа выдало такую ошибку

Это не на ровном месте, а как следствие неверного экспорта или импорта таблиц БД. Далеко не факт, что данная ошибка будет единственной. Я бы не советовал вам доверять автоматическому созданию бэкапов. Лучше делать экспорт таблиц вручную. При экспорте установив галочку
IF NOT EXISTS (менее эффективно, т.к. индексы будут созданы во время создания таблицы)
вы оградите себя от подобных ошибок в дальнейшем.
#4 Ошибка в запросе БД 6 октября 2020 в 19:49
Tolya, немного не так))
Столбец в таблице присутствует, но для него отсутсвует индекс. Ошибочку вызывает строка запроса
  1. FORCE INDEX (page_id)
которая говорит что для более быстрого поиска необходимо использовать индекс page_id. Сам индекс должен выглядеть так:

Иллюстрация
#6 Поле Дата 19 августа 2020 в 17:16

Уже смотрел видео о вашем поле День рождения и не увидел, можно ли отображать не возраст, а именно дату рождения?
На видео отображен возраст.

Как-то странно вы смотрели. Чем отличаются данные поля от системного поля Дата?
Системное поле Дата обязывает вас указать год, а следовательно
— это не всегда нужно а иногда очень даже не нужно
— при фильтрации 01.03.2019 и 01.03.2020 это не одно и то же, найти все записи с 1 по 15 марта неважно какого года не выйдет. Следовательно для тех случаев когда важна именно дата(определенный день определенного месяца) данное поле не подходит.

Оба вышеуказанных поля вообще не знакомы с понятием "год". Вы указываете лишь месяц и число. В одном при помощи календаря, во втором из выпадающих списков. Ну и собственно:
— при заполнении поля выбираем только месяц и число
— при фильтрации по дате(01.03) или диапазону дат(01.03-15.03) будут найдены все записи с 1 по 15 марта неважно какого года;
#7 Поле Дата 19 августа 2020 в 16:30
Может это немного нескромно, но

#8 Ошибка при редактировании категорий контента 14 августа 2020 в 19:30
На основании изложенных вами фактов могу лишь подсказать направление поиска. Экшен редактирования контента создает объект формы, далее этот объект передается в хуки и еще далее в шаблон. Так вот до шаблона объект не долетает, в данной переменной вместо объекта к моменту ее попадания в шаблон содержится что-то другое. Очень часто подобные ошибки бывают когда в хук передается один набор переменных, а сам хук возвращает обратно другой. Это может быть как ошибка программиста, так и проблема совместимости версий. С каждым релизом набор и порядок переменных, передаваемых в хуки меняется и если сторонний компонент был написан под более раннюю версию системы, то возникновение подобных ошибок весьма вероятно. Проверьте наличие хуков content_cat_form, content_cat_edit_form, content_имя-тк_cat_form сторонних компонентов, попробуйте отключить данные хуки и посмотрите исчезнет ли проблема. Если таких хуков несколько отключая их по очереди вы найдете проблемный.
#9 [ЕСТЬ РЕШЕНИЕ] Некорректная установка Биллинг 5 августа 2020 в 10:26
Ответ очевиден — в процессе установки не созданы таблицы компонента. Как у вас это получилось я судить не берусь, но факт остается фактом. Решение проблемы кроется в файле install.sql, который вы найдете в корне установочного архива. Открываем этот файл и заменив cms_ своим префиксом таблиц(у вас префикс cms_) выполняем SQL-запросы из этого файла. Ну или просто нормально и по-человечески устанавливаем компонент через админку.
#10 Как перенести запись с одного типа контента в другой? 31 июля 2020 в 00:40
Пока сидел курил набросал на коленке — /users/files/download7683.html
Инструкция внутри. Все просто и примитивно. Красивых кнопочек нет. Кому мало сообщаю:
Редакция Prestige может быть изготовлена в качественно оборудованной мастерской из лучших материалов по вашему индивидуальному чертежу))
#11 Как перенести запись с одного типа контента в другой? 31 июля 2020 в 00:12
vikont, ignat, никаких проблем в реализации такого компонента нет, там все элементарно. И вопрос тут не в сверхзадаче, а в простом отсутствии интереса к ней. Почему? Потому что такая потребность возникает раз в пятилетку у одного из тысячи пользователей. И даже этот мизерный процент пользователей уменьшится еще в 10 раз если спросить каждого — "решу за 500р., устроит?". Сразу выяснится что тот контент который им надо перенести как бы и не особо важен, чтобы тратить на это деньги. Именно поэтому такого компонента до сих пор и нет. Никто из задающих подобные вопросы не хочет выступить стартером, все сидят и ждут что-нибудь готовенькое и бесплатненькое.

Ни у по существу вопроса — было б у меня больше времени я не поленился бы и написал такой скрипт. 90% необходимого функционала есть здесь — /users/files/download7135.html, остается лишь дописать выбор целевого типа контента и обработку записей в цикле. При желании можете использовать в том виде в котором это есть сейчас, просто открыв скрипт и вписав имя целевого типа контента вручную. Как это работает описать здесь — /forum/thread24850-2.html#294984
#12 [ЕСТЬ РЕШЕНИЕ] Как из свого контроллера, при отсутствии у него экшена принудительно запустить контроллер "Контент"? 29 июля 2020 в 19:07
Как-то так например

  1. public function routeAction($action_name) {
  2. if (!$this->isActionExists($action_name)){
  3. $this->redirect(куда нужно);
  4. }
  5. return $action_name;
  6. }
или так

  1. public function routeAction($action_name) {
  2.  
  3. if (!$this->isActionExists($action_name)){
  4. $core = cmsCore::getInstance();
  5. $core->uri_controller = 'content';
  6. $core->runController();
  7. return 'exit';
  8. }
  9.  
  10. return $action_name;
  11.  
  12. }
  13.  
  14. public function actionExit(){return;}
#13 Генерация Заголовка контента из значений свойств и полей 28 июля 2020 в 17:13
Так вроде Нифигаccе о-го-гошеньки все расписал уже. Заголовок это поле. И неважно где — в группах или в типах контента. Поэтому в группах все делается ровно так же как и в ТК. Разница лишь в том, что при составлении паттернов вы не сможете использовать такие переменные как {category} например, потому что категорий в группах нет. Но вам это и не потребуется по той же самой причине — нет категорий значит и нет повода использовать подобные переменные.
#14 [ЕСТЬ РЕШЕНИЕ] Ссылка на аватар 22 июля 2020 в 21:36
  1.  
  2. <img src="<?php echo html_avatar_image_src(cmsUser::getInstance()->avatar, 'micro'); ?>" alt="" class="img-profile">
  3.  
#15 Поле: заголовок 22 июля 2020 в 19:02
Открыть файл system/core/model.php, найти в нем

  1. public function getContentTableStruct(){
  2.  
  3. return array(
  4. 'id' => array('type' => 'primary'),
  5. 'title' => array('type' => 'varchar', 'size' => 100, 'fulltext' => true),
  6. 'content' => array('type' => 'text'),
  7. 'photo' => array('type' => 'text'),
  8. 'slug' => array('type' => 'varchar', 'index' => true, 'size' => 100),
  9. 'seo_keys' => array('type' => 'varchar', 'size' => 256),
и в строке

  1. 'title' => array('type' => 'varchar', 'size' => 100, 'fulltext' => true),
заменить цифру 100 на желаемое число символов. Все создаваемые типы контента будут иметь указанный вами размер поля title.
Для существующих типов контента просто открыть phpMyAdmin и изменить размер столбца title в таблицах типов контента(con_имя).
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.