WooCommerce会员资格:有条件限制内容检查

时间:2016-06-08 02:54:27

标签: php wordpress woocommerce conditional woocommerce-memberships

我正在尝试制作一个页面链接菜单,人们可以在购买会员资格后访问这些链接(通过WooCommerce Memberships)。如果他们还没有访问它们,我希望这些页面显示为灰色。

我已经将页面设置为在购买WooCommerce会员资格后X天获取访问权限,但是我使用的代码根本无效。即使它应该返回true,它也会返回false。

有什么想法吗?

<?php 
     $restrict_th0 = wc_memberships_is_post_content_restricted(24);
     $restrict_th1 = wc_memberships_is_post_content_restricted(28);
     $restrict_th2 = wc_memberships_is_post_content_restricted(30);
?>

<ul id="menu-academy">
     <li>
     <?php if ( $restrict_th0 ) { } else { ?>
          <a href="<?php echo home_url(); ?>/URL HERE/">
     <?php } ?>
     <span class="module_no">0</span><span class="module_descript">MODULE DESCRIPTION<span class="module_access<?php if ( $restrict_th0 ) { ?> lock<?php } ?>">
     <i class="fa fa-2x fa-<?php if ( $restrict_th0 ) { } else { ?>un<?php } ?>lock<?php if ( $restrict_th0 ) { } else { ?>-alt<?php } ?>" aria-hidden="true"></i></span></span><?php if ( $restrict_th0 ) { } else { ?></a><?php } ?></li>

</ul

1 个答案:

答案 0 :(得分:1)

你应该更好地使用这个条件:

if( wc_memberships_is_user_active_member( $membership_plan ) ) {
   // Displayed fully functional Menu
} else {
   // Greyed displayed inactive Menu
}

这适用于已订阅计划且订阅有效的活动记录用户。

$membership_plan必须由会员计划slug,post对象或相关帖子ID替换。

您还可以使用wc_memberships_is_post_content_restricted(ID)is_page(ID)进行进一步行动......