Notice: Trying to access array offset on value of type bool in /www/wwwroot/weimahe.com/wp-content/advanced-cache.php on line 472

Notice: Trying to access array offset on value of type bool in /www/wwwroot/weimahe.com/wp-content/advanced-cache.php on line 472
WordPress上传图片时自动将图片重命名为文章标题 - 微码盒
!
也想出现在这里? 联系我们
广告位

WordPress上传图片时自动将图片重命名为文章标题

WordPress 文章上传添加图片时自动重命名图片名称,可以简化操作过程序,之前的文章可以用时间或者 MD5 生成数字重命名所有媒体文件。这里再分享一段,在文章编辑时上传添加图片,自动将图片重命名为m C A 4 Z |文章标题,并自动填充图片 ATL、说明、替代文本、描述等相关信息。将下面代码添加到当前主题函数模板 functions.php 中:

  1. function file_renamer( $filen_ ` j t Game ) {
  2. $info = pathinfo( $filename );
  3. $ext = empty+ & ~ ^ W m k q40; $info['extension'] ) ? '1 a : - Q' : '.' . $info['extension'];
  4. $name = basename( $filename, $ext );
  5. if( $post_id = array_key_exists( "post_id", $_POST) ? $_POST["post_id"] : null ) ] a Z 023;
  6. if1 ? \ } N V40;$post = get_post(1 g ] u U E$post_id)) {
  7. return $poM 2 C xst->post_title . $ext;
  8. &H F c y O + x#125;
  9. }
  10. $my_image_title = $post;
  11. $file['name'] = $my_image_title . - uniqid() . $ext; // uniqid method
  12. // $file['name'] = md5($name) . $ext; // md5 method
  13. // $fis | &le['name'] = bS n Uase64_encode( $name ) . $ext; // base64 method
  14. return $filename;
  15. }
  16. add_filter( 'sanitize_file_name', 'file_renamer', 10, 1 );
  17. // 上传时自动设置图像标题、替代文本、标题和描述
  18. add_action( 'add_attachment', 'my_set_image_meta6 , 4 [ [_upon_image_upload' );
  19. function my_set_image_met\ % %a_upon_imN t x _ q m { 1 aage_upload( $post_I9 F t i h . 9 pD ) {
  20. // 检查上传的文件是否是图片
  21. if ( wp_atA # 4 Vtachment_is_image( $post_ID ) ) ; d Q W q b123;
  22. if( issetd 6 @ B B 9 4 R( $_REQUEST['post_id'] ) ) {
  23. $post_id = $_RZ 4 k p G = ]EQUEST['post_id'];
  24. } else {
  25. $post_id = false;
  26. &T s , * / `#125;
  27. if ( $post_id != false ) {
  28. $my_image_title = get_the_title( $post_id );
  29. } else {
  30. $my_image_title = get_post( $post_ID )->post_titlT O M 7 _ ?e;
  31. }
  32. // 清理标题中特殊字符
  33. $my_image_title = preg_rF C o ^ V F ) ` -eplace( '%\s*[-_\s]+\s*%', ' ', $my_image_title f E y 2 l41;;
  34. // 将第一个字母大写
  35. $myl 6 3 Q v_image_title = ucwords( strtolower( $my_i- @ R 0 G Jmage_title ) );
  36. // 创建包含标题、说明、描述的数组
  37. $my_image_meta = arraya v O B 7 $(
  38. 'IDF = v |' => $post_ID, // ID
  39. 'post_title' => $my_image_title, // 图像标题
  40. 'post_excerpt' => $my_image_title, // 图像说明
  41. 'post_content' => $my_imageZ Q 4 \ ^ z # l_title, // 图像描述
  42. );
  43. // 添加图像 Alt
  44. update_post_meta( $post_ID, 'p t j H m t @_wp_aq V ! : ^ /ttachment_image_alt', $my_image_title );
  45. // 添加标题、说明、描述
  46. wp_update_post( $my_image_meta );
  47. }
  48. }

提示:上面的2 = _方法只适合在文章编辑页面I U 5使用,如果在媒体库上传无效。另外,图片名称为中文貌似有的主机环境并不支持。

给TA打赏
共{{data.count}}人
人已打赏
WordPress教程

WordPress 获取所有分类列表

2022-8-19 13:56:45

WordPress教程

轻松调整WooCommerce产品详情页SKU位置

2022-8-19 13:58:02

下载说明

  • 1、微码盒所提供的压缩包若无特别说明,解压密码均为weimahe.com
  • 2、下载后文件若为压缩包格式,请安装7Z软件或者其它压缩软件进行解压;
  • 3、文件比较大的时候,建议使用下载工具进行下载,浏览器下载有时候会自动中断,导致下载错误;
  • 4、资源可能会由于内容问题被和谐,导致下载链接不可用,遇到此问题,请到文章页面进行反馈,以便微码盒及时进行更新;
  • 5、其他下载问题请自行搜索教程,这里不一一讲解。

站长声明

本站大部分下载资源收集于网络,只做学习和交流使用,版权归原作者所有;若为付费资源,请在下载后24小时之内自觉删除;若作商业用途,请到原网站购买;由于未及时购买和付费发生的侵权行为,与本站无关。本站发布的内容若侵犯到您的权益,请联系本站删除,我们将及时处理!
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索