2016-12-19 4 views
0

일부 조건에 따라 메시지 하나를 조정해야합니다. 현재는Wordpress에 대한 URL에서 구독 등급 ID를 얻는 방법

<?php if(is_user_logged_in()) : ?> 
<h1 class="abo-title page-title abo-payment"><?php echo __('Zahlungsdetails',  'issuem-leaky-paywall'); ?></h1> 
    <p>Bitte geben Sie Ihre Zahlungsdetails ein.</p> 
    <?php else: ?> 
    <h1 class="abo-title page-title abo-register"><?php echo __('Registrieren Sie sich hier für Ihren Gratismonat.', 'issuem-leaky-paywall'); ?><br><span class="bold"><?php echo __('Keine Verpflichtung, jederzeit kündbar.', 'issuem-leaky-paywall') ?></span></h1> 
    <?php endif ? 

.. 로그인 /하지 로그인 사용자의 논리에 이미하지만 지금은 사용자가 로그인 그러나 누구가 직접 구독 수준 ID로 가입 페이지로 올 것이다되지 않은 또 다른 메시지를 표시 할 필요가 URL이 같은 ... 같은

https://example.de/subscribe/ 

과 같은 유료 구독을 클릭 세 개 이상의 옵션이 있습니다 ....

https://example.de/register/?level_id=1 
https://example.de/register/?level_id=2 
..... 

내가 t 변경해야 할 수준 ID에 따라 그는 메시지.

그것은 Wordpress 사이트이고 레벨 ID를 다른 메시지를 표시하려고했습니다. 그리고 그것은 새는 paywall 플러그인이 있습니다.

어떤 아이디어가 있습니까?

+0

가입자 또는 사용자 ID –

+0

하지 않음 로그인 또는 설명 –

답변

0

당신은 당신의 URL이 level_id 여부가 포함되어 있는지 확인하는 GET를 사용하여 시도 할 수 있습니다. 이처럼 :

if(isset($_GET['level_id'])){ 
$level_id = trim($_GET['level_id']); 
}else{ 
$level_id = false; 
} 

<?php if(is_user_logged_in()) { ?> 
<h1 class="abo-title page-title abo-payment"><?php echo __('Zahlungsdetails',  'issuem-leaky-paywall'); ?></h1> 
    <p>Bitte geben Sie Ihre Zahlungsdetails ein.</p> 
    <?php else: ?> 
    <h1 class="abo-title page-title abo-register"><?php echo __('Registrieren Sie sich hier für Ihren Gratismonat.', 'issuem-leaky-paywall'); ?><br><span class="bold"><?php echo __('Keine Verpflichtung, jederzeit kündbar.', 'issuem-leaky-paywall') ?></span></h1> 

    <?php } elseif($level_id == 1){ ?> 

     // Your custom message for level_id 1 

    <?php } elseif($level_id == 2){ ?> 

     // Your custom message for level_id 2 

    <?php } ?> 
+0

감사합니다. Ruhul. 그것은 완벽하게 작동합니다! –

0

사례 1 : 가입자 역할 ID를 요청하는 중입니다.

참고 : 안전하지 않은 방법으로 숨겨진 필드를 사용하십시오.

get_users($args) 가입자 사용자 목록을 얻을 수 있습니다.

<?php 
$args = array(
'role' => 'subscriber', 
'orderby' => 'user_nicename', 
'order' => 'ASC' 
); 
$subscribers = get_users($args); 
echo '<ul>'; 
foreach ($subscribers as $user) { 
echo '<li>' . $user->display_name.'['.$user->user_email . ']</li>'; 
} 
echo '</ul>'; 
?> 

사례 2 : 등록하기 전에 리디렉션하려는 URL입니다.

<a href="<?php echo wp_registration_url(); ?>">Register</a> 
+0

감사 Vasim로 주어진 링크, 실제로 사용자가 로그인하지 않습니다와 가입자로 가입하려고하는 새로운 방문자와 나는를 얻을 수 있습니다 URL에서 메시지를 표시 할 레벨 ID. 그들은 구독 할 예정이므로 DB에 데이터가 없습니다. –

+0

로그인하지 않고 해당 사용자는 게스트 사용자 –

+0

혼란을 드려 죄송합니다. 첫 번째 댓글에 새로운 방문자가 있음) –