将横幅添加到自定义插件的安装对话框中

时间:2018-05-30 作者:Robin K

我为客户端编写了一个自定义插件,为自己编写了另一个插件。我的客户端有9个wordpress网站正在使用这个版本,我没有驱动器可以手动上传9次新版本。因此,我创建了某种自定义存储库。

一切正常,只有一件事:

Verdict Grabber Auto-Update Modal

如何将图像放置到模式标题中,因为它用于查看Wordpress存储库中托管的插件?有可能吗?

我是否以任何方式更改插件信息响应?查看来自http://api.wordpress.org/plugins/info/1.0 没有真正给我提供有用的信息。

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

因为没有人能回答我的问题,我今天早上找到答案后,我会自己回答。

执行API调用以获取插件信息时,响应对象必须包含横幅数组:

$response->banners = [
    \'low\' => \'http://yourdomain.com/banner_772x250.png\',
    \'high\' => \'http://yourdomain.com/banner_1544x500.png\',
];
图像需要称为“低”(精确为772x250像素)和/或“高”(1544x500像素)。只需设置两者中的一个。我推荐“低”一个,因为“高”一个似乎只用于视网膜显示(再也找不到来源)。

今天一大早,我通过查看文件找到了这个问题的答案

wp管理/包括/插件安装。php

第526行+(WP版本4.9.6):

if ( ! empty( $api->banners ) && ( ! empty( $api->banners[\'low\'] ) || ! empty( $api->banners[\'high\'] ) ) ) {
    $_with_banner = \'with-banner\';
    $low  = empty( $api->banners[\'low\'] ) ? $api->banners[\'high\'] : $api->banners[\'low\'];
    $high = empty( $api->banners[\'high\'] ) ? $api->banners[\'low\'] : $api->banners[\'high\'];
    ?>
    <style type="text/css">
        #plugin-information-title.with-banner {
            background-image: url( <?php echo esc_url( $low ); ?> );
        }
        @media only screen and ( -webkit-min-device-pixel-ratio: 1.5 ) {
            #plugin-information-title.with-banner {
                background-image: url( <?php echo esc_url( $high ); ?> );
            }
        }
    </style>
    <?php
}
我希望这对某人有帮助。当然是给我的。

结束

相关推荐