簡體   English   中英

如何手動上傳wordpress發布縮略圖[wp_database]

[英]How to upload wordpress post thumbnail manually [ wp_database ]

我正在嘗試在wordpress之外創建一個外部php腳本來管理自定義后台的帖子(使用Symfony2)。

到目前為止,一切正常。 我只想知道如何通過上傳圖片並將其信息直接注冊到Wordpress數據庫中來手動設置帖子縮略圖,這意味着:

  • 使用哪個上傳目錄
  • 哪個職位類型
  • 職位狀態
  • postMime的維護
  • 要添加的元
  • ...等等

通常,我只想知道如何在不使用Wordpress功能的情況下手動注冊帖子縮略圖。

有任何想法嗎 ?

謝謝 !

為此,您必須手動創建postmeta _wp_attachment_metadata ,它是一個序列化數組。

  1. 首先,您得到縮略圖:

$ file = $ form-> getData(); $ thumb = $ file ['logo'];

  1. 您會得到縮略圖的特征(寬度,高度...):

list($ width,$ height,$ type,$ attr)= getimagesize($ thumb);

  1. 根據經驗特性構建數組:

    $ meta_data_value = array(); $ meta_data_value ['width'] = $ width; $ meta_data_value ['height'] = $ height; $ meta_data_value ['file'] = $ slug。'。'。$ ext;

    $ sizes = array(); $ sizes ['thumbnail'] = array('file'=> $ slug。'。'。$ ext,'width'=> 125,'height'=> 150,'mime-type'=> $ mime); $ sizes ['medium'] = array('file'=> $ slug。'。'。$ ext,'width'=> 250,'height'=> 300,'mime-type'=> $ mime); $ meta_data_value ['sizes'] = $ sizes; $ meta_data_value ['image_meta'] = array('aperture'=> 0,'credit'=>``,'camera'=>``,'caption'=>'','created_timestamp'=> 0,'版權'=>'','focal_length'=> 0,'iso'=> 0,'shutter_speed'=> 0,'title'=>''); $ meta_data_value =序列化($ meta_data_value);

    1. 最后添加帶有Doctrine的postmeta:

      $ meta_data =新的PostMeta(); $ meta_data-> setKey('_ wp_attachment_metadata'); $ meta_data-> setValue($ meta_data_value); $ meta_data-> setPost($ logo); //假設您創建了帖子$ logo $ em-> persist($ meta_data); $ EM->沖洗();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM