'漏洞', 'menu.item.settings' => '设置', 'menu.item.autoUpdatesSettings' => 'Autoupdates', 'menu.item.subscriptions' => 'Subscriptions', 'plugin.noJsText' => '请启用浏览器中的 JavaScript 以使用此插件。', 'dashboard.widget.vulnerabilities.title' => '{productName}:站点漏洞', 'dashboard.widget.attacks.title' => '漏洞保护', 'dashboard.widget.noJsText' => '请启用浏览器中的 JavaScript 以访问此小部件。', ]; $messagesFrontend = [ 'backgroundTasksContext.polling.error' => '无法查询后台任务', 'dateTimeDisplay.format' => '{tense, select, past{{timeCategory, select, minutes{{minutes, plural, =0{不到一分钟前} other{约 {minutes} 分钟前}}} hours{{hours, plural, =0{不到一小时前} other{约 {hours} 小时前}}} other{{dateTime, date, medium} {dateTime, time, short}}}} future{{timeCategory, select, minutes{{minutes, plural, =0{一分钟内} other{约 {minutes} 分钟内}}} hours{{hours, plural, =0{一小时内} other{约 {hours} 小时内}}} other{{dateTime, date, medium} {dateTime, time, short}}}} other{{dateTime, date, medium} {dateTime, time, short}}}', 'ellipsisText.showLess' => '显示更少', 'ellipsisText.showMore' => '显示更多', 'loader.text.dataLoading' => '正在加载数据', 'loader.text.dataSaving' => 'Saving data', 'loader.text.mitigationUpdate' => '正在更新站点组件,请稍候', 'loader.text.mitigationDisable' => '正在停用漏洞组件,请稍候', 'loader.text.protection.enabling' => 'Enabling protection, please wait', 'loader.text.protection.disabling' => 'Disabling protection, please wait', 'protectedChip.title' => '已缓解', 'riskLevelChip.label.low' => '低', 'riskLevelChip.label.medium' => 'Med', 'riskLevelChip.label.high' => '高', 'riskLevelChip.label.critical' => 'Crit', 'riskLevelChip.shieldIcon.tooltip' => 'This vulnerability is mitigated by Vulnerability Protection', 'smartUpdateEnabled.confirmation.text' => '本站点已启用 Smart Updates,因此更新可能需要一段时间。您想要继续吗?', 'smartUpdateEnabled.confirmation.button.confirm' => '运行 Smart Update', 'smartUpdateEnabled.confirmation.button.reject' => '取消', 'toast.error.defaultTitle' => '出现一个错误', 'toast.error.installationProperties' => '读取站点属性失败', 'toast.error.accessToken' => '未找到插件访问令牌。请尝试在控制面板界面中对应站点的设置屏幕上刷新访问令牌,或联系您的服务提供商寻求帮助。', 'vulnerabilitiesWidget.activeVulnerabilities.label' => '{counter, plural, other {个未解决的漏洞}}', // Attention! This string shouldn't contain number placeholder (#) itself 'vulnerabilitiesWidget.activeVulnerabilities.tooltip' => '您站点上未解决的漏洞数量,不包括已忽略的漏洞。', 'vulnerabilitiesWidget.activeVulnerabilities.empty.title' => '您的网站上没有未解决的漏洞', 'vulnerabilitiesWidget.activeVulnerabilities.empty.subtitle' => '请确保您的站点已启用漏洞保护功能,以保障网站安全', 'vulnerabilitiesWidget.risk.critical' => '重大风险', 'vulnerabilitiesWidget.risk.high' => '高风险', 'vulnerabilitiesWidget.risk.medium' => '中风险', 'vulnerabilitiesWidget.risk.low' => '低风险', 'vulnerabilitiesWidget.counter.fixed.label' => '{counter, plural, other {个已缓解的漏洞}}', // Attention! This string shouldn't contain number placeholder (#) itself 'vulnerabilitiesWidget.counter.fixed.tooltip' => '通过漏洞保护或组件停用来缓解网站漏洞的数量。', 'vulnerabilitiesWidget.counter.fixed.emptyText' => '自动应用保护规则', 'vulnerabilitiesWidget.counter.attacks.label' => '{counter, plural, other {次攻击已阻止}}', // Attention! This string shouldn't contain number placeholder (#) itself 'vulnerabilitiesWidget.counter.attacks.tooltip' => '过去 365 天内,您站点已阻止的利用漏洞攻击的尝试次数。', 'vulnerabilitiesWidget.counter.attacks.emptyText' => '我们实时跟踪漏洞,并根据漏洞被利用的可能性确定其优先级。', // unused 'vulnerabilitiesWidget.somethingNotProtected' => '保护已开启,但仍有漏洞未缓解?', 'vulnerabilityList.bulkActions.selected' => '{count, plural, =0 {未选择任何漏洞} other {# 个已选择}}', 'vulnerabilityList.bulkActions.update' => '更新', 'vulnerabilityList.searchField.label' => '搜索', 'securityRiskChip.label' => '{score, number, ::.0} Security Risk', 'securityRiskChip.shieldIcon.tooltip' => 'Security Risk is reduced by Vulnerability Protection', 'settings.title' => '设置', 'settings.actions.backAriaLabel' => 'Back to the previous page', 'settings.analytics.idLabel' => 'User Analytics ID', 'settings.analytics.idNotAvailable' => '不可用', 'settings.analytics.copyToClipboard.buttonLabel' => 'Copy Analytics ID', 'settings.analytics.copyToClipboard.idNotAvailable' => '分析 ID 不可用', 'settings.analytics.copyToClipboard.toast.success' => '分析 ID 已复制到剪贴板', 'settings.analytics.copyToClipboard.toast.error' => '复制分析 ID 到剪贴板失败', 'settings.consent.title' => 'Collect usage statistics', 'settings.consent.description' => 'This plugin uses third-party tools to track usage and improve features. By keeping tracking enabled, you consent to data collection during plugin use. Learn more about this.', 'settings.consent.action.disableTracking' => 'Disable Tracking', 'settings.consent.action.enableTracking' => 'Enable Tracking', 'settings.consent.toast.success.optedIn' => '您已同意收集用户分析数据', 'settings.consent.toast.success.optedOut' => '您不同意收集用户分析数据', 'settings.consent.toast.error.optedInStatus' => '更新分析选择同意/不同意状态失败', 'settings.accessToken.title' => '访问令牌', 'settings.accessToken.description' => '此访问令牌为本网站所独有。它允许此插件与 WP Toolkit(为插件提供支持)通信。令牌每 24 小时自动刷新一次。如有需要,您可以在此处或 WP Toolkit 界面的设置屏幕上手动刷新。', 'settings.accessToken.description.customAppName' => "此访问令牌为本网站独有。它允许此插件与服务后台进行通信。令牌每 24 小时自动刷新一次。如有必要,您可以在此处手动更新。如果令牌更新失败,请联系服务提供商寻求帮助。", 'settings.accessToken.lastRefresh' => 'Last refresh', 'settings.accessToken.lastRefresh.unavailable' => '不可用', 'settings.accessToken.lastRefresh.dateTimeFormat' => '{dateTime, date, medium} {dateTime, time, short}', 'settings.accessToken.refreshButton' => '刷新令牌', 'settings.accessToken.refreshing' => '正在签发新的访问令牌', 'settings.accessToken.refreshSuccess' => '已签发新的访问令牌', 'settings.accessToken.refreshError' => '签发新的访问令牌失败', 'settings.error.unknownInstallation' => '未知 WordPress 安装实例 ID。请尝试在控制面板界面中对应站点的设置屏幕上刷新插件访问令牌,或联系您的服务提供商寻求帮助。', 'pageHeader.settings' => '设置', 'vulnerabilitiesPage.widget.securityRisk.title' => 'Security Risk', 'vulnerabilitiesPage.widget.securityRisk.tooltip' => 'Site Security Risk is calculated from the combined risk of site components, vulnerability protection status, and whether security measures and automatic updates are enabled.', 'vulnerabilitiesPage.widget.updates.title.updatesAvailable' => 'Updates are available', 'vulnerabilitiesPage.widget.updates.title.upToDate' => "Everything's up-to-date", 'vulnerabilitiesPage.widget.updates.button.update' => '更新', 'vulnerabilitiesPage.widget.updates.actions.settingsAriaLabel' => 'Open autoupdate settings', // Gear icon button in Updates widget 'vulnerabilitiesPage.widget.updates.dialog.title' => 'Update Everything', 'vulnerabilitiesPage.widget.updates.dialog.text' => 'Choose components to update on {siteName}. The update cannot be interrupted once it starts.', // {siteName} is the site display name 'vulnerabilitiesPage.widget.updates.dialog.item.core' => 'WordPress {fromVersion} → {toVersion}', // Example: WordPress 3.2.2 → 3.2.9 'vulnerabilitiesPage.widget.updates.dialog.item.asset' => '{componentTitle} {fromVersion} → {toVersion}', // Example: Duplicator 1.3.26 → 1.3.28 'vulnerabilitiesPage.widget.updates.dialog.button.cancel' => '取消', 'vulnerabilitiesPage.widget.updates.dialog.button.update' => '更新', 'autoUpdatesSettings.title' => 'Autoupdates', 'autoUpdatesSettings.description.paragraph1' => 'Configure how WordPress core, plugins, and themes are updated. It\'s recommended to enable automatic security updates that install minor security releases immediately to protect your site from newly discovered vulnerabilities.', 'autoUpdatesSettings.unavailable.message' => 'Autoupdate settings are currently unavailable for this site.', 'autoUpdatesSettings.actions.save' => 'Save', 'autoUpdatesSettings.actions.backAriaLabel' => 'Back to the previous page', 'autoUpdatesSettings.field.core' => 'WordPress core', 'autoUpdatesSettings.field.plugins' => 'Plugins', 'autoUpdatesSettings.field.themes' => 'Themes', 'autoUpdatesSettings.option.disabled.title' => 'Do not install any updates automatically', 'autoUpdatesSettings.option.security.title' => 'Install only security updates automatically', 'autoUpdatesSettings.option.all.title' => 'Install all updates automatically', 'autoUpdatesSettings.core.option.security.description' => 'For example, automatically install 4.7.1, but not 4.8', 'autoUpdatesSettings.plugins.option.security.description' => 'Use individual plugin autoupdate settings, but autoinstall updates if they fix a known vulnerability', 'autoUpdatesSettings.plugins.option.all.description' => 'Ignore individual plugin autoupdate settings for each plugin', 'autoUpdatesSettings.toast.success' => 'Autoupdate settings updated', 'autoUpdatesSettings.toast.error' => 'Failed to update autoupdate settings', 'autoUpdatesSettings.themes.option.security.description' => 'Use individual theme autoupdate settings, but autoinstall updates if they fix a known vulnerability', 'autoUpdatesSettings.themes.option.all.description' => 'Ignore individual theme autoupdate settings for each theme', 'vulnerabilitiesPage.widget.protection.title.notProtected' => 'Protection Disabled', 'vulnerabilitiesPage.widget.protection.title.protected' => 'Protection Enabled', 'vulnerabilitiesPage.widget.protection.title.tooltip.line1.title' => 'Automatic:', 'vulnerabilitiesPage.widget.protection.title.tooltip.line1.text' => 'Protection rules are applied automatically, no user action is required.', 'vulnerabilitiesPage.widget.protection.title.tooltip.line2.title' => 'Non-invasive:', 'vulnerabilitiesPage.widget.protection.title.tooltip.line2.text' => 'Protection rules work like a firewall and do not modify your site\'s code.', 'vulnerabilitiesPage.widget.protection.title.tooltip.line3.title' => 'High-performance:', 'vulnerabilitiesPage.widget.protection.title.tooltip.line3.text' => 'Protection rules are applied only for specific vulnerabilities, ensuring minimal impact on performance.', 'vulnerabilitiesPage.widget.protection.content.notProtected.text' => 'Non-invasive, automated, lightweight protection', 'vulnerabilitiesPage.widget.protection.content.notProtected.poweredBy' => 'Powered by {providerLogo}', // {providerLogo} is an actual logo image of the provider, not text 'vulnerabilitiesPage.widget.protection.content.notProtected.button.enableProtection' => 'Enable Protection', 'vulnerabilitiesPage.widget.protection.content.protected' => '{counter, plural, one {attack blocked} other {attacks blocked}}', // Attention! This string shouldn't contain number placeholder (#) itself 'vulnerabilitiesPage.widget.protection.title.terminated' => 'No protection: terminated', 'vulnerabilitiesPage.widget.protection.subscriptionStatus.suspended' => 'Subscription suspended', 'vulnerabilitiesPage.widget.protection.content.terminated.button.buyNewLicense' => 'Buy New License', 'vulnerabilitiesPage.widget.protection.actionsMenu.disableProtection' => 'Disable Protection', 'vulnerabilitiesPage.widget.protection.actionsMenu.manageSubscription' => 'Manage Subscription', 'vulnerabilityList.vulnerabilityProvidersInfo.source' => '源', 'vulnerabilityList.vulnerabilityTable.disableButton.title' => '停用', 'vulnerabilityList.vulnerabilityTable.disableButton.active.tooltip' => '停用会影响站点功能。', 'vulnerabilityList.vulnerabilityTable.disableButton.inactive.tooltip' => '此插件处于非活动状态。', 'vulnerabilityList.vulnerabilityTable.emptyState.text.protectionDisabled' => '此站点没有已知漏洞', 'vulnerabilityList.vulnerabilityTable.emptyState.text.protectionEnabled' => '此站点存在的所有漏洞均已缓解', 'vulnerabilityList.filtersPanel.chip.affectedPart.core' => '核心', 'vulnerabilityList.filtersPanel.chip.affectedPart.plugin' => '插件', 'vulnerabilityList.filtersPanel.chip.affectedPart.theme' => '主题', 'vulnerabilityList.filtersPanel.chip.protected' => '已缓解', 'vulnerabilityList.filtersPanel.chip.notProtected' => '未缓解', 'vulnerabilityList.filtersPanel.chip.risk.low' => '低风险', 'vulnerabilityList.filtersPanel.chip.risk.medium' => '中风险', 'vulnerabilityList.filtersPanel.chip.risk.high' => '高风险', 'vulnerabilityList.filtersPanel.chip.risk.critical' => '重大风险', 'vulnerabilityList.filtersPanel.chip.updatesAvailable' => '可用更新', 'vulnerabilityList.filtersPanel.chip.noUpdates' => '无更新', 'vulnerabilityList.filtersPopover.button.apply' => '应用过滤器', 'vulnerabilityList.filtersPopover.button.reset' => '重置过滤器', 'vulnerabilityList.filtersPopover.header' => '过滤漏洞', 'vulnerabilityList.filtersPopover.filter.affectedPart.title' => '位置', 'vulnerabilityList.filtersPopover.filter.affectedPart.core' => 'WordPress 核心', 'vulnerabilityList.filtersPopover.filter.affectedPart.plugin' => '插件', 'vulnerabilityList.filtersPopover.filter.affectedPart.theme' => '主题', 'vulnerabilityList.filtersPopover.filter.protection.title' => '已通过保护缓解', 'vulnerabilityList.filtersPopover.filter.protection.protected' => '已缓解', 'vulnerabilityList.filtersPopover.filter.protection.notProtected' => '未缓解', 'vulnerabilityList.filtersPopover.filter.riskLevel.title' => '风险等级', 'vulnerabilityList.filtersPopover.filter.riskLevel.low' => '低风险', 'vulnerabilityList.filtersPopover.filter.riskLevel.medium' => '中风险', 'vulnerabilityList.filtersPopover.filter.riskLevel.high' => '高风险', 'vulnerabilityList.filtersPopover.filter.riskLevel.critical' => '重大风险', 'vulnerabilityList.filtersPopover.filter.updates.title' => '更新', 'vulnerabilityList.filtersPopover.filter.updates.available' => '可用', 'vulnerabilityList.filtersPopover.filter.updates.notAvailable' => '不可用', 'vulnerabilityList.vulnerabilityTable.header.risk.label' => '风险', 'vulnerabilityList.vulnerabilityTable.header.risk.tooltip' => '风险等级是漏洞影响的综合评级。它基于 CVSS 评级、EPSS 评级、Patchstack 补丁优先级和其他因素。', 'vulnerabilityList.vulnerabilityTable.header.vulnerability' => '漏洞', 'vulnerabilityList.vulnerabilityTable.header.where' => '位置', 'vulnerabilityList.vulnerabilityTable.header.howToFix' => '如何修复', 'vulnerabilityList.vulnerabilityTable.protectedChip.tooltip' => '漏洞保护已应用保护规则来缓解此漏洞。', 'vulnerabilityList.vulnerabilityTable.sorting.asc' => '升序排序', 'vulnerabilityList.vulnerabilityTable.sorting.desc' => '降序排序', 'vulnerabilityList.vulnerabilityTable.updates.notFound' => '未找到更新', 'vulnerabilityList.vulnerabilityTable.updates.updateTo' => '更新到 {version}', 'vulnerabilityProtection.vulnerabilitiesFetch.error' => '加载站点漏洞数据失败', 'vulnerabilityProtection.tasksLoading.error' => '从服务器更新数据失败', 'vulnerabilityProtection.usageLoading.error' => 'Failed to load data about Vulnerability Protection usage', 'vulnerabilityProtectionDashboard.title' => '漏洞', 'vulnerabilityProtectionDashboard.subtitle' => '在您站点上发现的漏洞列表。', 'vulnerabilityProtectionDashboard.lastUpdate' => '上一次更新:{dateTime}。', 'vulnerabilityProtectionDashboard.ignoreLowLevel.title' => '忽略低风险漏洞', 'vulnerabilityProtectionDashboard.ignoreLowLevel.tooltip' => '在应用安全策略和发送通知时,忽略低风险漏洞会将其视为已解决的漏洞。', 'vulnerabilityProtectionDashboard.vulnerabilitiesStatisticsFetch.error' => '加载站点漏洞统计数据失败', 'vulnerabilityProtectionDashboard.vulnerabilitiesFilteringStatusUpdate.error' => '更新站点漏洞过滤器状态数据失败', 'vulnerabilityProtectionDashboard.protectionInfo.header' => "缓解漏洞需要特定的保护规则。以下是无法使用特定漏洞保护规则的原因:", 'vulnerabilityProtectionDashboard.protectionInfo.poweredBy' => '技术基于', 'vulnerabilityProtectionDashboard.protectionInfo.noPatch.title' => '正在进行中的任务', 'vulnerabilityProtectionDashboard.protectionInfo.noPatch.description' => '针对高影响漏洞的规则通常在漏洞披露后数小时内公布。影响较小漏洞的规则可能需要更长的时间才能创建。', 'vulnerabilityProtectionDashboard.protectionInfo.unlikelyExploited.title' => '低风险', 'vulnerabilityProtectionDashboard.protectionInfo.unlikelyExploited.description' => '有些漏洞的影响很小,或者缺乏真正的利用方法。由于它们不会对网站构成真正的威胁,因此没有必要制定保护规则。', 'vulnerabilityProtectionDashboard.protectionInfo.dbMatch.title' => '数据库中缺少', 'vulnerabilityProtectionDashboard.protectionInfo.dbMatch.description' => '仅存在于 Wordfence 数据库或与 Patchstack 数据库中相应条目不匹配的漏洞不会收到保护规则。', 'vulnerabilityProvider.button.tooltip' => 'See the details about this vulnerability on the {provider} website (opens in a new tab).', 'vulnerabilityProviderInfo.disclosureDateFormat' => '{dateTime, date, long}', 'vulnerabilityMitigation.disable.successMessage' => '漏洞插件已停用', 'vulnerabilityMitigation.disable.errorMessage' => '停用插件失败', 'vulnerabilityMitigation.update.successMessage' => '更新已安装', 'vulnerabilityMitigation.update.errorMessage' => '安装更新失败', 'vulnerabilityProtection.enabling.errorMessage' => 'Failed to enable Vulnerability Protection', 'vulnerabilityProtection.enabling.successMessage' => 'Vulnerability Protection enabled', 'vulnerabilityProtection.disabling.errorMessage' => 'Failed to disable Vulnerability Protection', 'vulnerabilityProtection.disabling.successMessage' => 'Vulnerability Protection disabled', 'widget.attacks.attacksCounter.label' => '{counter, plural, other {次攻击已阻止}}', // Attention! This string shouldn't contain number placeholder (#) itself 'widget.attacks.attacksCounter.tooltip' => '过去 365 天内,您站点已阻止的利用漏洞攻击的尝试次数。', 'widget.attacks.goToPluginButton.text' => '查看详情', 'widget.vulnerabilities.vulnerabilitiesDisplay.totalCounter.label' => '{counter, plural, other {个 WordPress 漏洞已找到}}', // Attention! This string shouldn't contain number placeholder (#) itself 'widget.vulnerabilities.vulnerabilitiesDisplay.barLabel.critical' => '{count, plural, other {{displayedNumber} 个重大风险}}', // {displayedNumber} might contain, for example, '2.3k'; in that case {count} will be 2300 'widget.vulnerabilities.vulnerabilitiesDisplay.barLabel.high' => '{count, plural, other {{displayedNumber} 个高风险}}', // {displayedNumber} might contain, for example, '2.3k'; in that case {count} will be 2300 'widget.vulnerabilities.vulnerabilitiesDisplay.barLabel.medium' => '{count, plural, other {{displayedNumber} 个中风险}}', // {displayedNumber} might contain, for example, '2.3k'; in that case {count} will be 2300 'widget.vulnerabilities.vulnerabilitiesDisplay.barLabel.low' => '{count, plural, other {{displayedNumber} 个低风险}}', // {displayedNumber} might contain, for example, '2.3k'; in that case {count} will be 2300 'widget.vulnerabilities.goToPluginButton.text' => '查看详情', 'widget.vulnerabilities.empty.title' => '您的网站上没有未解决的漏洞', 'widget.vulnerabilities.empty.subtitle' => '请确保您的站点已启用漏洞保护功能,以保障网站安全', 'widget.vulnerabilities.loadingFailed' => '加载漏洞数据失败', 'widget.vulnerabilities.error.installationResponseEmpty' => '加载站点属性失败', 'widget.vulnerabilities.error.vulnerabilitiesResponseEmpty' => '没有关于此站点漏洞的信息', 'wpPart.core' => '核心', 'wpPart.plugin' => '插件', 'wpPart.theme' => '主题', 'vulnerableComponentsTree.emptyState' => 'No vulnerable components', 'vulnerableComponentsTree.componentRow.title' => '{component} {version}', // Examples: 'WordPress 6.9', 'Duplicator 1.3.26' 'vulnerableComponentsTree.componentRow.riskReducedNotice' => 'Risk is mitigated by protection', 'vulnerableComponentsTree.componentRow.button.deactivatePlugin' => '停用', 'vulnerableComponentsTree.componentRow.button.deactivatePlugin.confirmation.title' => 'Deactivate {pluginName}', 'vulnerableComponentsTree.componentRow.button.deactivatePlugin.confirmation.text' => 'Are you sure you want to deactivate {pluginName} plugin?', 'vulnerableComponentsTree.componentRow.button.deactivatePlugin.confirmation.confirm' => '停用', 'vulnerableComponentsTree.componentRow.button.deactivatePlugin.confirmation.reject' => '取消', 'vulnerableComponentsTree.componentRow.button.enableProtection' => 'Enable Protection', 'vulnerableComponentsTree.componentRow.button.update' => '更新到 {version}', 'vulnerableComponentsTree.componentRow.button.update.confirmation.title' => 'Update {assetName}', 'vulnerableComponentsTree.componentRow.button.update.confirmation.text' => 'Are you sure you want to update {assetName} to version {version}?', 'vulnerableComponentsTree.componentRow.button.update.confirmation.confirm' => '更新', 'vulnerableComponentsTree.componentRow.button.update.confirmation.reject' => '取消', 'vulnerableComponentsTree.vulnerabilityRow.fixedIn' => 'Fixed in {version}', // Version of the component (plugin, theme or WordPress core) where the vulnerability is fixed 'vulnerableComponentsTree.vulnerabilityRow.mitigated' => 'mitigated', // The context is: This vulnerability is mitigated. This text appears on the mitigated vulnerability rows. 'vulnerableComponentsTree.vulnerabilityRow.wordfenceCopyrightMessage' => 'This record contains material that is subject to copyright.', 'vulnerableComponentsTree.vulnerabilityRow.wordfenceCopyrightText' => "Copyright 2012-{currentYear} Defiant Inc. License: Defiant hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute this software vulnerability information. Any copy of the software vulnerability information you make for such purposes is authorized provided that you include a hyperlink to this vulnerability record and reproduce Defiant's copyright designation and this license in any such copy.", 'vulnerableComponentsTree.vulnerabilityRow.wordfenceCopyrightReadMore' => 'Read more.', 'confirmationDialog.disableProtection.title' => 'Disable Vulnerability Protection', 'confirmationDialog.disableProtection.mainText' => 'Are you sure you want to disable protection for {siteName}?', 'confirmationDialog.disableProtection.additionalLine1' => '{amount, plural, one {# vulnerability was mitigated since protection was enabled} other {# vulnerabilities were mitigated since protection was enabled}}', 'confirmationDialog.disableProtection.additionalLine2' => '{amount, plural, one {# attack blocked in the last 365 days} other {# attacks blocked in the last 365 days}}', 'confirmationDialog.disableProtection.button.confirm' => 'Disable', 'confirmationDialog.disableProtection.button.reject' => '取消', 'purchaseProtectionDialog.wpt.initial.title' => '漏洞保护', 'purchaseProtectionDialog.wpt.initial.subtitle' => "You'll be redirected to sign up or sign in to your WebPros account to continue the purchase", 'purchaseProtectionDialog.wpt.initial.description' => 'Vulnerability Protection automatically mitigates vulnerabilities in WordPress plugins, themes, and WordPress core without changing the site code.', 'purchaseProtectionDialog.wpt.initial.poweredBy' => 'Powered by {providerLogo}', // {providerLogo} is a clickable logo image of the provider 'purchaseProtectionDialog.wpt.initial.button.iHaveLicense' => 'I Have A License', 'purchaseProtectionDialog.wpt.initial.button.signInAndBuy' => 'Buy', 'purchaseProtectionDialog.wpt.waiting.title' => 'Waiting for purchase completion', 'purchaseProtectionDialog.wpt.waiting.description' => 'Complete your purchase in the newly opened tab. This dialog will update automatically once it\'s done.', 'purchaseProtectionDialog.wpt.waiting.button.cancel' => '取消', 'purchaseProtectionDialog.wpt.success.title' => 'Subscription Activated', 'purchaseProtectionDialog.wpt.success.description' => 'Vulnerability protection will be enabled on your site shortly', 'purchaseProtectionDialog.wpt.success.suspended.title' => 'Subscription Suspended', 'purchaseProtectionDialog.wpt.success.suspended.description' => 'Your subscription was activated, but it is currently suspended. Vulnerability Protection will be available until the subscription is terminated. Please update your payment method to continue using Vulnerability Protection.', 'purchaseProtectionDialog.wpt.success.terminated.title' => 'Subscription Terminated', 'purchaseProtectionDialog.wpt.success.terminated.description' => "Your subscription was found, but it has been terminated. Vulnerability Protection isn't available. Please buy a new subscription to use Vulnerability Protection.", 'purchaseProtectionDialog.wpt.success.button.ok' => 'OK', 'purchaseProtectionDialog.wpt.success.button.manageSubscription' => 'Manage Subscription', 'purchaseProtectionDialog.wpt.success.button.buyNewLicense' => 'Buy New License', 'purchaseProtectionDialog.wpt.error.title' => 'Subscription Not Activated', 'purchaseProtectionDialog.wpt.error.description' => "We couldn't activate your subscription right now. If your purchase is complete, it should be activated shortly.", 'purchaseProtectionDialog.wpt.error.hint' => "To activate your subscription manually, use the \"{iHaveLicenseButtonTitle}\" button and enter the subscription ID sent to your email after purchase.", 'purchaseProtectionDialog.wpt.error.button.retry' => 'Try Again', 'purchaseProtectionDialog.wpt.error.button.cancel' => 'Close', 'purchaseProtectionDialog.wpt.toast.popupBlocked' => 'Make sure to allow pop-ups for this site to continue with the purchase', 'purchaseProtectionDialog.wpt.loadingWindow.message' => 'Loading, please wait a moment...', 'purchaseProtectionDialog.wpt.activation.title' => 'License Activation', 'purchaseProtectionDialog.wpt.activation.description' => 'Activate your license manually with your subscription ID:', 'purchaseProtectionDialog.wpt.activation.input.label' => 'Subscription ID', 'purchaseProtectionDialog.wpt.activation.button.activate' => 'Activate', 'purchaseProtectionDialog.wpt.activation.link.forgotId' => 'Forgot your subscription ID?', 'purchaseProtectionDialog.wpt.activationGuidDetected.title' => 'License Activation', 'purchaseProtectionDialog.wpt.activationGuidDetected.description' => 'Your subscription ID was detected automatically', 'purchaseProtectionDialog.wpt.activationGuidDetected.input.label' => 'Subscription ID', 'purchaseProtectionDialog.wpt.activationGuidDetected.link.forgetId' => 'Forget this subscription ID', 'purchaseProtectionDialog.wpt.activationGuidDetected.button.activateAnotherId' => 'Use another ID', 'purchaseProtectionDialog.wpt.activationGuidDetected.button.activate' => 'Activate', 'purchaseProtectionDialog.custom.initial.title' => '漏洞保护', 'purchaseProtectionDialog.custom.initial.description' => 'Vulnerability Protection automatically mitigates vulnerabilities in WordPress plugins, themes, and WordPress core without changing the site code.', 'purchaseProtectionDialog.custom.initial.poweredBy' => 'Powered by {providerLogo}', // {providerLogo} is a clickable logo image of the provider 'purchaseProtectionDialog.custom.initial.button.buy' => 'Buy', 'purchaseProtectionDialog.custom.afterPurchase.title' => 'Complete Your Purchase', 'purchaseProtectionDialog.custom.afterPurchase.description' => 'If you have completed the purchase, reload the page to apply the changes.', 'purchaseProtectionDialog.custom.afterPurchase.button.reload' => 'Reload', 'purchaseProtectionDialog.custom.toast.invalidUrl' => 'Purchase URL is not valid. Please contact your hosting provider.', 'subscriptionsPage.title' => 'Subscriptions', 'subscriptionsPage.backButton.ariaLabel' => 'Back', 'subscriptionsPage.vpCard.title' => '漏洞保护', 'subscriptionsPage.vpCard.description' => 'Non-invasive, automated, lightweight protection against WordPress vulnerabilities.', 'subscriptionsPage.vpCard.subscriptionId' => 'Subscription ID', 'subscriptionsPage.vpCard.lastPayment' => 'Last payment', 'subscriptionsPage.vpCard.nextPayment' => 'Next payment', 'subscriptionsPage.vpCard.dateTimeFormat' => '{value, date, medium} {value, time, short}', 'subscriptionsPage.vpCard.button.manageSubscription' => 'Manage Subscription', 'subscriptionsPage.vpCard.copySubscriptionId' => 'Copy subscription ID', 'subscriptionsPage.vpCard.copySuccess' => 'Subscription ID copied to clipboard', 'subscriptionsPage.vpCard.statusChip.suspended' => 'Suspended', 'subscriptionsPage.vpCard.statusChip.terminated' => 'Terminated', 'subscriptionsPage.vpCard.button.forgetLicense' => 'Forget This License', 'subscriptionsPage.vpCard.button.buyNewLicense' => 'Buy New License', 'subscriptionsPage.empty.title' => 'No Subscriptions Yet', 'subscriptionsPage.empty.description' => 'You don\'t have any active subscriptions.', ]; // This function is only to make Psalm check the types of $messagesBackend and $messagesFrontend $dummyFunc = /** * @return list{array, array} */ function() use ($messagesBackend, $messagesFrontend) { return [ $messagesBackend, $messagesFrontend ]; };