注册到媒体库

Add from server 插件

功能:批量注册到媒体库

优点:是可以直接将文件同步到oss中,可以指定文件夹,速度很快。

缺点:不能区分哪些已经上传,要手动选择,麻烦!

新问题:不用默认文件夹上传时,虽然成功上传到oss中,但媒体库没有。

Bulk Media Register 插件

功能:将本地指定文件夹中媒体批量注册到媒体库。

优点:可以指定文件夹,可以浏览图片缩略图,**可以查看未上传的媒体!**一次可同步大量文件,在后台运行即可。

缺点:可以导入媒体库中,但不能导入oss中,虽然链接已经写好了,但文件并未上传到oss

另外,速度有些慢,可能是开了Smush压缩导致的

本人将采用Bulk插件和oss上传代码实现媒体注册

上传到oss

将文件批量导入oss

以下是上传到oss代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import oss2
import os

def oss(name,path):
endpoint='http://oss-cn-beijing.aliyuncs.com'#地区修改
auth=oss2.Auth('子号','密码')
bucket=oss2.Bucket(auth,endpoint,'bucket名字')
bucket.put_object_from_file(name,path)


if __name__=="__main__":
#到oss的目标目录
#如果要传到oss某个文件夹,最前面不用加/ 和linux不一样,否则报错!
target_path='wp-store/2021/images/'
#上传文件源目录
path=r'/www/wwwroot/www.lthero.cn/wordpress/wp-content/uploads/2021/images'
for each_file in os.listdir(path):
#print(each_file)
each_file_path=os.path.join(path,each_file)
#oss(目标地址,源地址)
oss(target_path+each_file,each_file_path)
print('success!')

执行完后,媒体库的图片就正常显示了。

以上

[loginshow]

目前采用第二种方法,可以下载到指定目录并上传到oss!

但又发现,上传时速度奇慢,而且每隔5、6个就停止了。。我现在怀疑与Smush有关!!!Smush在压缩时可能造成速度变慢!!!导致Bulk程序停止!!!一会儿试试禁用Smush!!

好,果然是Smush问题,那我现在明白了,Add from server这个插件应该也能批量上传!!!哎,浪费两个小时才明白。。

通过此次经历,又让我学会一件事:解决一个问题的,有困难的方法,有讨巧的方法。但讨巧的方法可能有待改进之处,为什么不试试稍微困难些的方法来开拓视野呢?如果我直接用Add from server,我或许不会去了解用python上传文件到oss

[/loginshow]