1

코드/PHP 전문가가 아니기 때문에 내가 바보 같은 질문을하는 경우 미안합니다.단축 코드를 사용자 정의하는 것이 가능합니다. - 또는 - 두 개의 단축 코드를 결합하여 새로운 단축 코드를 만듭니다.

중력보기를 필터링하여 값에서 중력을 표시합니다.

[gravityview 자료 = "111"search_field = "11"search_value = "xyzes"]

가 지금은 "현재 사용자 로그인"동적 search_value 변경할 그래서

새로운 SHORTCODE하지만 잘되지 작동 여부 좋은 생각을하려고

add_shortcode('customcode' , 'wp_get_current_user_func'); 

function wp_get_current_user_func($atts) { 
    $current_user = wp_get_current_user(); 

    return do_shortcode('[gravityview id="1111" search_field="16" search_value="$current_user = wp_get_current_user();"]'); 
} 

는 내 요청으로 할 내가 할 수 백엔드에있는 어떤 방법이 옳은 일을 코드 또는 나에게 제안 해주십시오 테마 파일을 변경 하시겠습니까?

미리 감사드립니다.

답변

0

가까이에 있습니다. 여기 당신이 그것을 할 방법입니다 :

add_shortcode('customcode' , 'wp_get_current_user_func'); 

function wp_get_current_user_func($atts) { 
$current_user = wp_get_current_user(); 
$user_login = $current_user->user_login; 
//return do_shortcode('[gravityview id="1111" search_field="16" search_value=".$user_login."]'); 
$shortcode = sprintf(
'[gravityview id="%1$s" search_field="%2$s" search_value="%3$s"]', 
"1111", 
"16", 
$user_login 
); 
echo do_shortcode($shortcode); 
} 

당신은 함수에서 $current_user->user_login를 검색 할 수 없어진 wp_get_current_user()

$user_login = $current_user->user_login; 

또한 다음 예제와 같이 다른 값을 인쇄 할 수 있습니다

<?php 
    $current_user = wp_get_current_user(); 
    /** 
    * @example Safe usage: $current_user = wp_get_current_user(); 
    * if (!($current_user instanceof WP_User)) 
    *  return; 
    */ 
    echo 'Username: ' . $current_user->user_login . '<br />'; 
    echo 'User email: ' . $current_user->user_email . '<br />'; 
    echo 'User first name: ' . $current_user->user_firstname . '<br />'; 
    echo 'User last name: ' . $current_user->user_lastname . '<br />'; 
    echo 'User display name: ' . $current_user->display_name . '<br />'; 
    echo 'User ID: ' . $current_user->ID . '<br />'; 
?> 
+0

안녕하세요 미스터 잭 나는 이전에 의심의 여지가 있지만 모든 체크 후 미안 해요 그리고 당신은 지금 오류가 작동하지만 디버그에서 데이터를 가져 오지 제안 ........ 배열을 코드를 넣어 ... 배열 ( [field_filters] => 배열 ( [0] => 배열 ( ) [key] => 16 [값] =>. $ user_login. [연산자] =이> 포함 ) [모드] => 모든 ) –

+0

는 어쩌면 당신은 대신'이 아닌'$의 user_login' 같은 점들을 제거해야 ). $ user_login.' –

+0

그것은 하이 여전히 같은 [key] => 16 [값] => $ user_login [연산자] => 포함 –