如何使用静态图像URL动态生成图像?

时间:2012-03-06 作者:Jared

我想做的很简单。

每当有人来访时,说site.com/socialproof.png, 我希望它使用重写规则将其指向插件文件夹中的文件。

我是否可以使用WP的重写规则来执行此操作,或者是否需要手动将其添加到.htaccess 文件我将使用什么作为重写规则来执行此操作?谢谢

1 个回复
最合适的回答,由SO网友:Brian Fegter 整理而成

使用。htaccess重写不是一个好方法,因为当插件被禁用时,它会失败。

您也无法使用WordPress重写图像URL,因为其本机请求解析无法识别单个文件名。但是,如果图像不存在,web服务器会将请求重定向到WordPress进行处理。这使我们能够连接并包含您的动态图像模板。

add_action(\'init\', \'wpse_44612_init\', 0);
function wpse_44612_init(){
    if(preg_match(\'/socialproof\\.png/\', $_SERVER[\'REQUEST_URI\'])){
        require_once(ABSPATH.\'/wp-content/plugins/SocialProof/classes/SocialProofMakeImage.php\');
        die();
    }
}
使用这种方法,URL显示为静态图像,但通过PHP类文件动态生成。

您可以下载插件文件here.

结束