Как сделать сборный заголовок в одном из Типов контента 2.X

 
Посетитель
small user social cms
МедальПочетный донор проектаАвторитет форума
Сообщений: 2257
На одном из проектов для одного Типа контента напрашивается функционал по созданию сборного заголовка!
То есть надо чтобы начало заголовка выбиралось из списка, например:
План на тему:
Презентация на тему:
.........
а далее пользователь мог бы вписывать свою тему.

Далее это начало участвует в сортировке Наборами.С наборами все понятно.

А вот как сделать сборные заголовки?
Стандартно в Поле Заголовок можно внести предустановленные значения, но нет возможности их выбирать.
Редактировалось: 1 раз (Последний: 10 июля 2018 в 08:14)
Лучшее место для вашего сайта!
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 3549
Создать поле типа список, в предустановленными значениями:
План на тему:
Презентация на тему:
.........
или
План
Презентация
.........
А в заголовке пользователь будет писать саму тему.
В шаблоне в месте вывода заголовка выводить сначала значение поля список, а потом сам заголовок через двоеточие или "[Значение списка (План)] на тему: [Заголовок]". В итоге в фильтре можно отбирать отдельно планы, презентации и т.п. и заголовок будет нужным форматом.
Реклама
cms
Посетитель
small user social cms
МедальПочетный донор проектаАвторитет форума
Сообщений: 2257
Loadырь:
В шаблоне в месте вывода заголовка выводить сначала значение поля список, а потом сам заголовок через двоеточие или "[Значение списка (План)] на тему: [Заголовок]"
Спасибо! Попытаюсь реализовать. Первая мысль была о хаке с внедрением списка с выбором прямо в заголовоке
Есть ли такое решение?

Loadырь:
В итоге в фильтре можно отбирать отдельно планы, презентации и т.п. и заголовок будет нужным форматом.
А вот это навряд ли, пользователи будут вносить вносить информацию в уже действующий Тип контента в который инфа парсится из других источников. Поэтому и выбор за сортировку Наборами.
Если есть иные решения, предлагайте.
Лучшее место для вашего сайта!
Посетитель
small user social cms
МедальПочетный донор проекта
Сообщений: 342
vikont:
предлагайте
Посетитель
small user social cms
МедальПочетный донор проектаАвторитет форума
Сообщений: 2257
Спасибо, но объясните, как мне это может помочь? Интересуют реальные Заголовки, а не выдача в SEO
Лучшее место для вашего сайта!
Посетитель
small user social cms
МедальПочетный донор проектаАвторитет форумаКубок зрительских симпатийПочетный донор проекта
Сообщений: 2553
vikont, Loadырь дело советует. В шаблоне с помощью $this->setPageTitle('заголовок'); можно задать любой заголовок.
Скопировать default_item.tpl.php, назвать его как тип_контента_item.tpl.php и мудрить с заголовком. В этом файле доступно содержимое всех полей.
Виджеты, поля и компоненты для instantcms 2 http://www.zau4man.ru/
Посетитель
small user social cms
МедальПочетный донор проектаАвторитет форума
Сообщений: 2257
Zau4man:
vikont, Loadырь дело советует.
Спасибо! Общий принцип мне понятен, дело за реализацией!
Пока столкнулся с тем, что в таблице уже насчитывающей более 100 к записей не могу создать новое поле! Вылетает по ошибке 500. Буду разбираться.
Второй проблемой (учитывая мои знания) будет само прописывание слияния двух полей в Заголовке.
Лучшее место для вашего сайта!
Посетитель
small user social cms
МедальАвторитет форума
Сообщений: 1902
vikont:
Интересуют реальные Заголовки, а не выдача в SEO
Причем здесь выдача? Этим полем можно сгенерировать любые тексты из любых других полей и вывести их в любом месте страницы. Другое дело, что для системного поля title нельзя выбрать другой тип - там строка зашита. Но можно его скрыть, а полем, которое привел в пример lakomet, вывести вместо заголовка всё, что угодно. Без правки файлов.
Посетитель
small user social cms
МедальКубок зрительских симпатий
Сообщений: 953
Zau4man:
vikont, Loadырь дело советует.
Вот например вывел этим полем в качестве заголовка другое поле.
Редактировалось: 1 раз (Последний: 10 июля 2018 в 15:32)
Все идет хорошо, только мимо...
Web-Studio «PAL»
БЕСПЛАТНАЯ РАСКРУТКА САЙТОВ
Посетитель
small user social cms
МедальПочетный донор проектаАвторитет форума
Сообщений: 2257
Олег с клещами:
Вот например вывел этим полем в качестве заголовка другое поле.
А можно пример самого кода для вывода заголовка?
Лучшее место для вашего сайта!
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 3549
В файле https://github.com/instantsoft/icms2/blob/master/templates/default/content/default_item.tpl.php#L2 в строке 2 это для просмотра записи, и в файле https://github.com/instantsoft/icms2/blob/master/templates/default/content/default_list.tpl.php#L21 в строке 21, это для просмотра списка, пропишите это
Код PHP:
  1. <?php
  2. $title_prefix = '';
  3.  
  4. if (!empty($fields['type']['is_in_item'])){
  5.  
  6. $title_prefix = $fields['type']['handler']->setItem($item)->getStringValue($item['type']);
  7.  
  8. unset($fields['type']);
  9.  
  10. }
  11.  
  12. $item['title'] = $title_prefix . ' по теме: ' . $item['title'];
  13. ?>
где слова type это системное название поля типа список, замените на свои.
Посетитель
small user social cms
МедальПочетный донор проектаАвторитет форума
Сообщений: 2257
Вот это подарок! Большущее спасибо!
А я уже начал смотреть https://github.com/instantsoft/icms2/blob/master/templates/default/content/default_list.tpl.php в строках 29-32 копаться!
Вовремя остановили мои тупиковые изыскания...
Шаблон https://github.com/instantsoft/icms2/blob/master/templates/default/content/default_list.tpl.php я переименую, а вот https://github.com/instantsoft/icms2/blob/master/templates/default/content/default.tpl.php остается неизменным и уязвим для обновлений! Я правильно думаю?
Редактировалось: 2 раз (Последний: 10 июля 2018 в 19:15)
Лучшее место для вашего сайта!
Посетитель
small user social cms
МедальАвторитет форумаКубок зрительских симпатий
Сообщений: 3549
Вам нужно не переименовать их, а сделать копию и копию назвать "типконтента_item.tpl.php" и "типконтента_list.tpl.php", соответственно. Эти файлы не будут изменяться при обновлениях.
Посетитель
small user social cms
МедальПочетный донор проектаАвторитет форума
Сообщений: 2257
Loadырь:
Вам нужно не переименовать их, а сделать копию и копию назвать "типконтента_item.tpl.php" и "типконтента_list.tpl.php", соответственно. Эти файлы не будут изменяться при обновлениях.
Не знал о таком нюансе... Когда создаешь файл шаблона "типконтента_item.tpl.php" где вместо "типконтента" пишется системное имя Типа контента, то в настройках этого типа контента исчезают настройки выбора шаблона для просмотра!!!
Но все работает!!!
Редактировалось: 1 раз (Последний: 10 июля 2018 в 22:37)
Лучшее место для вашего сайта!
Посетитель
small user social cms
МедальПочетный донор проектаАвторитет форума
Сообщений: 2257
Перед закрытием темы есть вопрос:
"Как будет выглядеть код, если понадобится не одна вставка списка с выбором в заголовок, а несколько?"
Лучшее место для вашего сайта!
В начало страницы
Предыдущая темаСледующая тема Перейти на форум: