A

Azami

+26
Репутация
12
Рейтинг
#1 Как поле контента сделать мультиязычным? 5 ноября 2019 в 08:08
Здравствуйте, версия 2.12.2 — подскажите, как опубликовать статью на нескольких языках?
В релизе указано, что поля могут быть мультиязычными и виджеты привязываться к языку, а как это сделать? ("Разрешить смену языка пользователями (подстановкой префикса в URL)" отмечено.), но никак не пойму как опубликовать статью на разных языках.

Заранее спасибо
#9 [ЕСТЬ РЕШЕНИЕ] Как определить переменную page_url массиве ленты RSS? 2 февраля 2019 в 09:49


Сделайте так

  1. $feed['items'] = $this->model->getMcItems($feed['ctype_name'], function ($item){
  2.  
  3. $item['page_url'] = '123456';
  4.  
  5.  
  6. return $item;
  7.  
  8. });
  9. dump($feed);
  10.  
и посмотрите в массиве будет присутствовать page_url или нет.

Loadырь

Отсутствует.
#10 [ЕСТЬ РЕШЕНИЕ] Как определить переменную page_url массиве ленты RSS? 2 февраля 2019 в 09:24
Вот все содержание файла.
  1. <?php
  2.  
  3. class onMycomponentRssFeedList extends cmsAction {
  4.  
  5. public function run($feed){
  6.  
  7.  
  8. $category = $author = array();
  9.  
  10.  
  11. $this->model->orderBy('date_pub', 'desc')->
  12. limit($feed['limit']);
  13.  
  14.  
  15.  
  16.  
  17. $feed['items'] = $this->model->getMcItems($feed['ctype_name'], function ($item, $model, $ctype_name){
  18.  
  19. $item['page_url'] = href_to_abs($ctype_name, $item['slug'].'.html');
  20. /*$item['comments_url'] = $item['page_url'].'#comments';*/
  21.  
  22.  
  23. return $item;
  24.  
  25. });
  26.  
  27. $feed = cmsEventsManager::hook('before_render_'.$feed['ctype_name'].'_feed_list', $feed);
  28.  
  29. return array($feed, $category, $author);
  30.  
  31. }
  32.  
  33. }
  34.  
#11 [ЕСТЬ РЕШЕНИЕ] Как определить переменную page_url массиве ленты RSS? 2 февраля 2019 в 09:23


Попробуйте для начала передать статику

  1. $item['page_url'] = '123456';
Потом можно попробовать переместить ваш хук выше системного, в "Админка — Компоненты — Управление событиями". Надеюсь ваш хук присутствует в этом списке.

Loadырь

Спасибо, за совет.
Событие указал в манифесте и обновил список событий.
на
  1. $item['page_url'] = '123456';
— предупреждение осталось
#13 [ЕСТЬ РЕШЕНИЕ] Как определить переменную page_url массиве ленты RSS? 1 февраля 2019 в 12:13


Для примера github.com/instantsoft/icms2/blob/master/system/controllers/content/hooks/rss_feed_list.php#L35

Loadырь

В моем случае я сделал так:
  1. $feed['items'] = $this->model->getMycomponentItems($feed['ctype_name'], function ($item, $model, $ctype_name){
  2.  
  3. $item['page_url'] = href_to_abs($ctype_name, 'item', $id);
  4.  
  5. return $item;
  6.  
  7. });
Пробовал и так
  1. $item['page_url'] = href_to_abs($ctype_name, $item['id']);
Но увы, получаю предупреждение, может в других файлах что-то нужно указать?
#1 [ЕСТЬ РЕШЕНИЕ] Как определить переменную page_url массиве ленты RSS? 31 января 2019 в 23:32
Здравствуйте, имею свой компонент согласно документации создал файл rss_feed_list.php
Лента RSS выводит title, description, date_pub нормально.
Но не могу победить ошибку вывода ссылки на элемент:
  1. <link><br /><b>Notice</b>: Undefined index: page_url in <b>.../templates/default/controllers/rss/feed.tpl.php</b> on line <b>42</b><br /></link>
  2. <guid><br /><b>Notice</b>: Undefined index: page_url in <b>.../templates/default/controllers/rss/feed.tpl.php</b> on line <b>43</b></guid>
Немного не понимаю как и где определить переменную page_url
Заранее благодарю.
#1 Вызов ссылки ajax-modal через JS 31 января 2019 в 10:22
Здравствуйте, на сайте реализовано всплывающее окно фото при нажатии на превью фото.
  1. <a class="ajax-modal" href="<?php echo html_image_src($photo['image'], 'big', false); ?>"><? html_image($photo['image'], "small") ?></a>
Использую небольшой скрипт для скрытия ссылок (для уменьшения краулингового бюджета) в виде
  1. <span class="no-link ajax-modal" data-link="<?php echo html_image_src($photo['image'], 'big', false); ?>"><? html_image($photo['image'], "small") ?></span>
  2. <script>$('.no-link').click(function(){window.location.href = $(this).data('link'); return false; });</script>
Но модальное окно не появляется, а фото открывается в текущем окне.
Понимаю, что надо подправить js но ума не хватает.
Заранее буду благодарен ответу
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.