【发布时间】:2017-10-03 23:58:33
【问题描述】:
一句话:当一个免费用户试图编辑他发布的帖子时,我想使用“获取帖子状态”来发布或挂起,这样我就可以隐藏一些 div。
我的编码技能非常基础,但我正在开发一个人们可以创建自定义帖子的 Wordpress 网站。
有两种类型的会员资格:免费或高级。我试图阻止免费会员在他们的帖子发布或待处理(如果可能)后编辑他们帖子的特定部分。他们可以在草稿或付费时进行编辑。
请注意,用户通过我创建的特定页面 (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 } ?>
任何帮助将不胜感激!
【问题讨论】:
-
您想在用户发布帖子后隐藏内容编辑器吗?
-
Dolatabadi,我可以通过添加 style="display:none;" 来隐藏#mydiv2到 div 但我的问题是顶部的 php 代码可能没有以正确的方式编写。目标是获取用户尝试编辑的帖子的状态,并确保在隐藏 div 之前发布其当前状态。
-
我们也可以将#mydiv2 视为编辑器。
-
仍在阅读问题,但在您的 php 示例中,您的 $_GET['pid'] 是否也应包含 '== true ' 语句?由于 php 没有读取 pid 并在该行代码中以相同的方式进行编辑。
-
我也尝试了 $_GET['pid'] 和 '==true' 语句,但没有任何改变。当用户在他的一篇帖子上单击编辑时,浏览器上的内容如下所示: domainurl/create-a-new-post/?pid=376&edit=true