PluginProbe ʕ •ᴥ•ʔ
WPML Multilingual & Multicurrency for WooCommerce / 5.5.7
WPML Multilingual & Multicurrency for WooCommerce v5.5.7
5.5.7 5.3.8 5.3.9 5.4.3 5.4.4 5.4.5 5.5.1 5.5.1.1 5.5.2.2 5.5.2.3 5.5.3 5.5.3.1 5.5.4 5.5.5 5.5.6 trunk 0.9 1.0 1.1 1.2 1.3 1.4 1.5 2.0 2.2 2.3 2.3.1 2.3.2 3.0 3.0.1 3.1 3.2 3.2.1 3.2.2 3.3 3.3.1 3.3.2 3.3.3 3.3.4 3.4 3.4.1 3.4.2 3.4.3 3.5 3.5.1 3.5.2 3.5.3 3.5.4 3.5.5 3.6 3.6.1 3.6.10 3.6.11 3.6.2 3.6.3 3.6.4 3.6.5 3.6.5.1 3.6.6 3.6.7 3.6.8 3.6.9 3.7 3.7.1 3.7.10 3.7.11 3.7.12 3.7.13 3.7.14 3.7.15 3.7.16 3.7.2 3.7.3 3.7.4 3.7.5 3.7.6 3.7.7 3.7.8 3.7.9 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.9.0 3.9.1 3.9.1.1 3.9.2 3.9.3 3.9.4 3.9.5 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.10.0 4.10.1 4.10.2 4.10.3 4.10.4 4.11.2 4.11.3.2 4.11.5 4.11.6 4.12.1 4.12.4 4.12.5 4.12.6 4.2.0 4.2.0.1 4.2.1 4.2.1.1 4.2.10 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.2.7 4.2.7.1 4.2.8 4.2.8.1 4.2.9 4.3.0 4.3.1 4.3.2 4.3.2.1 4.3.3 4.3.4 4.3.5 4.3.6 4.3.7 4.4.0 4.4.1 4.4.2 4.4.2.1 4.5.0 4.6.0 4.6.1 4.6.2 4.6.2.1 4.6.3 4.6.5 4.6.6 4.6.7 4.7.0 4.7.1 4.7.2 4.7.3 4.7.4 4.7.5 4.7.6 4.7.7 4.7.8 4.7.9 4.8.0 4.9.0 4.9.1 5.0.1 5.0.2 5.1.1 5.1.2 5.1.3 5.2.0 5.2.1 5.3.2 5.3.3.1 5.3.4 5.3.5 5.3.6 5.3.7
woocommerce-multilingual / classes / AdminNotices / TranslationControlMovedNotice.php
woocommerce-multilingual / classes / AdminNotices Last commit date
CachePlugins.php 2 weeks ago CurrencySwitcherUseTwigTemplate.php 2 weeks ago ExportImport.php 2 weeks ago MultiCurrencyMissing.php 2 weeks ago RestrictedScreens.php 2 weeks ago Review.php 2 weeks ago TranslationControlMovedNotice.php 2 weeks ago WizardNotice.php 2 weeks ago
TranslationControlMovedNotice.php
72 lines
1 <?php
2
3 namespace WCML\AdminNotices;
4
5 use WPML\LIB\WP\User;
6 use WPML_Notices;
7 use IWPML_Backend_Action;
8 use IWPML_Frontend_Action;
9 use IWPML_DIC_Action;
10
11 class TranslationControlMovedNotice implements IWPML_Backend_Action, IWPML_Frontend_Action, IWPML_DIC_Action {
12 const NOTICE_ID = 'wcml-translation-control-moved';
13 const NOTICE_GROUP = 'wcml-admin-notices';
14
15 const NOTICE_CLASSES = [
16 'wcml-translation-control-moved-notice',
17 ];
18
19 private $wpmlNotices;
20
21 public function __construct( WPML_Notices $wpmlNotices ) {
22 $this->wpmlNotices = $wpmlNotices;
23 }
24
25 public function add_hooks() {
26 add_action( 'admin_notices', [ $this, 'addNoticeWhenWPMLIsActive' ] );
27 }
28
29 public function addNoticeWhenWPMLIsActive() {
30
31 $notice = $this->wpmlNotices->get_new_notice(
32 self::NOTICE_ID,
33 $this->getNoticeText(),
34 self::NOTICE_GROUP
35 );
36
37 if ( $this->wpmlNotices->is_notice_dismissed( $notice ) ) {
38 return;
39 }
40
41 $notice->set_css_class_types( 'info' );
42 $notice->set_css_classes( self::NOTICE_CLASSES );
43 $notice->set_dismissible( true );
44 $notice->add_user_restriction( User::getCurrentId() );
45 $notice->set_restrict_to_screen_ids( [ 'woocommerce_page_wpml-wcml' ] );
46
47 $this->wpmlNotices->add_notice( $notice );
48 }
49
50 private function getNoticeText(): string {
51
52 $text = '';
53 $text .= '<h2>' . esc_html__( 'The Translation Controls Have Moved', 'woocommerce-multilingual' ) . '</h2>';
54
55 $text .= '<p>' . esc_html__( 'We updated WPML Multilingual & Multicurrency for WooCommerce to streamline your translation work.', 'woocommerce-multilingual' ) . '</p>';
56
57 $text .= '<p><strong>';
58
59 $text .= sprintf(
60 /* translators: %1$s and %2$s are opening and closing HTML link tags */
61 esc_html__( 'Translate your whole site\'s content, including products, from %1$sWPML &rarr; Translation Management%2$s.', 'woocommerce-multilingual' ),
62 '<a href="' . \WCML\Utilities\AdminUrl::getWPMLTMDashboard() . '">',
63 '</a>'
64 );
65
66 $text .= '</strong>';
67 $text .= '<span class="recommended-badge">Recommended</span></p>';
68
69 return $text;
70 }
71 }
72