LayCenter 适配文档

LayCenter包含了许多可调用的接口,以下只是冰山一角,如有需要请联系我,我再来补充

调用链接

登陆地址:

$lcp->BuildUrl('login');

注册地址:

$lcp->BuildUrl('reg');

重置密码地址:

$lcp->BuildUrl('forgetpassword');

用户中心地址:

$lcp->BuildUrl('user');

账户充值地址:

javascript:lcp.invest('Price');
javascript:lcp.invest('Price', 100);  //打开充值窗口并自动选择充值100积分(充值数量必须是要在后台预设的快速选择数量)

VIP充值地址:

javascript:lcp.invest('VIP');
javascript:lcp.invest('VIP', 2); //打开充值窗口并自动选择月会员
javascript:lcp.invest('VIP', 3); //打开充值窗口并自动选择年会员
javascript:lcp.invest('VIP', 4); //打开充值窗口并自动选择永久会员

自5.0版本开始,可以在网站前台弹出充值窗口,不再有单独的充值链接,必须用js调用

用户中心数据:

调用用户中心配置:

$lcp->config->配置项字段名;
$lcp->config->Save();  //保存配置

调用扩展插件的配置:

(跟zblog调用数据的方法基本一致,但调用对象是$lcp)比如调用qq机器人的推送消息地址:

$lcp->Config('qqrobot')->qqroboturl;
$lcp->Config('qqrobot')->Save(); // 保存配置

VIP等级说明

用户中心有5中会员等级:普通用户青铜VIP白银VIP铂金VIP钻石VIP

以上5中名称在用户中心可以自定义名称。

 

普通用户:网站的普通用户,非VIP用户,或VIP过期用户;

青铜VIP:开通的会员在一月内的(一般都是开通7天)

白银VIP:开通会员在1月以上,12月以内

铂金VIP:开通超1年的会员

钻石VIP:开通永久VIP,会员身份永不过期

 

如果是续费会员,根据续费后的时长,也会自动升级到相应的VIP等级


单独调用5种用户等级名称的方法

$lcp->user::VipName(0); //比如会返回:普通用户
$lcp->user::VipName(1); //比如会返回:青铜VIP
$lcp->user::VipName(2); //比如会返回:白银VIP
$lcp->user::VipName(3); //比如会返回:铂金VIP
$lcp->user::VipName(4); //比如会返回:钻石VIP

用户有关的数据:

以下代码只会用 $zbp->user 作为示例代码,在主题模板中,也可以用 {$user.方法/属性}

账户余额:

$zbp->user->Price;     //返回比如:5

//返回账户余额和货币名称则用下面代码
$zbp->user->Price();  //返回比如: 5积分

账户VIP等级

$zbp->user->VipType;
//根据该用户的VIP等级返回对应纯数标识
//0:普通用户 1:青铜VIP 2:白银VIP 3:铂金VIP 4:钻石VIP

账户VIP等级名称

$zbp->user->VipName;
//根据该用户的VIP等级返回对应的VIP名称:普通用户、青铜VIP、白银VIP、铂金VIP、钻石VIP

账户VIP有效期

$zbp->user->VIPExpire();  //返回比如:2019-10-12
$zbp->user->VIPExpire('Y年m月d日');  //返回比如:2019年10月12日
$zbp->user->VipTime;  //返回VIP到期时间戳

账户邀请码/邀请链接

$zbp->user->InviteCode;
$zbp->user->InviteUrl;
//如果返回为空,则说明此用户没有邀请用户的权限

文章相关数据

是否购买了本文章

//模板里用法
{$article.Purchased()}已购买{else}未购买{/if}

//其它调用方法
 if ($article->Purchased()){
   echo '已购买';
 }else{
   echo '未购买';
 }
 
//$article 是文章对象
//注意:如果在同一个页面多次调用,需要先将其赋予一个变量,否则多次调用该方法会重复向数据库查询

VIP会员是否能免费查看付费内容

//使用方法和上面的一样
$article->FreeView

获取文章的收藏数量

$article->CollectNums;

获取文章已售数量(已购买的人数)

$article->SellNums;

获取文章最近销售订单

$article->Orders();  //默认10个

foreach ($article->Orders(5) as $value){
  echo '购买人ID:'.$value->UID;
  echo '购买时间:'.date('Y-m-d',$value->Time);
}

获取最近收藏记录

$article->Collect();  //默认10个
//遍历方法同上

获取最近下载记录

