2010-04-01 127 views
2

我使用Wordpress的add_meta_box()函數將添加自定義元字段添加到添加新帖子頁面like this。我希望這些字段中的一個允許用戶上傳文件,以便單個圖像,pdf,音頻文件或視頻可以與帖子相關聯。如何使用Wordpress自定義字段/元框附加文件?

我見過的最接近的例子是這一個(鏈接被刪除*)。不幸的是,它不符合我的需求,因爲我希望我的文件能夠被Wordpress的媒體上傳器處理 - 所以它應該在之後出現在媒體庫中,並且應該根據媒體設置生成縮略圖。

我認爲理想會有進軍WordPress的現有添加媒體對話,並上傳文件的簡單輸出的URL到一個文本框的方式,但我不明白該怎麼做。 This question是類似的,但答案有點笨拙 - 我想爲我的最終用戶保持這種超級簡單。

我該如何做到這一點?請不要推薦像Flutter或Magic Fields這樣的插件 - 我已經試過這些插件,它們不適合我的目的(我希望圖片可以通過Wordpress的Media Uploader進行處理)。我正在使用Wordpress 3.0-alpha。

(* =鏈接刪除,由於惡意軟件的報告,它是在存檔,但在自己的風險)

+0

你好 @shipshape,我會在你的工作很感興趣。如果可能的話,你是否可以發佈,至少,不要鏈接到檔案下載你的代碼。對於正在尋找關於此主題的答案的所有人來說,這將會很好。 謝謝! – 2011-01-23 20:46:45

回答

1

Image Widget看看 - 一個製作精良的小工具,你想要做什麼,但作爲一個小部件。也許你可以將它轉換爲添加新帖子頁面。

你可以嘗試另一種插件Pods CMS。可能會過度殺毒,但是當你用這個做文件上傳時,它們會自動添加到媒體庫中。

2

我終於想通了這一點爲自己和得到它的工作只是因爲我想,以爲我會後的人誰發現這個問題,是好奇的更新。

我沒有使用任何插件,而是寫了一個自定義函數來處理文件上傳我的主題。我使用了內置的Wordpress函數,例如save_custom_postdata(),wp_handle_upload(),wp_insert_attachment(),wp_generate_attachment_metadata()和wp_update_attachment_metadata()。

我還不得不使用add_action('admin_head'...)添加一些JavaScript,在編輯帖子頁面的表單標籤中添加「multipart/form-data」,以允許上傳文件。

我會後我的代碼,但它是很長,具體到我的項目。

+10

不幸的是,你不會發布至少一些你的代碼中更相關的部分。考慮讓你的生活花上半個小時的時間來回饋社區,以摘錄你的一些解決方案。 – 2011-03-31 03:41:51

+0

完全贊同@Tom Auger的觀點,即使它是特定的代碼,也很高興看到如何處理元框中的文件。 – DashaLuna 2011-07-05 10:04:31