14ответ(ов) в теме
SAZONISCHE
не в сети 2 года
На сайте с 20.07.2017
Участник
Тем 17
Сообщения 211
1
22:19
Версия WP-Recall: 16.15.5

Начал верстать кастомный список пользователей, есть ли какой нить вариант получить список кастомных полей пользователя которые разрешены для показа? (делаю все через гайд с добавлением своего файла в templates)

0
Preci
не в сети 4 дня
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1646
2
23:17

Что значит разрешены для показа? В опциях поля стоит "отображать для других пользователей - Да"?

0
SAZONISCHE
не в сети 2 года
На сайте с 20.07.2017
Участник
Тем 17
Сообщения 211
3
23:22

Preci сказал(а)
Что значит разрешены для показа? В опциях поля стоит "отображать для других пользователей - Да"?

Ага

0
Preci
не в сети 4 дня
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1646
4
23:25

$profileFields = rcl_get_profile_fields(array('user_id'=>1));

$show_field = array();

foreach($profileFields as $field) {
	if($field['req'] == 1) {
		$show_field[] = $field;
	}
}
var_dump($show_field);

0
Preci
не в сети 4 дня
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1646
5
23:33

Или так:

$profileFields = rcl_get_profile_fields(array('user_id'=>1));

$show_field_slug = array();

foreach($profileFields as $field) {
	if($field['req'] == 1) {
		$show_field_slug[] = $field['slug'];
	}
}

Тогда в $show_field_slug будет массив с meta_key:

array('custom_filed1', 'custom_filed2', 'custom_filed3');

И дальше уже получайте их значение через get_user_meta с помощью цикла, или же прямым запросом к базе сразу все значенияполей

0
SAZONISCHE
не в сети 2 года
На сайте с 20.07.2017
Участник
Тем 17
Сообщения 211
6
23:38

Preci сказал(а)
Или так:

$profileFields = rcl_get_profile_fields(array('user_id'=>1));

$show_field_slug = array();

foreach($profileFields as $field) {
	if($field['req'] == 1) {
		$show_field_slug[] = $field['slug'];
	}
}

Тогда в $show_field_slug будет массив с meta_key:

array('custom_filed1', 'custom_filed2', 'custom_filed3');

И дальше уже получайте их значение через get_user_meta с помощью цикла, или же прямым запросом к базе сразу все значенияполей

как я понимаю так?

<?php global $rcl_user,$rcl_users_set,$rcl_blocks; ?>
<script type="text/javascript">
    (function($) {
        $(document).ready(function() {
            var num = '<?php echo $rcl_user->ID; ?>';
            $('#info-' + num).hide();
            $('#header-' + num).click(function()  {
                $('#info-'  + num).slideToggle();
            });
        });
    })(jQuery);
</script>
<div id="header-<?php echo $rcl_user->ID; ?>" class="user-single" data-user-id="<?php echo $rcl_user->ID; ?>">
    <div class="thumb-user">
        <a title="<?php rcl_user_name(); ?>" href="<?php rcl_user_url(); ?>">
            <?php rcl_user_avatar(70); ?>
        </a>
        <?php rcl_user_rayting(); ?>
    </div>
    <div class="userlist_top">
        <?php rcl_user_action(2); ?>
    </div>
    
    <div class="user-content-rcl">
        <a class="user-content-rcl-name" href="<?php rcl_user_url(); ?>"><?php rcl_user_name(); ?></a>
        <p class="user-content-rcl-description"><?php echo get_the_author_meta('description',$rcl_user->ID); ?></p>
    </div>
</div>

<div id="info-<?php echo $rcl_user->ID; ?>" class="user-single-info">
    <?php 


        $profileFields = rcl_get_profile_fields(array('user_id'=>$rcl_user->ID));

        $show_field_slug = array();

        foreach($profileFields as $field) {
            if($field['req'] == 1) {
                $show_field_slug[] = $field['user_url'];
            }
        }

        var_dump($show_field_slug);
    ?>
</div>

0
Preci
не в сети 4 дня
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1646
7
23:44

Нет:

foreach($profileFields as $field) {
            if($field['req'] == 1) {
                $show_field_slug[] = $field['slug']; // тут вы получите все мета-кеи полей, которые разрешены к отображению
            }
}

Затем, например так, их можно будет вывести:
foreach ($show_field_slug as $key => $show_field) {
 echo get_user_meta($rcl_user->ID, $show_field, true);
}

Редакции сообщения
29.05.2018 23:45PreciПричина: не указано
0
Вова (Otshelnik-Fm)
не в сети 4 дня
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
8
23:46

Это не установка и настройка, а кастомизация. Перенесено.

0
Preci
не в сети 4 дня
На сайте с 11.11.2014
Участник
Тем 71
Сообщения 1646
9
23:48

Если бы вы сказали как конкретно надо вывести, я бы дал готовый код, например:

Надо вывести так:


<b>Имя кастомного поля</b> : Значение поля
<br>
<b>Имя кастомного поля 2</b> : Значение поля 2

0
SAZONISCHE
не в сети 2 года
На сайте с 20.07.2017
Участник
Тем 17
Сообщения 211
10
23:51

Preci сказал(а)
Нет:

foreach($profileFields as $field) {
            if($field['req'] == 1) {
                $show_field_slug[] = $field['slug']; // тут вы получите все мета-кеи полей, которые разрешены к отображению
            }
}

Затем, например так, их можно будет вывести:
foreach ($show_field_slug as $key => $show_field) {
 echo get_user_meta($rcl_user->ID, $show_field, true);
}

какой ж я дебил шо вас мучаю, огромное спасибо серно.
нашел решение (<?php echo rcl_show_custom_fields_profile($rcl_user->ID); ?>)

0
Вова (Otshelnik-Fm)
не в сети 4 дня
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
11
23:53

Посмотрите тут

Вы не можете просматривать опубликованные ссылки

с момента: "Отключим весь блок информации об авторе и выведем всё самостоятельно"

0
SAZONISCHE
не в сети 2 года
На сайте с 20.07.2017
Участник
Тем 17
Сообщения 211
12
23:56

Накинул набросок при клике на блок пользователя, получилось пока так:

Вы не можете просматривать опубликованные ссылки
0
Вова (Otshelnik-Fm)
не в сети 4 дня
На сайте с 27.01.2013
Участник
Тем 43
Сообщения 18654
13
23:59

не очевидно что туда можно кликнуть и что-то получить. Надо бы что-то добавить. и не на всю ширину - тоже смущает

0
SAZONISCHE
не в сети 2 года
На сайте с 20.07.2017
Участник
Тем 17
Сообщения 211
14
00:02

Otshelnik-Fm сказал(а)
не очевидно что туда можно кликнуть и что-то получить. Надо бы что-то добавить. и не на всю ширину - тоже смущает

Сделаю смену курсора при наведении (все ток в тесте)

0
Вы не имеете права на публикацию сообщений в этой теме