RiPro主题美化——限定某个分类及文章只能终身会员访问

很多人反应希望开发一个只对会员可见的功能,隐藏某个指定分类以及分类下的文章!

效果图

操作步骤

[rihide]

第一步:

找到ripro/inc/themfunctions.php  大约95行

function cao_entry_header( $options = array() ) {

将整个函数的内容替换下列代码

function cao_entry_header( $options = array() ) {
  global $current_user;
  $CaoUser = new CaoUser($current_user->ID);
  $options = array_merge( array( 'outside_loop' => false, 'container' => 'header', 'tag' => 'h2', 'link' => true, 'white' => false, 'author' => false, 'category' => false, 'date' => false, 'comment' => false, 'like' => false ), $options );
  $queried_object = get_queried_object();
  $post_id = $options['outside_loop'] ? $queried_object->ID : get_the_ID();
  $categories = get_the_category( $post_id ); ?>

  <?php echo '<' . $options['container'] . ' class="entry-header' . esc_attr( $options['white'] ? ' white' : '' ) . '">'; ?>
    <?php if ( $options['author'] || $options['category'] || $options['date'] || $options['comment'] || $options['like'] ) : ?>
      <div class="entry-meta">
        <?php if ( $options['author'] ) :
          $author_id = get_post_field( 'post_author', $post_id ); ?>
          <span class="meta-author">
            <a<?php echo _target_blank();?> href="<?php echo esc_url( get_author_posts_url( get_the_author_meta( 'ID', $author_id ) ) ); ?>">
              <?php
                echo get_avatar( get_the_author_meta( 'email', $author_id ), '40', null, get_the_author_meta( 'display_name', $author_id ) );
                echo get_the_author_meta( 'display_name', $author_id );
              ?>
            </a>
          </span>
        <?php endif;

        if ( $categories && $options['category'] ) : ?>
          <span class="meta-category">
            <?php foreach ( $categories as $key=>$category ) :
              if ($key == 3) {break;}
            ?>
              <a<?php echo _target_blank();?> href="<?php echo esc_url( get_category_link( $category->term_id ) ); ?>" rel="category">
                  <i class="dot"></i><?php echo esc_html( $category->name ); ?>
              </a>
            <?php endforeach; ?>
          </span>
        <?php endif;

        if ( $options['date'] ) : ?>
          <span class="meta-date">
            <a<?php echo _target_blank();?> href="<?php echo esc_url( get_the_permalink( $post_id ) ); ?>">
              <time datetime="<?php echo esc_attr( get_the_date( 'c', $post_id ) ); ?>">
                <?php
                  // echo esc_html( get_the_date( null, $post_id ) );
                  echo _timeago( get_gmt_from_date(get_the_time('Y-m-d G:i:s')) );
                ?>
              </time>
            </a>
          </span>
        <?php endif;
        
        if ( $options['comment'] && ! post_password_required( $post_id ) && ( comments_open( $post_id ) || get_comments_number( $post_id ) ) ) : ?>
          <span class="meta-comment">
            <a<?php echo _target_blank();?> href="<?php echo esc_url( get_the_permalink( $post_id ) . '#comments' ); ?>">
              <?php printf( _n( '%s 评论', '%s 评论', esc_html( get_comments_number( $post_id ) ), 'cao' ), esc_html( number_format_i18n( get_comments_number( $post_id ) ) ) ); ?>
            </a>
          </span>
        <?php endif;?>
      </div>
    <?php endif; ?>
   <?php 
   foreach((get_the_category()) as $category) {
    }
   if ( !$CaoUser->vip_status() && get_term_meta($category->cat_ID, 'is_novip', 'true') ):?>
    <h2 class="entry-title"><a target="_blank" href="<?php echo esc_url( get_category_link( $category->term_id ) ); ?>" title="VIP分类资源" rel="bookmark" class="grida">VIP分类资源,点击开通VIP后可访问</a></h2>
    <?php else : ?>
    <?php
      if ( $options['link'] ) {
        echo '<' . $options['tag'] . ' class="entry-title">'.get_original_tag().'<a'. _target_blank() .' href="' . esc_url( get_permalink( $post_id ) ) . '" title="'.get_the_title( $post_id ).'" rel="bookmark">' . get_the_title( $post_id ) . '</a></' . $options['tag'] . '>';
      } else {
        echo '<' . $options['tag'] . ' class="entry-title">'.get_original_tag().'' . get_the_title( $post_id ) . '</' . $options['tag'] . '>';
      }
    ?>
    <?php endif; ?>
  <?php echo '</' . $options['container'] . '>';
}

第二步:

找到ripro/inc/codestar-framework/options/taxonomy.theme.php的大约37行,即

array(
        'id'    => 'is_filter',
        'type'  => 'switcher',
        'title' => '禁用本内页高级筛选功能',
    ),

的后面添加以下代码:

array(
        'id'    => 'is_novip',
        'type'  => 'switcher',
        'title' => '只对终身会员开放',
        'label'   => '注意文章只能专属于当前分类时有效',
    ),

第三步: 添加CSS代码,如果是子主题添加到diy.css:

/*VIP分类*/
.vipcate{
    margin: 0 10%;
    height: 100%;
    padding: 10% 0;
    background-color: rgba(255,255,255,.3);
    -webkit-box-shadow: #d4d2d2 0px 0px 10px;
    -moz-box-shadow: #d4d2d2 0px 0px 10px;
    border-radius: 20px;
    text-align: center;
}

.vipcatetext{
    background-image: -webkit-linear-gradient(left,blue,#66ffff 10%,#cc00ff 20%,#CC00CC 30%, #CCCCFF 40%, #00FFFF 50%,#CCCCFF 60%,#CC00CC 70%,#CC00FF 80%,#66FFFF 90%,blue 100%);
    -webkit-text-fill-color: transparent;/* 将字体设置成透明色 */
    -webkit-background-clip: text;/* 裁剪背景图,使文字作为裁剪区域向外裁剪 */
    -webkit-background-size: 200% 100%; 
    -webkit-animation: masked-animation 4s linear infinite;
    font-size: 35px;
    line-height: 35px;
    text-align: center;
}

@keyframes masked-animation {
    0% {
        background-position: 0  0;
    }
    100% {
        background-position: -100%  0;
    }
}

.vipcatebtn{
    background: -webkit-gradient(linear,left top,right top,from(var(--accent-color)),to(var(--accent-color-min)));
    background: linear-gradient(90deg,#20aaff,#20ffaa);
    display: inline-block;
    margin-top: 20px;
    padding: 10px;
    border-radius: 15px;
}
.vipcatebtn a{
    color: #fff;
    font-size: 25px;
}

.grida{
    background-image: -webkit-linear-gradient(left,blue,#6ff 10%,#c0f 20%,#c0c 30%,#ccf 40%,#0ff 50%,#ccf 60%,#c0c 70%,#c0f 80%,#6ff 90%,blue 100%);
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
    -webkit-background-size: 200% 100%;
    -webkit-animation: masked-animation 4s linear infinite;
    font-size: 20px;
    line-height: 20px;
    text-align: center;
}

第四步:

后台文章-分类目录,左下开启“只对终身会员开放”即可[/rihide]

 

人已赞赏
帝国CMS模板

2020新版帝国CMS7.5仿《金色财经》财经综合门户资讯整站源码+手机端

2020-7-21 23:22:05

Ripro美化

RiPro主题美化——专用友情链接+自助申请教程

2020-3-16 9:13:27

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索
  • 10 用户总数
  • 1202 文章总数
  • 10554 浏览总数
  • 0 今日发布
  • 335 稳定运行
立即加入

加入VIP,快速免费获取优质资源!