Changeset 3483018
- Timestamp:
- 03/15/2026 10:25:30 AM (13 days ago)
- Location:
- wpc-custom-related-products
- Files:
-
- 36 added
- 7 edited
-
tags/3.2.3 (added)
-
tags/3.2.3/assets (added)
-
tags/3.2.3/assets/css (added)
-
tags/3.2.3/assets/css/backend.css (added)
-
tags/3.2.3/assets/css/hint.css (added)
-
tags/3.2.3/assets/images (added)
-
tags/3.2.3/assets/images/how-01.jpg (added)
-
tags/3.2.3/assets/js (added)
-
tags/3.2.3/assets/js/backend.js (added)
-
tags/3.2.3/includes (added)
-
tags/3.2.3/includes/dashboard (added)
-
tags/3.2.3/includes/dashboard/css (added)
-
tags/3.2.3/includes/dashboard/css/dashboard.css (added)
-
tags/3.2.3/includes/dashboard/css/dashboard.css.map (added)
-
tags/3.2.3/includes/dashboard/css/dashboard.scss (added)
-
tags/3.2.3/includes/dashboard/images (added)
-
tags/3.2.3/includes/dashboard/images/wpc-icon.svg (added)
-
tags/3.2.3/includes/dashboard/js (added)
-
tags/3.2.3/includes/dashboard/js/backend.js (added)
-
tags/3.2.3/includes/dashboard/wpc-dashboard.php (added)
-
tags/3.2.3/includes/hpos.php (added)
-
tags/3.2.3/includes/kit (added)
-
tags/3.2.3/includes/kit/css (added)
-
tags/3.2.3/includes/kit/css/backend.css (added)
-
tags/3.2.3/includes/kit/js (added)
-
tags/3.2.3/includes/kit/js/backend.js (added)
-
tags/3.2.3/includes/kit/wpc-kit.php (added)
-
tags/3.2.3/includes/log (added)
-
tags/3.2.3/includes/log/wpc-log.php (added)
-
tags/3.2.3/index.php (added)
-
tags/3.2.3/languages (added)
-
tags/3.2.3/languages/wpc-custom-related-products.pot (added)
-
tags/3.2.3/readme.txt (added)
-
tags/3.2.3/wpc-custom-related-products.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-custom-related-products.pot (modified) (4 diffs)
-
trunk/readme.txt (modified) (2 diffs)
-
trunk/wpc-custom-related-products.php (modified) (9 diffs)
Legend:
- Unmodified
- Added
- Removed
-
wpc-custom-related-products/trunk/includes/dashboard/css/dashboard.css
r3388552 r3483018 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-custom-related-products/trunk/includes/dashboard/css/dashboard.css.map
r3388552 r3483018 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-custom-related-products/trunk/includes/dashboard/css/dashboard.scss
r3388552 r3483018 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-custom-related-products/trunk/includes/dashboard/wpc-dashboard.php
r3388552 r3483018 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-custom-related-products/trunk/languages/wpc-custom-related-products.pot
r3425987 r3483018 1 # Copyright (C) 202 5WPClever1 # Copyright (C) 2026 WPClever 2 2 # This file is distributed under the GPLv2 or later. 3 3 msgid "" 4 4 msgstr "" 5 "Project-Id-Version: WPC Custom Related Products for WooCommerce 3.2. 2\n"5 "Project-Id-Version: WPC Custom Related Products for WooCommerce 3.2.3\n" 6 6 "Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpc-custom-related-products\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: 202 5-12-23T09:01:10+00:00\n"12 "POT-Creation-Date: 2026-03-15T10:24:01+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-custom-related-products.php:1 4543 #: wpc-custom-related-products.php:1 5942 #: wpc-custom-related-products.php:161 43 #: wpc-custom-related-products.php:175 44 44 msgid "WPC Custom Related Products" 45 45 msgstr "" 46 46 47 #: wpc-custom-related-products.php:1 4548 #: wpc-custom-related-products.php:7 3347 #: wpc-custom-related-products.php:161 48 #: wpc-custom-related-products.php:769 49 49 msgid "Related Products" 50 50 msgstr "" 51 51 52 #: wpc-custom-related-products.php:1 5952 #: wpc-custom-related-products.php:175 53 53 msgid "Premium" 54 54 msgstr "" 55 55 56 56 #. translators: stars 57 #: wpc-custom-related-products.php:1 6257 #: wpc-custom-related-products.php:178 58 58 #, php-format 59 59 msgid "Thank you for using our plugin! If you are satisfied, please reward it a full five-star %s rating." 60 60 msgstr "" 61 61 62 #: wpc-custom-related-products.php:1 6562 #: wpc-custom-related-products.php:181 63 63 msgid "Reviews" 64 64 msgstr "" 65 65 66 #: wpc-custom-related-products.php:1 6866 #: wpc-custom-related-products.php:184 67 67 msgid "Changelog" 68 68 msgstr "" 69 69 70 #: wpc-custom-related-products.php:1 7170 #: wpc-custom-related-products.php:187 71 71 msgid "Discussion" 72 72 msgstr "" 73 73 74 #: wpc-custom-related-products.php:1 7974 #: wpc-custom-related-products.php:195 75 75 msgid "Settings updated." 76 76 msgstr "" 77 77 78 #: wpc-custom-related-products.php: 18679 #: wpc-custom-related-products.php:6 3878 #: wpc-custom-related-products.php:202 79 #: wpc-custom-related-products.php:674 80 80 msgid "How to use?" 81 81 msgstr "" 82 82 83 #: wpc-custom-related-products.php: 19084 #: wpc-custom-related-products.php:6 3983 #: wpc-custom-related-products.php:206 84 #: wpc-custom-related-products.php:675 85 85 msgid "Settings" 86 86 msgstr "" 87 87 88 #: wpc-custom-related-products.php: 19489 #: wpc-custom-related-products.php:2 5090 #: wpc-custom-related-products.php:6 4088 #: wpc-custom-related-products.php:210 89 #: wpc-custom-related-products.php:266 90 #: wpc-custom-related-products.php:676 91 91 msgid "Smart Related" 92 92 msgstr "" 93 93 94 #: wpc-custom-related-products.php: 19995 #: wpc-custom-related-products.php:6 4194 #: wpc-custom-related-products.php:215 95 #: wpc-custom-related-products.php:677 96 96 msgid "Premium Version" 97 97 msgstr "" 98 98 99 #: wpc-custom-related-products.php:2 0399 #: wpc-custom-related-products.php:219 100 100 msgid "Essential Kit" 101 101 msgstr "" 102 102 103 #: wpc-custom-related-products.php:2 11103 #: wpc-custom-related-products.php:227 104 104 msgid "When creating/editing the product, please choose \"Related Product\" tab then you can search and add custom related products." 105 105 msgstr "" 106 106 107 #: wpc-custom-related-products.php:2 32107 #: wpc-custom-related-products.php:248 108 108 msgid "General" 109 109 msgstr "" 110 110 111 #: wpc-custom-related-products.php:2 36111 #: wpc-custom-related-products.php:252 112 112 msgid "Exclude unpurchasable" 113 113 msgstr "" 114 114 115 #: wpc-custom-related-products.php:239 115 #: wpc-custom-related-products.php:255 116 #: wpc-custom-related-products.php:305 117 #: wpc-custom-related-products.php:314 118 #: wpc-custom-related-products.php:323 119 #: wpc-custom-related-products.php:333 120 msgid "Yes" 121 msgstr "" 122 123 #: wpc-custom-related-products.php:256 124 #: wpc-custom-related-products.php:306 125 #: wpc-custom-related-products.php:315 126 #: wpc-custom-related-products.php:324 127 #: wpc-custom-related-products.php:334 128 msgid "No" 129 msgstr "" 130 131 #: wpc-custom-related-products.php:258 132 msgid "Exclude unpurchasable products from related." 133 msgstr "" 134 135 #: wpc-custom-related-products.php:262 136 msgid "Default products" 137 msgstr "" 138 139 #: wpc-custom-related-products.php:265 140 msgid "Default Related" 141 msgstr "" 142 143 #: wpc-custom-related-products.php:267 144 msgid "Upsells" 145 msgstr "" 146 147 #: wpc-custom-related-products.php:268 148 msgid "Cross-sells" 149 msgstr "" 150 151 #: wpc-custom-related-products.php:269 152 msgid "Upsells & Cross-sells" 153 msgstr "" 154 155 #: wpc-custom-related-products.php:270 156 #: wpc-custom-related-products.php:537 157 msgid "None" 158 msgstr "" 159 160 #: wpc-custom-related-products.php:278 161 msgid "Default products limit" 162 msgstr "" 163 116 164 #: wpc-custom-related-products.php:289 117 #: wpc-custom-related-products.php:298 118 #: wpc-custom-related-products.php:307 119 #: wpc-custom-related-products.php:317 120 msgid "Yes" 121 msgstr "" 122 123 #: wpc-custom-related-products.php:240 124 #: wpc-custom-related-products.php:290 125 #: wpc-custom-related-products.php:299 126 #: wpc-custom-related-products.php:308 127 #: wpc-custom-related-products.php:318 128 msgid "No" 129 msgstr "" 130 131 #: wpc-custom-related-products.php:242 132 msgid "Exclude unpurchasable products from related." 133 msgstr "" 134 135 #: wpc-custom-related-products.php:246 136 msgid "Default products" 137 msgstr "" 138 139 #: wpc-custom-related-products.php:249 140 msgid "Default Related" 141 msgstr "" 142 143 #: wpc-custom-related-products.php:251 144 msgid "Upsells" 145 msgstr "" 146 147 #: wpc-custom-related-products.php:252 148 msgid "Cross-sells" 149 msgstr "" 150 151 #: wpc-custom-related-products.php:253 152 msgid "Upsells & Cross-sells" 153 msgstr "" 154 155 #: wpc-custom-related-products.php:254 156 #: wpc-custom-related-products.php:501 157 msgid "None" 158 msgstr "" 159 160 #: wpc-custom-related-products.php:262 161 msgid "Default products limit" 162 msgstr "" 163 164 #: wpc-custom-related-products.php:273 165 #: wpc-custom-related-products.php:768 165 #: wpc-custom-related-products.php:804 166 166 msgid "Search" 167 167 msgstr "" 168 168 169 #: wpc-custom-related-products.php:2 77169 #: wpc-custom-related-products.php:293 170 170 msgid "Search limit" 171 171 msgstr "" 172 172 173 #: wpc-custom-related-products.php: 286173 #: wpc-custom-related-products.php:302 174 174 msgid "Search by SKU" 175 175 msgstr "" 176 176 177 #: wpc-custom-related-products.php: 295177 #: wpc-custom-related-products.php:311 178 178 msgid "Search by ID" 179 179 msgstr "" 180 180 181 #: wpc-custom-related-products.php:3 04181 #: wpc-custom-related-products.php:320 182 182 msgid "Search exact" 183 183 msgstr "" 184 184 185 #: wpc-custom-related-products.php:3 10185 #: wpc-custom-related-products.php:326 186 186 msgid "Match whole product title or content?" 187 187 msgstr "" 188 188 189 #: wpc-custom-related-products.php:3 14189 #: wpc-custom-related-products.php:330 190 190 msgid "Search sentence" 191 191 msgstr "" 192 192 193 #: wpc-custom-related-products.php:3 20193 #: wpc-custom-related-products.php:336 194 194 msgid "Do a phrase search?" 195 195 msgstr "" 196 196 197 #: wpc-custom-related-products.php:3 29198 #: wpc-custom-related-products.php:4 16197 #: wpc-custom-related-products.php:354 198 #: wpc-custom-related-products.php:452 199 199 msgid "import / export" 200 200 msgstr "" 201 201 202 #: wpc-custom-related-products.php: 380202 #: wpc-custom-related-products.php:405 203 203 msgid "Our plugin checks rules from the top down the list. When there are products that satisfy more than 1 rule, the first rule on top will be prioritized. Please make sure you put the rules in the order of the most to the least prioritized." 204 204 msgstr "" 205 205 206 #: wpc-custom-related-products.php:4 00206 #: wpc-custom-related-products.php:425 207 207 msgid "+ Add rule" 208 208 msgstr "" 209 209 210 #: wpc-custom-related-products.php:4 02210 #: wpc-custom-related-products.php:427 211 211 msgid "Expand All" 212 212 msgstr "" 213 213 214 #: wpc-custom-related-products.php:4 04214 #: wpc-custom-related-products.php:429 215 215 msgid "Collapse All" 216 216 msgstr "" 217 217 218 #: wpc-custom-related-products.php:4 47218 #: wpc-custom-related-products.php:483 219 219 msgid "duplicate" 220 220 msgstr "" 221 221 222 #: wpc-custom-related-products.php:4 49222 #: wpc-custom-related-products.php:485 223 223 msgid "remove" 224 224 msgstr "" 225 225 226 #: wpc-custom-related-products.php:4 54226 #: wpc-custom-related-products.php:490 227 227 msgid "Add linked products to which?" 228 228 msgstr "" 229 229 230 #: wpc-custom-related-products.php:4 60230 #: wpc-custom-related-products.php:496 231 231 msgid "Define applicable linked products:" 232 232 msgstr "" 233 233 234 #: wpc-custom-related-products.php: 472234 #: wpc-custom-related-products.php:508 235 235 msgid "Source" 236 236 msgstr "" 237 237 238 #: wpc-custom-related-products.php: 478238 #: wpc-custom-related-products.php:514 239 239 msgid "All products" 240 240 msgstr "" 241 241 242 #: wpc-custom-related-products.php: 479242 #: wpc-custom-related-products.php:515 243 243 msgid "Selected products" 244 244 msgstr "" 245 245 246 #: wpc-custom-related-products.php: 481246 #: wpc-custom-related-products.php:517 247 247 msgid "Combined (Premium)" 248 248 msgstr "" 249 249 250 #: wpc-custom-related-products.php: 492250 #: wpc-custom-related-products.php:528 251 251 msgid "Limit" 252 252 msgstr "" 253 253 254 #: wpc-custom-related-products.php: 498255 #: wpc-custom-related-products.php:8 10254 #: wpc-custom-related-products.php:534 255 #: wpc-custom-related-products.php:846 256 256 msgid "Order by" 257 257 msgstr "" 258 258 259 #: wpc-custom-related-products.php:5 00260 #: wpc-custom-related-products.php:5 14259 #: wpc-custom-related-products.php:536 260 #: wpc-custom-related-products.php:550 261 261 msgid "Default" 262 262 msgstr "" 263 263 264 #: wpc-custom-related-products.php:5 02265 #: wpc-custom-related-products.php:8 15264 #: wpc-custom-related-products.php:538 265 #: wpc-custom-related-products.php:851 266 266 msgid "ID" 267 267 msgstr "" 268 268 269 #: wpc-custom-related-products.php:5 03269 #: wpc-custom-related-products.php:539 270 270 msgid "Name" 271 271 msgstr "" 272 272 273 #: wpc-custom-related-products.php:5 04273 #: wpc-custom-related-products.php:540 274 274 msgid "Type" 275 275 msgstr "" 276 276 277 #: wpc-custom-related-products.php:5 05277 #: wpc-custom-related-products.php:541 278 278 msgid "Rand" 279 279 msgstr "" 280 280 281 #: wpc-custom-related-products.php:5 06282 #: wpc-custom-related-products.php:8 16281 #: wpc-custom-related-products.php:542 282 #: wpc-custom-related-products.php:852 283 283 msgid "Date" 284 284 msgstr "" 285 285 286 #: wpc-custom-related-products.php:5 07287 #: wpc-custom-related-products.php:8 18286 #: wpc-custom-related-products.php:543 287 #: wpc-custom-related-products.php:854 288 288 msgid "Price" 289 289 msgstr "" 290 290 291 #: wpc-custom-related-products.php:5 08292 #: wpc-custom-related-products.php:8 17291 #: wpc-custom-related-products.php:544 292 #: wpc-custom-related-products.php:853 293 293 msgid "Modified" 294 294 msgstr "" 295 295 296 #: wpc-custom-related-products.php:5 12297 #: wpc-custom-related-products.php:8 23296 #: wpc-custom-related-products.php:548 297 #: wpc-custom-related-products.php:859 298 298 msgid "Order" 299 299 msgstr "" 300 300 301 #: wpc-custom-related-products.php:5 15302 #: wpc-custom-related-products.php:8 27301 #: wpc-custom-related-products.php:551 302 #: wpc-custom-related-products.php:863 303 303 msgid "DESC" 304 304 msgstr "" 305 305 306 #: wpc-custom-related-products.php:5 16307 #: wpc-custom-related-products.php:8 26306 #: wpc-custom-related-products.php:552 307 #: wpc-custom-related-products.php:862 308 308 msgid "ASC" 309 309 msgstr "" 310 310 311 #: wpc-custom-related-products.php:5 24311 #: wpc-custom-related-products.php:560 312 312 msgid "Products" 313 313 msgstr "" 314 314 315 #: wpc-custom-related-products.php:5 30315 #: wpc-custom-related-products.php:566 316 316 msgid "Search for a product…" 317 317 msgstr "" 318 318 319 #: wpc-custom-related-products.php:5 45319 #: wpc-custom-related-products.php:581 320 320 msgid "Terms" 321 321 msgstr "" 322 322 323 #: wpc-custom-related-products.php:6 57323 #: wpc-custom-related-products.php:693 324 324 msgid "Community support" 325 325 msgstr "" 326 326 327 327 #. translators: keyword 328 #: wpc-custom-related-products.php:7 07328 #: wpc-custom-related-products.php:743 329 329 #, php-format 330 330 msgid "No results found for \"%s\"" 331 331 msgstr "" 332 332 333 #: wpc-custom-related-products.php:7 17333 #: wpc-custom-related-products.php:753 334 334 msgid "Add" 335 335 msgstr "" 336 336 337 #: wpc-custom-related-products.php:7 19337 #: wpc-custom-related-products.php:755 338 338 msgid "Remove" 339 339 msgstr "" 340 340 341 #: wpc-custom-related-products.php:7 56341 #: wpc-custom-related-products.php:792 342 342 msgid "Product wasn't returned." 343 343 msgstr "" 344 344 345 #: wpc-custom-related-products.php: 770345 #: wpc-custom-related-products.php:806 346 346 msgid "settings" 347 347 msgstr "" 348 348 349 #: wpc-custom-related-products.php: 775349 #: wpc-custom-related-products.php:811 350 350 msgid "searching..." 351 351 msgstr "" 352 352 353 #: wpc-custom-related-products.php: 777353 #: wpc-custom-related-products.php:813 354 354 msgid "Type any keyword to search" 355 355 msgstr "" 356 356 357 #: wpc-custom-related-products.php: 783358 #: wpc-custom-related-products.php:8 13357 #: wpc-custom-related-products.php:819 358 #: wpc-custom-related-products.php:849 359 359 msgid "Selected" 360 360 msgstr "" 361 361 362 362 #. translators: default 363 #: wpc-custom-related-products.php: 789363 #: wpc-custom-related-products.php:825 364 364 #, php-format 365 365 msgid "* If you don't choose any products, it can show products from %s." … … 367 367 368 368 #. translators: default 369 #: wpc-custom-related-products.php: 790369 #: wpc-custom-related-products.php:826 370 370 msgid "Default Products" 371 371 msgstr "" 372 372 373 #: wpc-custom-related-products.php:8 14373 #: wpc-custom-related-products.php:850 374 374 msgid "Title" 375 375 msgstr "" -
wpc-custom-related-products/trunk/readme.txt
r3425987 r3483018 4 4 Tags: woocommerce, wpc, related, custom related 5 5 Tested up to: 6.9 6 Version: 3.2. 27 Stable tag: 3.2. 26 Version: 3.2.3 7 Stable tag: 3.2.3 8 8 License: GPLv2 or later 9 9 License URI: http://www.gnu.org/licenses/gpl-2.0.html … … 43 43 44 44 == Changelog == 45 46 = 3.2.3 = 47 * Fixed: Minor JS/CSS issues in the backend 48 * Updated: Compatible with WP 6.9 & Woo 10.6 45 49 46 50 = 3.2.2 = -
wpc-custom-related-products/trunk/wpc-custom-related-products.php
r3425987 r3483018 4 4 Plugin URI: https://wpclever.net/ 5 5 Description: WPC Custom Related Products allows you to choose custom related products for each product. 6 Version: 3.2. 26 Version: 3.2.3 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. 415 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( 'WOOCR_VERSION' ) && define( 'WOOCR_VERSION', '3.2. 2' );22 ! defined( 'WOOCR_VERSION' ) && define( 'WOOCR_VERSION', '3.2.3' ); 23 23 ! defined( 'WOOCR_LITE' ) && define( 'WOOCR_LITE', __FILE__ ); 24 24 ! defined( 'WOOCR_FILE' ) && define( 'WOOCR_FILE', __FILE__ ); … … 31 31 ! defined( 'WPC_URI' ) && define( 'WPC_URI', WOOCR_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'; … … 68 69 // Settings 69 70 add_action( 'admin_init', [ $this, 'register_settings' ] ); 71 add_filter( 'pre_update_option', [ $this, 'last_saved' ], 10, 2 ); 70 72 add_action( 'admin_menu', [ $this, 'admin_menu' ] ); 71 73 … … 133 135 // settings 134 136 register_setting( 'woocr_settings', 'woocr_settings', [ 137 'type' => 'array', 138 'sanitize_callback' => [ $this, 'sanitize_array' ], 139 ] ); 140 // rules 141 register_setting( 'woocr_rules', 'woocr_rules_settings', [ 135 142 'type' => 'array', 136 143 'sanitize_callback' => [ $this, 'sanitize_array' ], … … 140 147 'sanitize_callback' => [ $this, 'sanitize_array' ], 141 148 ] ); 149 } 150 151 function last_saved( $value, $option ) { 152 if ( $option == 'woocr_settings' || $option == 'woocr_rules_settings' ) { 153 $value['_last_saved'] = current_time( 'timestamp' ); 154 $value['_last_saved_by'] = get_current_user_id(); 155 } 156 157 return $value; 142 158 } 143 159 … … 323 339 <tr class="submit"> 324 340 <th colspan="2"> 325 <?php settings_fields( 'woocr_settings' ); ?><?php submit_button(); ?> 341 <div class="wpclever_submit"> 342 <?php 343 settings_fields( 'woocr_settings' ); 344 submit_button( '', 'primary', 'submit', false ); 345 346 if ( function_exists( 'wpc_last_saved' ) ) { 347 wpc_last_saved( self::get_settings() ); 348 } 349 ?> 350 </div> 326 351 <a style="display: none;" class="wpclever_export" 327 352 data-key="woocr_settings" … … 410 435 <tr class="submit"> 411 436 <th colspan="2"> 412 <?php settings_fields( $name ); ?><?php submit_button(); ?> 437 <div class="wpclever_submit"> 438 <?php 439 $log = $name . '_settings'; 440 echo '<input type="hidden" name="' . $log . '[version]" value="' . esc_attr( WOOCR_VERSION ) . '"/>'; 441 settings_fields( $name ); 442 submit_button( '', 'primary', 'submit', false ); 443 444 if ( function_exists( 'wpc_last_saved' ) ) { 445 wpc_last_saved( get_option( $log, [] ) ); 446 } 447 ?> 448 </div> 413 449 <a style="display: none;" class="wpclever_export" 414 450 data-key="woocr_rules"
Note: See TracChangeset
for help on using the changeset viewer.