Changeset 3483578
- Timestamp:
- 03/16/2026 08:18:18 AM (12 days ago)
- Location:
- wpc-linked-variation
- Files:
-
- 43 added
- 7 edited
-
tags/4.4.0 (added)
-
tags/4.4.0/assets (added)
-
tags/4.4.0/assets/css (added)
-
tags/4.4.0/assets/css/backend.css (added)
-
tags/4.4.0/assets/css/frontend.css (added)
-
tags/4.4.0/assets/js (added)
-
tags/4.4.0/assets/js/backend.js (added)
-
tags/4.4.0/assets/js/frontend.js (added)
-
tags/4.4.0/assets/libs (added)
-
tags/4.4.0/assets/libs/hint (added)
-
tags/4.4.0/assets/libs/hint/hint.css (added)
-
tags/4.4.0/assets/libs/tippy (added)
-
tags/4.4.0/assets/libs/tippy/popper.min.js (added)
-
tags/4.4.0/assets/libs/tippy/popper.min.js.map (added)
-
tags/4.4.0/assets/libs/tippy/tippy-bundle.umd.min.js (added)
-
tags/4.4.0/assets/libs/tippy/tippy-bundle.umd.min.js.map (added)
-
tags/4.4.0/includes (added)
-
tags/4.4.0/includes/dashboard (added)
-
tags/4.4.0/includes/dashboard/css (added)
-
tags/4.4.0/includes/dashboard/css/dashboard.css (added)
-
tags/4.4.0/includes/dashboard/css/dashboard.css.map (added)
-
tags/4.4.0/includes/dashboard/css/dashboard.scss (added)
-
tags/4.4.0/includes/dashboard/images (added)
-
tags/4.4.0/includes/dashboard/images/wpc-icon.svg (added)
-
tags/4.4.0/includes/dashboard/js (added)
-
tags/4.4.0/includes/dashboard/js/backend.js (added)
-
tags/4.4.0/includes/dashboard/wpc-dashboard.php (added)
-
tags/4.4.0/includes/hpos.php (added)
-
tags/4.4.0/includes/kit (added)
-
tags/4.4.0/includes/kit/css (added)
-
tags/4.4.0/includes/kit/css/backend.css (added)
-
tags/4.4.0/includes/kit/js (added)
-
tags/4.4.0/includes/kit/js/backend.js (added)
-
tags/4.4.0/includes/kit/wpc-kit.php (added)
-
tags/4.4.0/includes/log (added)
-
tags/4.4.0/includes/log/wpc-log.php (added)
-
tags/4.4.0/index.php (added)
-
tags/4.4.0/languages (added)
-
tags/4.4.0/languages/wpc-linked-variation.pot (added)
-
tags/4.4.0/readme.txt (added)
-
tags/4.4.0/wpc-linked-variation.php (added)
-
trunk/includes/dashboard/css/dashboard.css (modified) (3 diffs)
-
trunk/includes/dashboard/css/dashboard.css.map (modified) (1 diff)
-
trunk/includes/dashboard/css/dashboard.scss (modified) (3 diffs)
-
trunk/includes/dashboard/wpc-dashboard.php (modified) (3 diffs)
-
trunk/includes/log (added)
-
trunk/includes/log/wpc-log.php (added)
-
trunk/languages/wpc-linked-variation.pot (modified) (3 diffs)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/wpc-linked-variation.php (modified) (11 diffs)
Legend:
- Unmodified
- Added
- Removed
-
wpc-linked-variation/trunk/includes/dashboard/css/dashboard.css
r3402947 r3483578 287 287 } 288 288 289 .wpclever_settings_page .wpclever_settings_page_content table tr.submit .wpclever_submit { 290 display: flex; 291 align-items: center; 292 } 293 294 .wpclever_settings_page .wpclever_settings_page_content table tr.submit .wpc-last-saved { 295 font-weight: 400; 296 font-size: 12px; 297 color: #999; 298 margin-left: 10px; 299 display: flex; 300 align-items: center; 301 } 302 303 .wpclever_settings_page .wpclever_settings_page_content table tr.submit .wpc-last-saved .dashicons { 304 font-size: 15px; 305 width: 15px; 306 height: 15px; 307 margin-right: 5px; 308 color: #22c55e; 309 } 310 289 311 .wpclever_settings_page .wpclever_settings_page_content table tr.submit .wpclever_export { 290 312 position: absolute; … … 293 315 transform: translateY(-50%); 294 316 font-weight: 400; 317 } 318 319 #wpclever_export .wpclever_export_data { 320 width: 100%; 321 font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace; 322 font-size: 12.5px; 323 line-height: 20px; 324 padding: 0 12px; 325 background-image: repeating-linear-gradient(to bottom, #ffffff 0px, #ffffff 20px, #fafafa 20px, #fafafa 40px); 326 background-attachment: local; 327 resize: vertical; 328 box-sizing: border-box; 329 outline: none; 295 330 } 296 331 … … 462 497 border-left: none; 463 498 border-right: 4px solid #23282d; 499 } 500 501 body.rtl .wpclever_settings_page .wpclever_settings_page_content table tr.submit .wpclever_export { 502 left: 20px; 503 right: auto; 464 504 } 465 505 -
wpc-linked-variation/trunk/includes/dashboard/css/dashboard.css.map
r3402947 r3483578 1 {"version":3,"sourceRoot":"","sources":["dashboard.scss"],"names":[],"mappings":";AAAA;EACE;IACE;;;AAIJ;EACE;IACE;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAEA;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;AAEA;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;AAEA;EACE;IACE;IACA;IACA;IACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA; EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;IACE;;;AAIJ;EACE;IACE;;;AAIJ;EACE;IACE;;;AAIJ;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;AAEA;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;AAEA;EACE;;;AAGF;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA","file":"dashboard.css"}1 {"version":3,"sourceRoot":"","sources":["dashboard.scss"],"names":[],"mappings":";AAAA;EACE;IACE;;;AAIJ;EACE;IACE;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AAEA;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;AAEA;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;AAEA;EACE;IACE;IACA;IACA;IACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EAOA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;IACE;;;AAIJ;EACE;IACE;;;AAIJ;EACE;IACE;;;AAIJ;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;AAEA;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;AAEA;EACE;;;AAGF;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA","file":"dashboard.css"} -
wpc-linked-variation/trunk/includes/dashboard/css/dashboard.scss
r3402947 r3483578 299 299 } 300 300 301 .wpclever_settings_page .wpclever_settings_page_content table tr.submit .wpclever_submit { 302 display: flex; 303 align-items: center; 304 } 305 306 .wpclever_settings_page .wpclever_settings_page_content table tr.submit .wpc-last-saved { 307 font-weight: 400; 308 font-size: 12px; 309 color: #999; 310 margin-left: 10px; 311 display: flex; 312 align-items: center; 313 } 314 315 .wpclever_settings_page .wpclever_settings_page_content table tr.submit .wpc-last-saved .dashicons { 316 font-size: 15px; 317 width: 15px; 318 height: 15px; 319 margin-right: 5px; 320 color: #22c55e; 321 } 322 301 323 .wpclever_settings_page .wpclever_settings_page_content table tr.submit .wpclever_export { 302 324 position: absolute; … … 305 327 transform: translateY(-50%); 306 328 font-weight: 400; 329 } 330 331 #wpclever_export .wpclever_export_data { 332 width: 100%; 333 font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace; 334 font-size: 12.5px; 335 line-height: 20px; 336 padding: 0 12px; 337 background-image: repeating-linear-gradient( 338 to bottom, 339 #ffffff 0px, 340 #ffffff 20px, 341 #fafafa 20px, 342 #fafafa 40px 343 ); 344 background-attachment: local; 345 resize: vertical; 346 box-sizing: border-box; 347 outline: none; 307 348 } 308 349 … … 478 519 border-left: none; 479 520 border-right: 4px solid #23282d; 521 } 522 523 body.rtl .wpclever_settings_page .wpclever_settings_page_content table tr.submit .wpclever_export { 524 left: 20px; 525 right: auto; 480 526 } 481 527 -
wpc-linked-variation/trunk/includes/dashboard/wpc-dashboard.php
r3402947 r3483578 1 1 <?php 2 2 defined( 'ABSPATH' ) || exit; 3 4 if ( ! class_exists( 'WPCleverMenu' ) ) {5 class WPCleverMenu {6 function __construct() {7 // do nothing, moved to WPCleverDashboard8 }9 }10 11 new WPCleverMenu();12 }13 3 14 4 if ( ! class_exists( 'WPCleverDashboard' ) ) { … … 232 222 233 223 if ( ! empty( $key ) && ( $settings = get_option( $key ) ) ) { 224 unset( $settings['_last_saved'] ); 225 unset( $settings['_last_saved_by'] ); 226 234 227 echo '<textarea class="wpclever_export_data" id="wpclever_export_data" style="width: 100%; height: 200px; margin-bottom: 10px;" data-key="' . esc_attr( $key ) . '">' . esc_textarea( wp_json_encode( $settings, JSON_PRETTY_PRINT ) ) . '</textarea>'; 235 228 echo '<div style="display: flex; align-items: center"><button class="button button-primary wpclever_import" data-key="' . esc_attr( $key ) . '">Update</button>'; … … 265 258 new WPCleverDashboard(); 266 259 } 260 261 if ( ! function_exists( 'wpc_last_saved' ) ) { 262 function wpc_last_saved( $settings ) { 263 $last_saved = isset( $settings['_last_saved'] ) ? (int) $settings['_last_saved'] : 0; 264 265 if ( $last_saved ) { 266 $time_diff = human_time_diff( $last_saved, current_time( 'timestamp' ) ); 267 $time_full = date_i18n( get_option( 'date_format' ) . ' ' . get_option( 'time_format' ), $last_saved ); 268 269 // Who saved it 270 $saved_by_id = isset( $settings['_last_saved_by'] ) ? (int) $settings['_last_saved_by'] : 0; 271 $saved_by_name = ''; 272 273 if ( $saved_by_id ) { 274 $user = get_userdata( $saved_by_id ); 275 276 if ( $user ) { 277 $saved_by_name = $user->display_name; 278 } 279 } 280 281 $by_text = $saved_by_name ? ' ' . sprintf( 'by %s', esc_html( $saved_by_name ) ) : ''; 282 283 echo '<span class="wpc-last-saved" title="' . esc_attr( $time_full ) . '"><span class="dashicons dashicons-saved"></span> ' 284 . sprintf( 285 'Saved %1$s ago', 286 esc_html( $time_diff ) 287 ) 288 . $by_text 289 . '</span>'; 290 } 291 } 292 } -
wpc-linked-variation/trunk/languages/wpc-linked-variation.pot
r3469032 r3483578 3 3 msgid "" 4 4 msgstr "" 5 "Project-Id-Version: WPC Linked Variation for WooCommerce 4. 3.9\n"5 "Project-Id-Version: WPC Linked Variation for WooCommerce 4.4.0\n" 6 6 "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpc-linked-variation\n" 7 7 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" … … 10 10 "Content-Type: text/plain; charset=UTF-8\n" 11 11 "Content-Transfer-Encoding: 8bit\n" 12 "POT-Creation-Date: 2026-0 2-25T04:13:57+00:00\n"12 "POT-Creation-Date: 2026-03-16T08:15:27+00:00\n" 13 13 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" 14 14 "X-Generator: WP-CLI 2.12.0\n" … … 40 40 msgstr "" 41 41 42 #: wpc-linked-variation.php:16 142 #: wpc-linked-variation.php:163 43 43 msgctxt "Post Type General Name" 44 44 msgid "Linked Variations" 45 45 msgstr "" 46 46 47 #: wpc-linked-variation.php:16 247 #: wpc-linked-variation.php:164 48 48 msgctxt "Post Type Singular Name" 49 49 msgid "Linked Variation" 50 50 msgstr "" 51 51 52 #: wpc-linked-variation.php:16 352 #: wpc-linked-variation.php:165 53 53 msgid "Add New Linked Variation" 54 54 msgstr "" 55 55 56 #: wpc-linked-variation.php:16 456 #: wpc-linked-variation.php:166 57 57 msgid "Add New" 58 58 msgstr "" 59 59 60 #: wpc-linked-variation.php:16 560 #: wpc-linked-variation.php:167 61 61 msgid "Edit Linked Variation" 62 62 msgstr "" 63 63 64 #: wpc-linked-variation.php:16 664 #: wpc-linked-variation.php:168 65 65 msgid "Update Linked Variation" 66 66 msgstr "" 67 67 68 #: wpc-linked-variation.php:16 768 #: wpc-linked-variation.php:169 69 69 msgid "Search Linked Variation" 70 70 msgstr "" 71 71 72 #: wpc-linked-variation.php:17 173 #: wpc-linked-variation.php:5 5772 #: wpc-linked-variation.php:173 73 #: wpc-linked-variation.php:568 74 74 msgid "Linked Variation" 75 75 msgstr "" 76 76 77 #: wpc-linked-variation.php:22 278 #: wpc-linked-variation.php:44 077 #: wpc-linked-variation.php:224 78 #: wpc-linked-variation.php:442 79 79 msgid "Configuration" 80 80 msgstr "" 81 81 82 #: wpc-linked-variation.php:26 482 #: wpc-linked-variation.php:266 83 83 msgid "Source" 84 84 msgstr "" 85 85 86 #: wpc-linked-variation.php:26 787 #: wpc-linked-variation.php:28 088 #: wpc-linked-variation.php:45 486 #: wpc-linked-variation.php:269 87 #: wpc-linked-variation.php:282 88 #: wpc-linked-variation.php:456 89 89 msgid "Products" 90 90 msgstr "" 91 91 92 #: wpc-linked-variation.php:28 792 #: wpc-linked-variation.php:289 93 93 msgid "Search for a product…" 94 94 msgstr "" 95 95 96 #: wpc-linked-variation.php:30 596 #: wpc-linked-variation.php:307 97 97 msgid "Terms" 98 98 msgstr "" 99 99 100 #: wpc-linked-variation.php:31 0100 #: wpc-linked-variation.php:312 101 101 msgid "All (any)" 102 102 msgstr "" 103 103 104 #: wpc-linked-variation.php:31 0104 #: wpc-linked-variation.php:312 105 105 msgid "or" 106 106 msgstr "" 107 107 108 #: wpc-linked-variation.php:3 38109 #: wpc-linked-variation.php:6 62108 #: wpc-linked-variation.php:340 109 #: wpc-linked-variation.php:673 110 110 msgid "Limit" 111 111 msgstr "" 112 112 113 #: wpc-linked-variation.php:3 49113 #: wpc-linked-variation.php:351 114 114 msgid "Orderby" 115 115 msgstr "" 116 116 117 #: wpc-linked-variation.php:35 3118 #: wpc-linked-variation.php:37 1117 #: wpc-linked-variation.php:355 118 #: wpc-linked-variation.php:373 119 119 msgid "Default" 120 120 msgstr "" 121 121 122 #: wpc-linked-variation.php:35 4122 #: wpc-linked-variation.php:356 123 123 msgid "None" 124 124 msgstr "" 125 125 126 #: wpc-linked-variation.php:35 5126 #: wpc-linked-variation.php:357 127 127 msgid "ID" 128 128 msgstr "" 129 129 130 #: wpc-linked-variation.php:35 6130 #: wpc-linked-variation.php:358 131 131 msgid "Name" 132 132 msgstr "" 133 133 134 #: wpc-linked-variation.php:35 7134 #: wpc-linked-variation.php:359 135 135 msgid "Type" 136 136 msgstr "" 137 137 138 #: wpc-linked-variation.php:3 58138 #: wpc-linked-variation.php:360 139 139 msgid "Rand" 140 140 msgstr "" 141 141 142 #: wpc-linked-variation.php:359 142 #: wpc-linked-variation.php:361 143 #: wpc-linked-variation.php:443 144 msgid "Date" 145 msgstr "" 146 147 #: wpc-linked-variation.php:362 148 msgid "Price" 149 msgstr "" 150 151 #: wpc-linked-variation.php:363 152 msgid "Modified" 153 msgstr "" 154 155 #: wpc-linked-variation.php:369 156 msgid "Order" 157 msgstr "" 158 159 #: wpc-linked-variation.php:374 160 msgid "DESC" 161 msgstr "" 162 163 #: wpc-linked-variation.php:375 164 msgid "ASC" 165 msgstr "" 166 167 #: wpc-linked-variation.php:380 168 msgid "Linked by (attributes)" 169 msgstr "" 170 171 #: wpc-linked-variation.php:398 172 msgid "Move" 173 msgstr "" 174 175 #: wpc-linked-variation.php:398 176 msgid "Show images" 177 msgstr "" 178 179 #: wpc-linked-variation.php:398 180 msgid "Use dropdown" 181 msgstr "" 182 183 #: wpc-linked-variation.php:398 184 msgid "Use swatches" 185 msgstr "" 186 143 187 #: wpc-linked-variation.php:441 144 msgid "Date"145 msgstr ""146 147 #: wpc-linked-variation.php:360148 msgid "Price"149 msgstr ""150 151 #: wpc-linked-variation.php:361152 msgid "Modified"153 msgstr ""154 155 #: wpc-linked-variation.php:367156 msgid "Order"157 msgstr ""158 159 #: wpc-linked-variation.php:372160 msgid "DESC"161 msgstr ""162 163 #: wpc-linked-variation.php:373164 msgid "ASC"165 msgstr ""166 167 #: wpc-linked-variation.php:378168 msgid "Linked by (attributes)"169 msgstr ""170 171 #: wpc-linked-variation.php:396172 msgid "Move"173 msgstr ""174 175 #: wpc-linked-variation.php:396176 msgid "Show images"177 msgstr ""178 179 #: wpc-linked-variation.php:396180 msgid "Use dropdown"181 msgstr ""182 183 #: wpc-linked-variation.php:396184 msgid "Use swatches"185 msgstr ""186 187 #: wpc-linked-variation.php:439188 188 msgid "Title" 189 189 msgstr "" 190 190 191 #: wpc-linked-variation.php:47 1191 #: wpc-linked-variation.php:473 192 192 msgid "Categories" 193 193 msgstr "" 194 194 195 #: wpc-linked-variation.php:47 5195 #: wpc-linked-variation.php:477 196 196 msgid "Tags" 197 197 msgstr "" 198 198 199 #: wpc-linked-variation.php:49 0199 #: wpc-linked-variation.php:492 200 200 msgid "Attributes" 201 201 msgstr "" 202 202 203 #: wpc-linked-variation.php:5 57204 #: wpc-linked-variation.php:5 72203 #: wpc-linked-variation.php:568 204 #: wpc-linked-variation.php:583 205 205 msgid "WPC Linked Variation" 206 206 msgstr "" 207 207 208 #: wpc-linked-variation.php:5 72208 #: wpc-linked-variation.php:583 209 209 msgid "Premium" 210 210 msgstr "" 211 211 212 212 #. translators: stars 213 #: wpc-linked-variation.php:5 75213 #: wpc-linked-variation.php:586 214 214 #, php-format 215 215 msgid "Thank you for using our plugin! If you are satisfied, please reward it a full five-star %s rating." 216 216 msgstr "" 217 217 218 #: wpc-linked-variation.php:5 78218 #: wpc-linked-variation.php:589 219 219 msgid "Reviews" 220 220 msgstr "" 221 221 222 #: wpc-linked-variation.php:5 81222 #: wpc-linked-variation.php:592 223 223 msgid "Changelog" 224 224 msgstr "" 225 225 226 #: wpc-linked-variation.php:5 84226 #: wpc-linked-variation.php:595 227 227 msgid "Discussion" 228 228 msgstr "" 229 229 230 #: wpc-linked-variation.php: 592230 #: wpc-linked-variation.php:603 231 231 msgid "Settings updated." 232 232 msgstr "" 233 233 234 #: wpc-linked-variation.php: 599235 #: wpc-linked-variation.php:14 33234 #: wpc-linked-variation.php:610 235 #: wpc-linked-variation.php:1454 236 236 msgid "Settings" 237 237 msgstr "" 238 238 239 #: wpc-linked-variation.php:6 03239 #: wpc-linked-variation.php:614 240 240 msgid "Localization" 241 241 msgstr "" 242 242 243 #: wpc-linked-variation.php:6 07244 #: wpc-linked-variation.php:14 34243 #: wpc-linked-variation.php:618 244 #: wpc-linked-variation.php:1455 245 245 msgid "Linked Variations" 246 246 msgstr "" 247 247 248 #: wpc-linked-variation.php:6 12249 #: wpc-linked-variation.php:14 35248 #: wpc-linked-variation.php:623 249 #: wpc-linked-variation.php:1456 250 250 msgid "Premium Version" 251 251 msgstr "" 252 252 253 #: wpc-linked-variation.php:6 16253 #: wpc-linked-variation.php:627 254 254 msgid "Essential Kit" 255 255 msgstr "" 256 256 257 #: wpc-linked-variation.php:6 37257 #: wpc-linked-variation.php:648 258 258 msgid "Position on single page" 259 259 msgstr "" 260 260 261 #: wpc-linked-variation.php:640 261 #: wpc-linked-variation.php:651 262 #: wpc-linked-variation.php:665 263 msgid "Above the add to cart button" 264 msgstr "" 265 266 #: wpc-linked-variation.php:652 267 #: wpc-linked-variation.php:666 268 msgid "Under the add to cart button" 269 msgstr "" 270 271 #: wpc-linked-variation.php:653 272 #: wpc-linked-variation.php:667 273 msgid "Under the title" 274 msgstr "" 275 262 276 #: wpc-linked-variation.php:654 263 msgid "Above the add to cart button" 264 msg str ""265 266 #: wpc-linked-variation.php:641 277 #: wpc-linked-variation.php:668 278 msgid "Under the price" 279 msgstr "" 280 267 281 #: wpc-linked-variation.php:655 268 msgid "Under the add to cart button" 269 msgstr "" 270 271 #: wpc-linked-variation.php:642 282 msgid "Under the excerpt" 283 msgstr "" 284 272 285 #: wpc-linked-variation.php:656 273 msgid "Under the title" 274 msgstr "" 275 276 #: wpc-linked-variation.php:643 277 #: wpc-linked-variation.php:657 278 msgid "Under the price" 279 msgstr "" 280 281 #: wpc-linked-variation.php:644 282 msgid "Under the excerpt" 283 msgstr "" 284 285 #: wpc-linked-variation.php:645 286 #: wpc-linked-variation.php:669 287 msgid "None (hide it)" 288 msgstr "" 289 286 290 #: wpc-linked-variation.php:658 287 msgid "None (hide it)"288 msgstr ""289 290 #: wpc-linked-variation.php:647291 291 msgid "Choose the position to show the linked variations on single product page." 292 292 msgstr "" 293 293 294 #: wpc-linked-variation.php:6 51294 #: wpc-linked-variation.php:662 295 295 msgid "Position on archive page" 296 296 msgstr "" 297 297 298 #: wpc-linked-variation.php:6 60298 #: wpc-linked-variation.php:671 299 299 msgid "Choose the position to show the linked variations on archive page." 300 300 msgstr "" 301 301 302 #: wpc-linked-variation.php:6 72302 #: wpc-linked-variation.php:683 303 303 msgid "Shortcode" 304 304 msgstr "" 305 305 306 306 #. translators: shortcode 307 #: wpc-linked-variation.php:6 74307 #: wpc-linked-variation.php:685 308 308 #, php-format 309 309 msgid "You can use the shortcode %s to show the list where you want." 310 310 msgstr "" 311 311 312 #: wpc-linked-variation.php:6 78312 #: wpc-linked-variation.php:689 313 313 msgid "Tooltip library" 314 314 msgstr "" 315 315 316 #: wpc-linked-variation.php:6 81316 #: wpc-linked-variation.php:692 317 317 msgid "Hint.css" 318 318 msgstr "" 319 319 320 #: wpc-linked-variation.php:6 82320 #: wpc-linked-variation.php:693 321 321 msgid "Tippy.js" 322 322 msgstr "" 323 323 324 #: wpc-linked-variation.php:6 83324 #: wpc-linked-variation.php:694 325 325 msgid "None (Disable)" 326 326 msgstr "" 327 327 328 #: wpc-linked-variation.php: 692328 #: wpc-linked-variation.php:703 329 329 msgid "Tooltip position" 330 330 msgstr "" 331 331 332 #: wpc-linked-variation.php: 695332 #: wpc-linked-variation.php:706 333 333 msgid "Top" 334 334 msgstr "" 335 335 336 #: wpc-linked-variation.php: 696336 #: wpc-linked-variation.php:707 337 337 msgid "Right" 338 338 msgstr "" 339 339 340 #: wpc-linked-variation.php: 697340 #: wpc-linked-variation.php:708 341 341 msgid "Bottom" 342 342 msgstr "" 343 343 344 #: wpc-linked-variation.php: 698344 #: wpc-linked-variation.php:709 345 345 msgid "Left" 346 346 msgstr "" 347 347 348 #: wpc-linked-variation.php:7 04348 #: wpc-linked-variation.php:715 349 349 msgid "Tooltip content" 350 350 msgstr "" 351 351 352 #: wpc-linked-variation.php:7 07352 #: wpc-linked-variation.php:718 353 353 msgid "Attribute information" 354 354 msgstr "" 355 355 356 #: wpc-linked-variation.php:7 08356 #: wpc-linked-variation.php:719 357 357 msgid "Product information" 358 358 msgstr "" 359 359 360 #: wpc-linked-variation.php:7 13360 #: wpc-linked-variation.php:724 361 361 msgid "Hide empty attribute terms" 362 362 msgstr "" 363 363 364 #: wpc-linked-variation.php:716 365 #: wpc-linked-variation.php:726 366 #: wpc-linked-variation.php:735 364 #: wpc-linked-variation.php:727 365 #: wpc-linked-variation.php:737 366 #: wpc-linked-variation.php:746 367 #: wpc-linked-variation.php:767 368 msgid "Yes" 369 msgstr "" 370 371 #: wpc-linked-variation.php:728 372 #: wpc-linked-variation.php:738 373 #: wpc-linked-variation.php:747 374 #: wpc-linked-variation.php:768 375 msgid "No" 376 msgstr "" 377 378 #: wpc-linked-variation.php:730 379 msgid "Hide attribute terms that haven't any products." 380 msgstr "" 381 382 #: wpc-linked-variation.php:734 383 msgid "Exclude hidden product" 384 msgstr "" 385 386 #: wpc-linked-variation.php:743 387 msgid "Exclude unpurchasable product" 388 msgstr "" 389 390 #: wpc-linked-variation.php:752 391 msgid "Link to individual product" 392 msgstr "" 393 394 #: wpc-linked-variation.php:755 395 msgid "Open in the same tab" 396 msgstr "" 397 367 398 #: wpc-linked-variation.php:756 368 msgid "Yes" 369 msgstr "" 370 371 #: wpc-linked-variation.php:717 372 #: wpc-linked-variation.php:727 373 #: wpc-linked-variation.php:736 399 msgid "Open in the new tab" 400 msgstr "" 401 374 402 #: wpc-linked-variation.php:757 375 msgid "No"376 msgstr ""377 378 #: wpc-linked-variation.php:719379 msgid "Hide attribute terms that haven't any products."380 msgstr ""381 382 #: wpc-linked-variation.php:723383 msgid "Exclude hidden product"384 msgstr ""385 386 #: wpc-linked-variation.php:732387 msgid "Exclude unpurchasable product"388 msgstr ""389 390 #: wpc-linked-variation.php:741391 msgid "Link to individual product"392 msgstr ""393 394 #: wpc-linked-variation.php:744395 msgid "Open in the same tab"396 msgstr ""397 398 #: wpc-linked-variation.php:745399 msgid "Open in the new tab"400 msgstr ""401 402 #: wpc-linked-variation.php:746403 403 msgid "Open quick view popup" 404 404 msgstr "" 405 405 406 #: wpc-linked-variation.php:7 53406 #: wpc-linked-variation.php:764 407 407 msgid "Use nofollow links" 408 408 msgstr "" 409 409 410 #: wpc-linked-variation.php:7 67410 #: wpc-linked-variation.php:787 411 411 msgid "import / export" 412 412 msgstr "" 413 413 414 #: wpc-linked-variation.php:7 76414 #: wpc-linked-variation.php:796 415 415 msgid "General" 416 416 msgstr "" 417 417 418 #: wpc-linked-variation.php:7 78418 #: wpc-linked-variation.php:798 419 419 msgid "Leave blank to use the default text and its equivalent translation in multiple languages." 420 420 msgstr "" 421 421 422 #: wpc-linked-variation.php: 782422 #: wpc-linked-variation.php:802 423 423 msgid "More" 424 424 msgstr "" 425 425 426 426 #. translators: count 427 #: wpc-linked-variation.php: 789428 #: wpc-linked-variation.php:12 40427 #: wpc-linked-variation.php:809 428 #: wpc-linked-variation.php:1261 429 429 #, php-format 430 430 msgid "+%d More" 431 431 msgstr "" 432 432 433 #: wpc-linked-variation.php:14 51433 #: wpc-linked-variation.php:1472 434 434 msgid "Community support" 435 435 msgstr "" 436 436 437 #: wpc-linked-variation.php:1 485437 #: wpc-linked-variation.php:1506 438 438 msgid "Before container" 439 439 msgstr "" 440 440 441 #: wpc-linked-variation.php:1 486441 #: wpc-linked-variation.php:1507 442 442 msgid "After container" 443 443 msgstr "" 444 444 445 #: wpc-linked-variation.php:1 487445 #: wpc-linked-variation.php:1508 446 446 msgid "Before attributes" 447 447 msgstr "" 448 448 449 #: wpc-linked-variation.php:1 488449 #: wpc-linked-variation.php:1509 450 450 msgid "After attributes" 451 451 msgstr "" 452 452 453 #: wpc-linked-variation.php:1 489453 #: wpc-linked-variation.php:1510 454 454 msgid "Before attribute" 455 455 msgstr "" 456 456 457 #: wpc-linked-variation.php:1 490457 #: wpc-linked-variation.php:1511 458 458 msgid "After attribute" 459 459 msgstr "" 460 460 461 #: wpc-linked-variation.php:1 491461 #: wpc-linked-variation.php:1512 462 462 msgid "Before attribute label" 463 463 msgstr "" 464 464 465 #: wpc-linked-variation.php:1 492465 #: wpc-linked-variation.php:1513 466 466 msgid "After attribute label" 467 467 msgstr "" -
wpc-linked-variation/trunk/readme.txt
r3469032 r3483578 4 4 Tags: woocommerce, wpc, linked variations, variation 5 5 Tested up to: 6.9 6 Version: 4. 3.97 Stable tag: 4. 3.96 Version: 4.4.0 7 Stable tag: 4.4.0 8 8 License: GPLv2 or later 9 9 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 85 85 == Changelog == 86 86 87 = 4.4.0 = 88 * Fixed: Minor CSS/JS issues in the backend 89 * Updated: Compatible with WP 6.9 & Woo 10.6 90 87 91 = 4.3.9 = 88 92 * Updated: Optimized the code -
wpc-linked-variation/trunk/wpc-linked-variation.php
r3469032 r3483578 4 4 Plugin URI: https://wpclever.net/ 5 5 Description: WPC Linked Variation built to link separate products together by attributes. 6 Version: 4. 3.96 Version: 4.4.0 7 7 Author: WPClever 8 8 Author URI: https://wpclever.net … … 13 13 Tested up to: 6.9 14 14 WC requires at least: 3.0 15 WC tested up to: 10. 515 WC tested up to: 10.6 16 16 License: GPLv2 or later 17 17 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 20 20 defined( 'ABSPATH' ) || exit; 21 21 22 ! defined( 'WPCLV_VERSION' ) && define( 'WPCLV_VERSION', '4. 3.9' );22 ! defined( 'WPCLV_VERSION' ) && define( 'WPCLV_VERSION', '4.4.0' ); 23 23 ! defined( 'WPCLV_LITE' ) && define( 'WPCLV_LITE', __FILE__ ); 24 24 ! defined( 'WPCLV_FILE' ) && define( 'WPCLV_FILE', __FILE__ ); … … 31 31 ! defined( 'WPC_URI' ) && define( 'WPC_URI', WPCLV_URI ); 32 32 33 include 'includes/log/wpc-log.php'; 33 34 include 'includes/dashboard/wpc-dashboard.php'; 34 35 include 'includes/kit/wpc-kit.php'; … … 77 78 add_action( 'admin_enqueue_scripts', [ $this, 'admin_enqueue_scripts' ] ); 78 79 add_action( 'admin_init', [ $this, 'register_settings' ] ); 80 add_filter( 'pre_update_option', [ $this, 'last_saved' ], 10, 2 ); 79 81 add_action( 'admin_menu', [ $this, 'admin_menu' ] ); 80 82 … … 208 210 if ( self::enable_ajax( 'shortcode' ) ) { 209 211 // render wrapper only 210 echo '<div class="' . esc_attr( apply_filters( 'wpclv_wrap_class', 'wpclv-attributes wpclv-attributes- shortcode wpclv-attributes-' . $attrs['id'], 'shortcode' ) ) . '" data-id="' . esc_attr( $attrs['id'] ) . '"></div>';212 echo '<div class="' . esc_attr( apply_filters( 'wpclv_wrap_class', 'wpclv-attributes wpclv-attributes-ajax wpclv-attributes-shortcode wpclv-attributes-' . $attrs['id'], 'shortcode' ) ) . '" data-id="' . esc_attr( $attrs['id'] ) . '"></div>'; 211 213 } else { 212 214 self::render_content( $attrs['id'], absint( $attrs['limit'] ), $attrs['hide'], 'shortcode' ); … … 552 554 'sanitize_callback' => [ $this, 'sanitize_array' ], 553 555 ] ); 556 } 557 558 function last_saved( $value, $option ) { 559 if ( $option == 'wpclv_settings' || $option == 'wpclv_localization' ) { 560 $value['_last_saved'] = current_time( 'timestamp' ); 561 $value['_last_saved_by'] = get_current_user_id(); 562 } 563 564 return $value; 554 565 } 555 566 … … 761 772 <tr class="submit"> 762 773 <th colspan="2"> 763 <?php settings_fields( 'wpclv_settings' ); ?><?php submit_button(); ?> 774 <div class="wpclever_submit"> 775 <?php 776 settings_fields( 'wpclv_settings' ); 777 submit_button( '', 'primary', 'submit', false ); 778 779 if ( function_exists( 'wpc_last_saved' ) ) { 780 wpc_last_saved( self::get_settings() ); 781 } 782 ?> 783 </div> 764 784 <a style="display: none;" class="wpclever_export" 765 785 data-key="wpclv_settings" … … 1011 1031 if ( self::enable_ajax( 'archive' ) ) { 1012 1032 // render wrapper only 1013 echo '<div class="' . esc_attr( apply_filters( 'wpclv_wrap_class', 'wpclv-attributes wpclv-attributes-a rchive wpclv-attributes-' . $product_id, 'archive' ) ) . '" data-id="' . esc_attr( $product_id ) . '"></div>';1033 echo '<div class="' . esc_attr( apply_filters( 'wpclv_wrap_class', 'wpclv-attributes wpclv-attributes-ajax wpclv-attributes-archive wpclv-attributes-' . $product_id, 'archive' ) ) . '" data-id="' . esc_attr( $product_id ) . '"></div>'; 1014 1034 } else { 1015 1035 $limit = absint( self::get_setting( 'archive_limit', '10' ) ); … … 1033 1053 if ( self::enable_ajax( 'single' ) ) { 1034 1054 // render wrapper only 1035 echo '<div class="' . esc_attr( apply_filters( 'wpclv_wrap_class', 'wpclv-attributes wpclv-attributes- single wpclv-attributes-' . $product_id, 'single' ) ) . '" data-id="' . esc_attr( $product_id ) . '"></div>';1055 echo '<div class="' . esc_attr( apply_filters( 'wpclv_wrap_class', 'wpclv-attributes wpclv-attributes-ajax wpclv-attributes-single wpclv-attributes-' . $product_id, 'single' ) ) . '" data-id="' . esc_attr( $product_id ) . '"></div>'; 1036 1056 } else { 1037 1057 self::render_content( $product_id, $limit, $hide, 'single' ); … … 1076 1096 $link_dropdown = $link_data['dropdown'] ?? []; 1077 1097 $hide_attributes = ! empty( $hide ) ? explode( ',', $hide ) : []; 1078 $assigned_attributes = array_keys( $_product->get_attributes());1098 $assigned_attributes = $_product->get_attributes(); 1079 1099 $product_attributes = []; 1080 1100 1081 1101 foreach ( $assigned_attributes as $assigned_attribute ) { 1082 $product_attributes[ $assigned_attribute ] = wc_get_product_terms( $product_id, $assigned_attribute, [ 'fields' => 'ids' ] ); 1102 $assigned_attribute_name = $assigned_attribute->get_name(); 1103 $product_attributes[ $assigned_attribute_name ] = wc_get_product_terms( $product_id, $assigned_attribute_name, [ 'fields' => 'ids' ] ); 1083 1104 } 1084 1105
Note: See TracChangeset
for help on using the changeset viewer.