【问题标题】:How to add simple image upload functionality to WP plugin如何向 WP 插件添加简单的图像上传功能
【发布时间】:2012-01-13 12:31:10
【问题描述】:

我想为我的 WP 插件添加简单的图片上传功能。所以带有上传按钮的简单表单。我不想为此使用 WP 中包含的标准厚盒。

当您按下按钮文件选择对话框将出现,您从驱动器中选择文件并将其添加到输入框中。 然后,当您按下插件选项的“保存”按钮时,它将与表单一起发送并在服务器端处理。

我想知道服务器部分是否准备好使用 WP 功能。 因为我想将上传图像路径也保存到数据库选项表中。

编辑:添加 PHP 标记,因为 wordpress 是一种 PHP 语言

【问题讨论】:

  • chubbyk,到目前为止,您尝试过什么?有很多 php 上传脚本或 jquery 上传脚本(wordpress 使用 jquery),但您似乎没有尝试过任何事情或自己对这个问题进行任何研究。
  • 3.3 还将改变有关媒体库的所有内容,这可能意味着您希望在它发布后尽快按照这些规范进行设计。 (它应该有一个盒子样式的选项)。

标签: php wordpress image-processing upload


【解决方案1】:

你很幸运——我目前正在开发一个允许为 MarketPress 上传图片的模组。这是我的骨架,缩进很差的脚本。这应该有助于您开始思考?

<form enctype="multipart/form-data" action="" method="post">
    <input type="hidden" name="MAX_FILE_SIZE" value="10240" />
    Send this file: <input name="userfile" type="file" />
    Send this file: <input name="userfile2" type="file" />
    <input type="submit" value="Send File" />
</form>

<?php
if ($_POST['MAX_FILE_SIZE'] == '10240' ){
   $uploaddir = 'public_html/uploads';
   $uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
   $validfiletype;
if ( preg_match('/\\.(exe|com|bat|zip|doc|txt)$/i', $_FILES['userfile']['name']) )
    $validfiletype = 0;
elseif( preg_match('/\\.(jpg|jpeg|gif|png|pdf|psd)$/i', $_FILES['userfile']['name']) ) 
    $validfiletype = 1;

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
    echo "File is valid, and was successfully uploaded.\n";
} else {
    echo "File upload unsuccessful.";
}}
?>

【讨论】:

  • 这主要是我在另一个应用程序中使用的代码——它没有集成 WordPress,我还没有对其进行修饰。但是如果你正在开发一个插件,你应该能够自己处理。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-02-03
  • 1970-01-01
  • 2021-03-11
  • 2012-08-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多