2016-04-23 14 views
1

次のコードでは、私の場合はElseステートメントを微細化する方法がある場合、私は思っていた:絞り込みElseステートメントの場合 - または - エンド - Wordpressの/ PHP

<?php if (ms_has_membership(01)): ?> 

     // HTML - USER PROFILE 

<?php global $current_user; 
     get_currentuserinfo(); 
     elseif (is_user_logged_in() && $current_user->ID == $post->post_author): ?> 

     // HTML - USER PROFILE - (Same as above)      

<?php else: ?> 

     // LINK - Upgrade Your Subscription 

<?php endif; ?> 

は基本的に、私がもしあると言うする必要があります

ユーザーが必要なメンバーシップを持っていないが、ログインして自分のプロファイル(作成者)にアクセスしている場合、ユーザーは必要なメンバーシップを持っています。彼自身のプロファイルのみがアクセス可能になります。

ユーザーがログインしていなくても、作成者でも有効なメンバーシップもない場合、プロファイルは表示されず、代わりにアップグレードサブスクリプションへのリンクが表示されます。

私の問題は、ユーザープロファイルのHTMLがかなり長く、2番目のステートメントですべてを繰り返す必要がないということです。

だから文を洗練する方法があるので、それを読み取ります

ユーザーがANDにログインしている場合に有効なメンバーシップORを持っていると著者は、プロファイルを表示しますか?

||&&を1つの文で使用できますか?

+0

' ID == $ポスト> post_author)):?> // HTML - ユーザーPROFILE // LINK - サブスクリプションをアップグレードする <?php endif; ?> ' –

答えて

1

あなたが言ったように: - ステートメントを精緻化する方法がありますので、次のようになります。ユーザーがログインしていて、有効なメンバーシップORがあり、作成者の場合はプロファイルを表示しますか?

次の方法でそれを行うことができます - ?

<?php 
    global $current_user; 
    get_currentuserinfo(); 
?> 
<?php if (is_user_logged_in() && (ms_has_membership(01) || $current_user->ID == $post->post_author) ): ?> 

     // HTML - USER PROFILE      

<?php else: ?> 

     // LINK - Upgrade Your Subscription 

<?php endif; ?> 
+0

私は、実際に私はこれらを一緒に参加できるとは思わなかった。 –

関連する問題