Вывод полей в произвольных местах

#106 27 ноября 2019 в 16:09

Левом или правом? Внизу левого или вверху правого?

Олег Васильевич я
В любом месте.

Что на её полях растёт?

Олег Васильевич я
А вот это надо спросить у Вас)))) То, что там растет, Вас нормально так бодрит)) Аккуратно, много не курите))
#107 27 ноября 2019 в 22:18
так что? нет решения чтобы вывести к примеру любое поле в любом месте станицы?
#108 27 ноября 2019 в 22:24
Capitan, есть, читайте внимательнее. Решений дофига.
#109 27 ноября 2019 в 23:28

Capitan, есть, читайте внимательнее. Решений дофига.

чебурек дохлэй мыш
Покажите если не сложно где читать и как именно вывести
#110 27 ноября 2019 в 23:51
/forum/thread19747-7.html#319488
/forum/thread19747-7.html#319489 — мне этот вариант больше нравится))
#111 28 ноября 2019 в 00:17


Просто хотел поле Цена (price) вывести в боковой колонке smile По примеру юлы.

Capitan
Создайте собственный виджет скопировав уже имеющийся стандартный или создайте шаблон если виджет это позволяет. Ну и вставляйте там те поля которые нужны таким образом <?php echo $item['price']; ?>


так что? нет решения чтобы вывести к примеру любое поле в любом месте станицы?

Capitan
а на этот вопрос вы сами уже дали ответ: <?php echo $item['price']; ?> но в любом месте оно не может работать, так как системе нужно указать откуда брать(из какого типа контента) $item['price']
#112 28 ноября 2019 в 00:33


Создайте собственный виджет скопировав уже имеющийся стандартный или создайте шаблон если виджет это позволяет. Ну и вставляйте там те поля которые нужны таким образом <?php echo $item['price']; ?>

Killer's dream
Как передать виджету тип контента и айди текущей записи кроме как через глобальные переменные?
#113 28 ноября 2019 в 00:39

Как передать виджету тип контента и айди текущей записи кроме как через глобальные переменные?

islyaeFF
Точно также как это сделано в виджет списка контента например.
#114 28 ноября 2019 в 00:42


Как передать виджету тип контента и айди текущей записи кроме как через глобальные переменные?

islyaeFF
Точно также как это сделано в виджет списка контента например.

Killer's dream

Там в настройках вы сами указываете какой тип контента. А тут виджет как будет угадывать? Ладно, тип контента укажете, а айди текущей записи?
#115 28 ноября 2019 в 00:48

а айди текущей записи?

islyaeFF
шапка контента в дополнениях лижет во такой виджет, если уш очень Capitanу надо, то можно подглядеть и здесь как получают данные записи.
#116 28 ноября 2019 в 16:01

подглядеть и здесь как получают данные записи

Killer's dream
Из кеша. Следовательно создаем шаблон для html блока и внутри вписываем вот эти 2 строки:
  1. <?php
  2. $item = cmsModel::getCachedResult('current_ctype_item');
  3. echo $item['price'];
#117 28 ноября 2019 в 19:34

Код PHP:

<?php
$item = cmsModel::getCachedResult('current_ctype_item');
echo $item['price'];

islyaeFF
Кусочка не хватает в конце } ?> Но все равно не помогает, ничего не выводит
#118 28 ноября 2019 в 19:55

Кусочка не хватает в конце } ?>

Capitan
Фигурная скобка точно лишняя, а закрывающий php тут необязателен, т.к. разделять тут не от чего. Но для вашего успокоения можете поставить
#119 29 ноября 2019 в 00:28

3. Изобрести виджет, который будет выводить поля текущей записи в сайдбаре.

чебурек дохлэй мыш
А еще лучше сливать все данные, какие есть на странице в большой-большой массив $page, а потом к нему обращаться из любого места на этой странице
Массив, конечно, придется глобалом назначить. Чтобы со всех ветвей виден был.
Это поднимет интерес хакеров к Instantcms.
#120 7 декабря 2019 в 13:36
Уважаемые знатоки, вопрос!
Какой вариант перемещения полей в профиле пользователя будет лучше со стороны производительности?
1. Средствами PHP
Вывод изображения и текстового поля со скрытием основного вывода
  1.  
  2. <?php if (!empty($fields['поле']) && $fields['поле']['is_in_item']){ ?>
  3. <?php echo $profile['поле']; ?>
  4. <?php } ?>
  5. <?php if (!empty($fields['поле изображения']) && $fields['поле изображения']['is_in_item']){ ?>
  6. <?php echo html_image($profile['поле изображения'], 'пресет', true); ?>
  7. <?php } ?>
  8.  
2. Средствами JS
  1.  
  2. <script type="text/javascript">
  3. $( init );
  4. function init() {
  5. // Перемещаем всё дерево и объекты из #id в .class
  6. $('.class').append( $('#id') );
  7. }
  8. </script>
  9.  
Оба варианта не плохо работают. Но всё же какой из них предпочтительнее!?
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.