主页/WordPress笔记/博客文章/综合文章/如何在WordPress评论中允许用户上传图片

如何在WordPress评论中允许用户上传图片

Bug编译狮

Bug编译狮

在WordPress中,允许用户上传图片到评论页面通常需要通过插件来实现。因为默认情况下,WordPress评论系统不支持直接上传图片功能。以下是使用一个名为“Picture Comments”的插件来允许用户上传图片的步骤:

步骤 1: 安装插件

首先,在WordPress后台中找到插件部分,点击“添加新插件”按钮。

搜索框中输入“picture comments”,然后选择并安装“Picture Comments”插件。安装完成后,激活该插件。

步骤 2: 配置插件

打开“Picture Comments”插件设置页面(通常是wp-content/plugins/picture-comments/settings.php),在这里可以配置插件的各种选项和行为。确保以下几项设置正确:

  • Upload images to posts: 启用此选项以将图片与评论关联。
  • Attach images to post: 启用此选项以将图片附加到发布的内容中。

步骤 3: 测试插件

回到评论界面,尝试发表一条新的评论。你应该能够看到一个文件上传字段,用于选择要上传的图片。点击上传后,图片应该会显示在评论下方。

示例代码

这里有一个简单的示例代码片段,展示了如何使用PHP处理来自评论的图片上传请求。这个例子假设你已经成功设置了插件并上传了图片。

<?php
// 获取评论ID
$comment_id = get_comment_ID();

// 获取评论者信息
$user_id = get_comment_author_email();
$user_name = get_comment_author();

// 获取上传的文件
$file = $_FILES['attachment'];

if ($file) {
    // 创建一个新的评论
    $new_comment = array(
        'comment_post_ID' => $comment_id,
        'comment_parent' => 0, // 如果这是一个顶级评论,设为0
        'comment_type' => '',
        'user_id' => $user_id,
        'user_login' => $user_name,
        'comment_content' => $file['name'], // 文件名作为评论内容
        'comment_date' => current_time('mysql'), // 当前时间
        'comment_approved' => 1 // 已通过
    );

    wp_insert_comment($new_comment);
}
?>

使用效果

当你运行上述代码时,它会在评论区生成一个新的评论,内容为空字符串,表示文件名。这样你就完成了从评论到附件的转换过程。

请注意,这只是一个基本示例,实际应用中可能需要根据具体需求调整代码,例如处理更复杂的文件上传逻辑、验证文件类型等。

黑板前的Bug语法讲师

黑板前的Bug语法讲师

教案:在WordPress评论中允许用户上传图片

目标受众:

  • WordPress新手
  • 对WordPress有基础了解的用户

课程大纲:

  1. 简介

    • 讲解WordPress的基本概念和功能。
  2. 创建并编辑WordPress主题

    • 使用WordPress模板和插件创建网站。
    • 熟悉使用WordPress后台管理界面。
  3. 添加评论功能

    • 在WordPress中设置评论功能。
    • 添加评论字段以显示用户的头像、姓名和邮箱地址。
  4. 实现图片上传功能

    • 在WordPress中实现评论中的图片上传。
    • 设置图片大小限制、文件类型等参数。
  5. 测试与优化

    • 测试图片上传的功能是否正常工作。
    • 根据反馈对功能进行调整和优化。
  6. 学习资源

    • 提供教程链接或相关文档,帮助学员进一步深入学习。

示例代码:

第一步:安装WordPress


sudo apt-get update && sudo apt-get install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update && sudo apt-get install php7.4-fpm php7.4-mysql php7.4-json php7.4-curl php7.4-bcmath php7.4-gd php7.4-cli php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php7.4-xdebug php7.4-gmp php7.4-curl php7.4-dom php7.4-xmlrpc php7.4-redis php7.4-memcached php7.4-pdo php7.4-zip php7.4-zip php7.4-curl php7.4-openssl php7.4-ldap php7.4-spl php7.4-apcu php7.4-cgi php7.4-mbstring php7.4-curl php7.4-gd php7.4-intl php7.4-zip php7.4-soap php7.4-sqlite3 php7.4-mbstring php