Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Стол заказов » Вывод дополнительных полей из профиля в main.tpl

Вывод дополнительных полей из профиля в main.tpl


 Gopr    09.10.2013    Стол заказов    3204    5 комментариев

Был похожий вопрос, решения правда не нашлось.
Так же пробовал в index.php после
$tpl->load_template ( 'main.tpl' );
дописать
if ( $subaction == 'showfull' AND isset( $xfieldsdata['имя_поля'] ) ) $tpl->set( '{pole1}', $xfieldsdata['имя_поля'] );
else $tpl->set('{pole1}', '' );
и в шаблоне прописать {pole1}, но работает только с полями новостей. Менял showfull на userinfo - не сработало.

Нужно чтобы при добавлении [xfgiven_имя][xfvalue_имя][/xfgiven_имя] в main.tpl на главной сайта отображалось значение этого поля. Перепробовал много вариантов всегда отображается [xfgiven_имя][xfvalue_имя][/xfgiven_имя], а не значение этого поля...
Модули на подобии UserBox не предлагать нужна рабочая конструкция именно через стандартные теги движка.

5 комментариев

Gopr
Юзер

Gopr - 10 октября 2013 00:03 -

Разработал dj-avtosh
В index.php после:
if ($config['allow_skin_change'] == "yes") $tpl->set ( '{changeskin}', ChangeSkin ( ROOT_DIR . '/templates', $config['skin'] ) );
Вставляем:
    include ( ENGINE_DIR . '/inc/userfields.php' );

    $uArray = $db->super_query ( "SELECT xfields, user_id FROM " . PREFIX . "_users WHERE name = '" . $db->safesql ( $member_id['name'] ) . "'" );

    $xfieldsdata = ! empty ( $uArray['xfields'] ) ? xfieldsdataload( $uArray['xfields'] ) : array();

    foreach ( $xfields as $value )
    {

        $preg_safe_name = preg_quote( $value[0], "'" );

        if( $value[5] != 1 OR ( $is_logged AND $member_id['user_group'] == 1 ) OR ( $is_logged AND $member_id['user_id'] == $uArray['user_id'] ) )
        {

            

            if( empty( $xfieldsdata[$value[0]] ) )
            {

                $tpl->copy_template = preg_replace( "'\\[xfgiven_{$preg_safe_name}\\](.*?)\\[/xfgiven_{$preg_safe_name}\\]'is", "", $tpl->copy_template );
                $tpl->copy_template = str_replace( "[xfnotgiven_{$preg_safe_name}]", "", $tpl->copy_template );
                $tpl->copy_template = str_replace( "[/xfnotgiven_{$preg_safe_name}]", "", $tpl->copy_template );
            
            } else {

                $tpl->copy_template = preg_replace( "'\\[xfnotgiven_{$preg_safe_name}\\](.*?)\\[/xfnotgiven_{$preg_safe_name}\\]'is", "", $tpl->copy_template );
                $tpl->copy_template = str_replace( "[xfgiven_{$preg_safe_name}]", "", $tpl->copy_template );
                $tpl->copy_template = str_replace( "[/xfgiven_{$preg_safe_name}]", "", $tpl->copy_template );

            }

            $tpl->copy_template = preg_replace( "'\\[xfvalue_{$preg_safe_name}\\]'i", stripslashes( $xfieldsdata[$value[0]] ), $tpl->copy_template );
        
        } else {

            $tpl->copy_template = preg_replace( "'\\[xfgiven_{$preg_safe_name}\\](.*?)\\[/xfgiven_{$preg_safe_name}\\]'is", "", $tpl->copy_template );
            $tpl->copy_template = preg_replace( "'\\[xfvalue_{$preg_safe_name}\\]'i", "", $tpl->copy_template );
            $tpl->copy_template = preg_replace( "'\\[xfnotgiven_{$preg_safe_name}\\](.*?)\\[/xfnotgiven_{$preg_safe_name}\\]'is", "", $tpl->copy_template );
        
        }

    }

Gopr
Юзер

Gopr - 25 января 2014 12:12 -

***Комментарий удален***

ПафНутиЙ
Админ

ПафНутиЙ - 10 октября 2013 14:41 -

Модули на подобии UserBox

А чем плох UserBox?

Каков вопрос - таков и ответ. Просто помните об этом.

Gopr
Юзер

Gopr - 11 октября 2013 09:38 -

Модули на подобии UserBox не предлагать нужна рабочая конструкция именно через стандартные теги движка.
Так нужно для подключения другого хака ;)

ARTYOM
Юзер

ARTYOM - 12 июня 2018 14:06 -

Этот модуль разьве не выводит конкретного пользователя ? Если банально список всех пользователей используя шаблон где код таблицы - одна строка - один пользователь.

Чтобы комментировать - войдите или зарегистрируйтесь на сайте
наверх