Домой Wp-Recall WP-Recall: Пишем свое дополнение и кастомизация Вывод значений на вкладку в личном кабинете
5ответ(ов) в теме
KonstantinT
не в сети 9 лет
На сайте с 04.02.2016
Участник
1
08:54

Создал свое дополнение вкладка для личного кабинета
на этой вкладке нужно вывести значения некоторых полей профиля

например в cabinet.php можно написать
echo $user_info->meta_key;
и в кабинете пользователя например рядом с аватаркой отобразится это значение

а тут если выводить через echo то значение отображается на всех вкладках.
а через return можно только один раз выводить.
Как вывести несколько значений вида: $user_info->o_sebe_95

Код пока такой:

<?php
//Создадим новую вкладку ЛК с контактной формой, видимой только хозяину личного кабинета.
add_action('init','add_tab_description_tab');
function add_tab_description_tab(){
  rcl_tab('mydescr','description_tab_recall_block','О себе',array('public'=>1,'class'=>'fa-envelope','order'=>20));
}

function description_tab_recall_block($user_lk){ 
         
$user_info = get_userdata($user_lk);
$abt = $user_info->o_sebe_95;
$ctx = "Пользователь еще ничего не написал о себе.";	
if ($abt == '') {
  return $ctx;
} else {
  return $abt;
  }
}

function add_tab_descriptiontab($array_tabs){
	//myform - идентификатор вкладки дополнения
	//my_contactform_recall_block - название функции формирующей контент вкладки дополнения
	$array_tabs['mydescr']='description_tab_recall_block'; 
 return $array_tabs; 		
} 
add_filter('ajax_tabs_rcl','add_tab_descriptiontab');
?>

0
Андрей CS
не в сети 3 часа
На сайте с 30.11.-0001
Администратор
Тем 71
Сообщения 16936
2
09:47

возвращать только через return, строки перед этим склеивать, о конкатенации строк не слышали?

1
KonstantinT
не в сети 9 лет
На сайте с 04.02.2016
Участник
3
13:42

Андрей Plechev сказал(а)

возвращать только через return, строки перед этим склеивать, о конкатенации строк не слышали?

почитал про конкатенацию строк, спасибо, теперь знаю больше.

НО не понимаю если return'ом вернуть например:
$user_info->meta_key_1 - значение 1 поля
$user_info->meta_key_2 - значение 2 поля

$a = $user_info->meta_key_1;
$a .= $user_info->meta_key_2; 

return $a;

Будет: значение 1 полязначение 2 поля
так?
если так то как тогда разпределять что в каком месте выводить (распологать)?

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

так вам всю верстку надо так прописать

$a = $user_info->meta_key_1;
$a .='<div class="1">';
$a .= $user_info->meta_key_2; 
$a .='</div>';

и т.д.
или функциями. Откройте аддон любой и по примеру посмотрите

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

$a = $user_info->meta_key_1;
$a .='<div class="1">';
$a .= $user_info->meta_key_2; 
$a .='';</div>

Лично мне так не удобно делать, я делаю так:

function my_profile_bbpress($user_lk){
	ob_start();
	тут что-то делаем
	$result = ob_get_contents();
	ob_end_clean();
	return  $result;
}

1
Тема закрыта. Публикация новых сообщений запрещена.