【问题标题】:Wordpress frontend file uploadWordpress 前端文件上传
【发布时间】:2021-03-02 20:36:18
【问题描述】:

对于一个 wordpress 网站,我想制作一个带有文件上传按钮的表单。我是 wordpress 和 php 的新手,只是想尝试一下。

我在网上搜索并查看了文档,似乎很清楚您必须做什么,但不清楚您需要在哪里做。免费插件也不能解决问题,因为它们只允许您以管理员身份将图像上传到媒体库文件夹。

我尝试在包含自定义 html 和 php 的页面上添加一个块只是为了测试,但我遇到了错误,这似乎不是要走的路。

现在我正在尝试在functions.php中添加php代码,在浏览器中我看到有一个发布请求,但我仍然没有在服务器上看到上传的图像。

这是我在functions.php中的代码

$upload_dir = '/var/www/html/wp-content/uploads/2020/11/';

if (isset($_POST['ImageToUpload']) && !empty($_FILES)){
    $name = basename($_FILES["pictures"]["name"]);
    $tmp_name = $_FILES["pictures"]["tmp_name"];
    move_uploaded_file($tmp_name, "$uploads_dir/$name");
}

【问题讨论】:

    标签: php wordpress file upload


    【解决方案1】:

    创建一个页面模板以创建表单并将您的代码移动到那里。
    您还需要使用与页面相同的表单操作处理程序。

    第一次渲染页面模板将渲染表单,当表单提交时,同一页面将处理表单。

    <?php
    
      // Form is Submitted
      if (isset($_POST['ImageToUpload']) && !empty($_FILES)){
        .... rest of the code to process the form 
    
    ?>
    // Render the form when it is GET Request
    <form action="<?php the_permalink(); ?>" id="ImageToUpload" method="post">
    <label for="name">Name:</label>
    
    <input type="text" name="name" id="name" value='' />
    </form>
    

    【讨论】:

    • 文件要上传到哪里?
    猜你喜欢
    • 2014-07-22
    • 2015-11-24
    • 2016-11-04
    • 2016-04-11
    • 2014-06-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-29
    相关资源
    最近更新 更多