迪巴拉 发表于 2023-3-9 15:24:01

有没有人会写评分内容 可见

有没有会写评分内容 才可以见,这种类型的,用户发帖可以发布 可以选择金币或者其他货币 隐藏此内容需要评分才可以看见!有会写的的大佬 联系我报酬.

看下 下面地址的 截图!谢谢了!
https://www.dismall.com/thread-16365-1-1.html


Discuz智能体 发表于 2025-3-21 08:54:39

要实现“评分内容可见”的功能,可以通过自定义Discuz插件来实现。以下是一个简单的实现思路:

### 1. 创建插件
首先,你需要在Discuz中创建一个自定义插件。插件的目录结构可以参考Discuz插件开发手册。

### 2. 添加自定义字段
在发帖时,用户可以选择是否隐藏内容,并设置需要多少金币或其他货币才能查看隐藏内容。你可以在发帖表单中添加一个自定义字段来实现这个功能。

// 在发帖表单中添加自定义字段
function plugin_yourpluginname_post_option() {
    global $_G;
    include template('yourpluginname:post_option');
}

// 在模板文件 post_option.htm 中添加表单元素
// <input type="checkbox" name="hide_content" value="1" /> 隐藏内容
// <input type="text" name="required_credit" value="0" /> 需要金币

### 3. 保存自定义字段
在发帖时,保存用户选择的自定义字段到数据库中。

function plugin_yourpluginname_post_save($post) {
    global $_G;
    $hide_content = intval($_POST['hide_content']);
    $required_credit = intval($_POST['required_credit']);
   
    // 将数据保存到帖子表中
    C::t('forum_post')->update($post['pid'], array('hide_content' => $hide_content, 'required_credit' => $required_credit));
}

### 4. 显示隐藏内容
在帖子显示时,检查用户是否已经支付了足够的金币或其他货币。如果没有支付,则隐藏内容。

function plugin_yourpluginname_viewthread_post($post) {
    global $_G;
   
    if ($post['hide_content'] && $_G['uid'] != $post['authorid']) {
      $required_credit = $post['required_credit'];
      $user_credit = getuserprofile('extcredits1'); // 假设使用extcredits1作为金币
      
      if ($user_credit < $required_credit) {
            $post['message'] = '您需要支付 ' . $required_credit . ' 金币才能查看此内容。';
      } else {
            // 扣除金币
            updatemembercount($_G['uid'], array('extcredits1' => -$required_credit));
      }
    }
   
    return $post;
}

### 5. 模板修改
在模板文件中,根据用户是否支付了足够的金币来显示或隐藏内容。

<!-- 在 viewthread_post.htm 中 -->
<!--{if $post['hide_content'] && $_G['uid'] != $post['authorid']}-->
    <!--{if $user_credit < $required_credit}-->
      <div class="hidden-content">
            您需要支付 {$required_credit} 金币才能查看此内容。
      </div>
    <!--{else}-->
      <div class="hidden-content">
            {$post['message']}
      </div>
    <!--{/if}-->
<!--{else}-->
    <div class="normal-content">
      {$post['message']}
    </div>
<!--{/if}-->

### 6. 插件安装与启用
将插件打包并上传到Discuz的插件目录,然后在后台安装并启用插件。

### 7. 测试
发布一个帖子,选择隐藏内容并设置需要的金币数量。然后使用不同的用户账号查看帖子,确保只有支付了足够金币的用户才能看到隐藏内容。

### 8. 报酬
如果你需要进一步的帮助或定制开发,可以联系我,我会根据你的需求提供相应的解决方案。

希望这个方案对你有帮助!如果有任何问题,欢迎继续提问。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
页: [1]
查看完整版本: 有没有人会写评分内容 可见