WordPress 技巧:防止上傳的圖片重名,加上時間戳

    給圖片增添時間戳,提升數據庫效率

    先簡單梳理一下 WordPress 后臺上傳圖片的流程是,WordPress 使用?media_handle_upload?函數處理整個圖片上傳的過程,他的步驟是:

    1. 使用?wp_handle_upload?把圖片上傳到 WordPress 上傳目錄。

    2. 然后整理好數據提交給?wp_insert_attachment

    3.?wp_insert_attachment?函數調用?wp_insert_post?插入到 WordPress 的 posts 數據庫表。

    4.?wp_insert_post?把圖片信息插入到 WordPress 的 posts 數據庫表之前,會使用?wp_unique_post_slug?函數設置唯一的 post_slug。

    wp_unique_post_slug?會到數據庫里面檢查圖片的名字是否已經有了,有了就會重命名圖片的名字,比如 1.jpg,就會被重命名為 1-2.jpg,如果 1-2.jpg 名字也有了,就會重命名為 1-3.jpg,以此類推,一直到名字唯一為止。這樣會造成上百條 SQL 請求

    我們不可能讓用戶堅持不上傳 1.jpg 這樣太常用的圖片名字,但是又要為了防止這個大量 SQL 查詢的過程,我們應該在源頭就杜絕這個問題,把圖片的名字更改了。

    add_filter('wp_handle_upload_prefilter', function($file) {
    if(strlen($file['name'])<=7){ $file['name']	= time().'-'.$file['name']; } return $file; }); 
    

    這段代碼就是如果圖片的名字(包括 .jpg 后綴名)超過7個字符,就在圖片名字前面加上一個時間戳,這樣再重復檢查的概率可以認為是沒有了。

    來源于:https://blog.wpjam.com/m/add-timestamp-2-image-filename/

    給TA贊賞
    共{{data.count}}人
    人已贊賞
    ??
    Npcink上的部份代碼及教程來源于互聯網,僅供網友學習交流,若您喜歡本文可附上原文鏈接隨意轉載。
    無意侵害您的權益,請發送郵件至 1355471563#qq.com 或點擊右側 私信:Muze 反饋,我們將盡快處理。
    ?
    購物車
    優惠劵
    搜索
    主站蜘蛛池模板: 狠狠色成人一区二区三区| 午夜视频一区二区| 无码人妻aⅴ一区二区三区| 色多多免费视频观看区一区| 国产精品揄拍一区二区| 国产av天堂一区二区三区| 国产成人av一区二区三区在线观看 | 精品一区二区ww| 精品乱码一区二区三区四区| 国产精品xxxx国产喷水亚洲国产精品无码久久一区 | 日韩精品一区二区三区视频| 国产一区在线mmai| 亚洲一区二区久久| 无码视频一区二区三区在线观看 | 成人一区二区免费视频| 国产一区二区三区在线免费观看 | 国产精品一区不卡| 日韩成人无码一区二区三区 | 国产一区二区在线|播放| AV鲁丝一区鲁丝二区鲁丝三区 | 日本一区高清视频| 国产在线精品观看一区| 精品天海翼一区二区| 国产av一区二区精品久久凹凸 | 一区二区三区四区精品视频| 久久99国产精一区二区三区| 国产在线精品一区二区三区直播| 一区二区三区国模大胆| 国产精品免费大片一区二区| 日本一区二区在线免费观看| 日韩精品一区二区三区中文字幕| 波多野结衣中文一区| 杨幂AV污网站在线一区二区| 国产精品一区12p| 国精品无码一区二区三区左线| 国产在线一区二区三区| 精品人妻码一区二区三区| 亚洲中文字幕乱码一区| 国产一区二区三区免费看| 国产伦精品一区二区三区视频金莲| 精品人妻少妇一区二区三区|