You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

对比WordPress两站点get_plugins()结果 提取共有插件版本差异

实现代码

// 筛选两个站点共同安装的插件(取插件路径的交集)
$common_plugin_keys = array_intersect(array_keys($plugins_site_one), array_keys($plugins_site_two));

// 生成结构化结果数组,可直接用于后续业务处理
$plugin_compare_result = [];
foreach ($common_plugin_keys as $plugin_path) {
    // 插入站点1的插件信息
    $plugin_compare_result[] = [
        'plugin_file' => $plugin_path,
        'name' => $plugins_site_one[$plugin_path]['Name'],
        'version' => $plugins_site_one[$plugin_path]['Version'],
        'site' => 'site_one'
    ];
    // 插入站点2的插件信息
    $plugin_compare_result[] = [
        'plugin_file' => $plugin_path,
        'name' => $plugins_site_two[$plugin_path]['Name'],
        'version' => $plugins_site_two[$plugin_path]['Version'],
        'site' => 'site_two'
    ];
}

// 如需输出参考格式的HTML表格,执行以下代码即可
echo '<table class="s-table">
<thead>
<tr>
<th>插件文件</th>
<th>名称</th>
<th>版本</th>
<th>所属站点</th>
</tr>
</thead>
<tbody>';
foreach ($plugin_compare_result as $item) {
    vprintf("<tr><td>%s</td><td>%s</td><td>%s</td><td>%s</td></tr>", $item);
}
echo '</tbody></table>';

说明

WordPress的get_plugins()返回值的键为插件主文件的相对路径,是插件的唯一标识,因此取键的交集即可准确筛选出两个站点都安装的公共插件,生成的$plugin_compare_result数组结构和要求的输出完全匹配,可直接用于后续处理。

内容的提问来源于stack exchange,提问作者John Smith

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.11 08:48:02