$article->Download();  //默认10个
//遍历方法同上

获取文章附件下载次数

$article->DownloadNums;

文章价格

$pay = $article->Pay;
$price = $pay->price; //文章价格
//更多内容调用可以查看 class/article.php 文件

扩展插件


为用户中心LayCenter创建一个扩展插件

为用户中心LayCenter添加一个社交登录扩展插件

为用户中心LayCenter对接一个支付接口


5.0版本主题对商城商品页模板适配

主题需要新建一个模板页面供用户选择

只需要在模板合适合适位置加入调用代码 {template:lcp-pay}


比如newscms适配的模板代码,仅需要加入模板引入代码即可,其它代码根据主题来调整

<?php die;?>{* Template Name:销售页 *}{template:header}
<body class="single single-product {if $user.ID}user{else}guest{/if}">{template:post-nav}
    {if $article.Metas.css}<style>{$article.Metas.css}</style>{/if}
    <main class="container wrapper">
        <article class="crumbs">
           {newscms_Breadcrumb($article)}
        </article>
        <!--头部内容-->
        {template:lcp-pay}
        <section class="content" id="scroll">
            <section class="content_left">
                <div class="woocommerce-tabs wc-tabs-wrapper">
                    <ul class="tabs wc-tabs" role="tablist">
                        <li class="description_tab" id="tab-title-description" role="tab" aria-controls="tab-description">
                            <a href="#tab-description">描述</a>
                        </li>
                        {if ($showpaycontent = $zbp.Config('newscms').userpaycontent && ($isbuy || $article->AuthorID == $zbp->user->ID) && !$article->Metas->res && !$article.Metas.buyurl)}
                        <li class="reviews_tab" id="tab-title-hidecontent" role="tab" aria-controls="tab-hidecontent">
                            <a href="#tab-hidecontent">付费内容</a>
                        </li>
                        {/if}
                        <li class="reviews_tab sellcommemt" id="tab-title-reviews" role="tab" aria-controls="tab-reviews">
                            <a href="#tab-reviews">用户评论  ({$article.CommNums})</a>
                        </li>
                    </ul>
                    <div class="woocommerce-Tabs-panel woocommerce-Tabs-panel--description content_post panel entry-content wc-tab" id="tab-description" role="tabpanel" aria-labelledby="tab-title-description">
                        {$zbp->Config('newscms')->sellpagehead}
                        {$article.Content}
                        {$zbp->Config('newscms')->sellpagefooter}
                    </div>
                    {if $showpaycontent}
                    <div class="woocommerce-Tabs-panel woocommerce-Tabs-panel--hidecontent panel entry-content wc-tab" id="tab-hidecontent" role="tabpanel" aria-labelledby="tab-title-hidecontent">
                        <div id="hidecontent" class="woocommerce-Reviews content_post">
                            {$zbp->Config('newscms')->payedpagehead}
                            {$article.Metas->hide}
                        </div>
                    </div>
                    {/if}
                    <div class="woocommerce-Tabs-panel woocommerce-Tabs-panel--reviews panel entry-content wc-tab" id="tab-reviews" role="tabpanel" aria-labelledby="tab-title-reviews">
                        <div id="reviews" class="woocommerce-Reviews">
                            {template:comments}
                        </div>
                    </div>
                </div>
            </section>
        </section>
        
            {$like = GetList(3,$article.Category.ID,null,null,null,null,array('is_related'=>$article.ID));}
                {if $like}
                    <!-- 相关文章 -->
                    <section class="related products">
                         <h2>相关产品</h2>
                        <ul class="products columns-2">
                            {foreach $like as $post}
                                {$img = newscms_getthumb($post,460,280)}
                                {template:post-sell-view}
                            {/foreach}
                        </ul>
                    </section>
                    <!-- 相关文章end -->
                {/if}
    </main>
    <script type='text/javascript' src='{$host}zb_users/theme/newscms/script/single-product.min.js'></script>
{template:footer}

LayCenter 适配文档,zblog,zblog用户中心,php,第1张


同样,该代码还可以调用“普通付费内容”、“卡密内容”、“附件下载”

适配后截图

LayCenter 适配文档,zblog,zblog用户中心,php,第2张


LayCenter 适配文档,zblog,zblog用户中心,php,第3张


LayCenter 适配文档,zblog,zblog用户中心,php,第4张



关于销售内容的适配,很简单,总之一句话,模板里调用  {template:lcp-pay} 就行