2017-10-03 6 views
0

無料のユーザーが自分の公開された投稿を編集しようとすると、公開または未承認の投稿ステータスを取得したい私はいくつかのdivを隠すことができます。投稿された/保留中の投稿ステータスのみを取得する方法(Wordpress and PHP)

私のコーディングスキルは非常に基本的ですが、私は人々がカスタム投稿を作成できるWordpressウェブサイトに取り組んでいます。

メンバーシップには、無料またはプレミアムの2種類があります。私は彼らの投稿が公開されたり、(可能であれば)保留中であれば、投稿の特定の部分を編集しないように、フリーのメンバーができないようにしています。ドラフトやプレミアムを持つときに編集できます。

ユーザは、作成した特定のページ(ID = 6)を経由して投稿を作成し、wpバックエンドでは作成しないことに注意することが重要です。

現在、以下のコードは公開された投稿と下書きの投稿の両方で動作するようです。私はコードがユーザーの発行済みまたは保留中の投稿に対してのみ機能するようにしたいと思います。

は、ここで作業しようとしているコードのイムです:

<?php if (($usermeta['_checkbox_premium_user'][0] != "yes") && ($_GET['edit'] == 'true') && (get_post_status ($ID) == 'publish')) { ?> 

<div class="mydiv">content to show</div> <?php } else { ?> <div class="mydiv2">content to hide</div> <?php } ?> 

任意の助けをいただければ幸いです!

+0

あなたがコンテンツエディタを非表示にするユーザーが自分のポストを公開した後? – Sohrab

+0

Dolatabadi、私はstyle = "display:none;"を追加して#mydiv2を隠すことができます私の問題はおそらく正しい方法で書かれていない上のPHPコードです。目標は、ユーザーが編集しようとしている投稿のステータスを取得し、divを非表示にする前に現在のステータスが公開されていることを確認することです。 – Elaj

+0

#mydiv2もエディタと見なすことができます。 – Elaj

答えて

0

私はそれを考え出した:

<?php if (($usermeta['_checkbox_premium_user'][0] != "yes") && ($_GET['edit'] == 'true') && (get_post_status ($_GET['pid']) == 'publish')) { ?> 
関連する問題