1

我正在尝试制作一个页面链接菜单,人们在购买会员资格后可以访问(通过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
4

1 回答 1

1

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

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

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

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

在您可以使用之后wc_memberships_is_post_content_restricted(ID)is_page(ID)用于进一步操作之后……</p>

于 2016-06-09T05:11:16.833 回答