天天看點

WordPress: 使用 wp_insert_attachment 上傳附件

我們來研究一下如何在主題或者插件的開發中上傳附件:

下面先主要描述一下流程,假如我們通過一個這個樣的表單上傳了一張圖檔:

那麼我們在背景可以通過 <code>$_FILE['register_form_image']</code> 來擷取到這個上傳的檔案:

<a></a>

根據 <code>wp_insert_attachment</code> 這個函數的文檔指引,我們需要作如下幾步:

将檔案移動到目标的位置

生成所需的配置,然後調用 <code>wp_insert_attachment</code>

插入附件的 MetaData

我們可以通過調用 <code>wp_upload_dir()</code> 函數來獲得目标上傳路徑的資訊,大概是這個樣子:

然後我們就來把 <code>$_FILES</code> 的臨時檔案移動過去。

這裡的配置有五個參數,第一個是 <code>guid</code> ,這個是外部連結的 url,看下面的代碼可以明白;第二個是 <code>post_mime_type</code> ,根據上傳時傳遞的 mime 類型輸入即可;第三個是标題,采用去除擴充名之後的檔案名;第四個是文章内容,留白,第五個<code>post_status</code> 取值為 inherit;

然後是調用 <code>wp_insert_attachment</code> ,注意,第一個參數就是上面的選項數組,第二個參數是第一步指定的檔案路徑,第三個是這個附件“附加到”的文章 ID;

參照文檔照做即可。

本文轉自黃聰部落格園部落格,原文連結:http://www.cnblogs.com/huangcong/p/5421807.html,如需轉載請自行聯系原作者