Вывод поля Ссылка из профайла автора в шаблоне контента

ЕСТЬ РЕШЕНИЕ InstantCMS 2.X

Вывод поля из профайла в шаблоне

#1 16 марта 2024 в 09:16

Всем привет, что-то совсем я заплутал, знаний php не хватает, все методом тыка в основном.

Делаю в шаблоне контента что-то подобное Карточки автора, вывожу данные из профайла в шаблон. Все получается, кроме вывода поля Ссылка в виде именно ссылки, как она должна быть. Речь о ссылке с заголовком вида website.com|Title
Изначально данные автора вывожу так:
$autor=cmsCore::getModel('users')->getUser($item['user_id']);?>

****

и поля где надо
<?php  echo html($autor['field_name']); ?>

понятное дело, что при этом поле ссылка выводится как оно заполнено, те «website.com|Title»
уже перепробовал кучу вариантов, но пка либо так, либо ошибки.


Подскажите, плиз, как вывести это поле в виде кликабельной ссылки, как и в профайле?

#2 16 марта 2024 в 12:22

Как-то так, но это не точно:

  1. <?php
  2. $field_url = new fieldUrl('field_name_with_url');
  3. $author_link = $field_url->setItem($autor)->parse($autor['field_name_with_url']);
  4. ?>
  5. и где надо
  6. <?php echo $author_link; ?>
 
#3 16 марта 2024 в 12:47

Вставил код сразу ниже своего Sautor....

строа 40 в моем шаблоне

получил Fatal error: Uncaught ArgumentCountError: Too few arguments to function cmsFormField::__construct(), 0 passed in W:......\content\default_list_test.tpl.php on line 40 and at least 1 expected in W:\......\system\core\formfield.php:233

и еще куча последующих ошибок

Пока что-то не получилось

#4 16 марта 2024 в 12:53

Подредактировал

#5 16 марта 2024 в 13:02

Поклон в пол и спасибо огромное! Заработало как надо, блин! 👏

#6 16 апреля 2024 в 20:19

Проблемы те же со знаниями PHP, подскажите как вывести ID профиля на страницах?

#7 17 апреля 2024 в 10:06

 Grey4ik, id просматриваемого профиля или id пользователя, который смотрит сайт?

Вывести где?

ID текущего пользователя можно вывести так

  1. <?php echo cmsUser::get('id'); ?>
#8 17 апреля 2024 в 14:52

 Grey4ik, id просматриваемого профиля или id пользователя, который смотрит сайт?

Вывести где?

ID текущего пользователя можно вывести так

  1. <?php echo cmsUser::get('id'); ?>
Zau4man

Нужно вывести ID пользователя который смотрит страницу (те кто не зарегистрирован, соответственно будет информация что нужно войти или зарегистрироваться), выводить нужно на страницах: «Контент > Страницы > Создать запись», либо если проще может через виджет HTML

#9 17 апреля 2024 в 16:45

через виджет HTML

Grey4ik

так сделайте через виджет. У виджета можно настроить видимость для групп пользователей. Для гостей разместите виджет со ссылками на регистрацию, для пользователей  — со ссылками на добавление.

Если планируете в шаблоне, то

  1. <?php $user_id = cmsUser::get('id'); ?>

должно хватить.

У гостя $user_id будет равен нулю.

#10 18 апреля 2024 в 20:02

Через виджет не работает: 

<?php echo cmsUser::get('id'); ?>

ни этот код:

<?php $user_id = cmsUser::get('id'); ?>

Либо я что то не так с виджетом настраиваю...

#11 18 апреля 2024 в 21:34

Либо я что то не так с виджетом настраиваю...

Grey4ik

скорее всего.

  1. <?php echo cmsUser::get('id'); ?>

будет работать в любом файле системы...

Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.