php - 如何使用过滤器或原始 php 更改 get_the_post_thumbnail_url 输出
问题描述
这是我的问题:
我想改变这个函数的输出:
$thumb = get_the_post_thumbnail_url();
该 URL 将返回如下内容:
http://mywebsite.local/wp-content/uploads/myimage.png
我的目标只是将 URL 的第一部分更改为:
http://myurl.local/wp-content/uploads/myimage.png
我总是可以使用 str_replace:
$otherthumb = str_replace('http://mywebsite.local', 'http://myurl.local', $thumb);
但我希望能找到已经烤好的东西。
有什么建议吗?
先感谢您!
解决方案
您可以使用 wordpress wp_get_attachment_image_src过滤器挂钩。
function change_image_url( $image, $attachment_id, $size, $icon ){
$otherthumb = str_replace('http://mywebsite.local', 'http://myurl.local', $image[0]);
return $otherthumb;
}
add_filter( 'wp_get_attachment_image_src', 'change_image_url', 10, 4 );
推荐阅读
- elasticsearch - 我的弹性平均查询错误 - 格式错误
- javascript - 如何修改我的自定义输入组件以使用 vee-validate?
- javascript - 在连接字符串中使用 Dbname 时出现 MongoDB/Mongoose 连接错误
- python - 图像处理:将普通图片转换为具有内在矩阵的 FishEye 图像
- android - Android TV 上的文件提供程序问题
- php - 如何在视图中调用辅助类的函数 - Laravel 5.8?
- spring-boot - Thymeleaf Spring 验证不显示
- javascript - 过滤 JS 问题
- opengl - glColor3f 和 glColor3d 的区别
- vb.net - 使用带有集成用户的访问令牌在 Megento 2.1.10 上出现 401 错误