Plugin Directory

Changeset 3483018


Ignore:
Timestamp:
03/15/2026 10:25:30 AM (13 days ago)
Author:
wpclever
Message:

Update 3.2.3

Location:
wpc-custom-related-products
Files:
36 added
7 edited

Legend:

Unmodified
Added
Removed
  • wpc-custom-related-products/trunk/includes/dashboard/css/dashboard.css

    r3388552 r3483018  
    287287}
    288288
     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
    289311.wpclever_settings_page .wpclever_settings_page_content table tr.submit .wpclever_export {
    290312  position: absolute;
     
    293315  transform: translateY(-50%);
    294316  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;
    295330}
    296331
     
    462497  border-left: none;
    463498  border-right: 4px solid #23282d;
     499}
     500
     501body.rtl .wpclever_settings_page .wpclever_settings_page_content table tr.submit .wpclever_export {
     502  left: 20px;
     503  right: auto;
    464504}
    465505
  • 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  
    299299}
    300300
     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
    301323.wpclever_settings_page .wpclever_settings_page_content table tr.submit .wpclever_export {
    302324  position: absolute;
     
    305327  transform: translateY(-50%);
    306328  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;
    307348}
    308349
     
    478519  border-left: none;
    479520  border-right: 4px solid #23282d;
     521}
     522
     523body.rtl .wpclever_settings_page .wpclever_settings_page_content table tr.submit .wpclever_export {
     524  left: 20px;
     525  right: auto;
    480526}
    481527
  • wpc-custom-related-products/trunk/includes/dashboard/wpc-dashboard.php

    r3388552 r3483018  
    11<?php
    22defined( 'ABSPATH' ) || exit;
    3 
    4 if ( ! class_exists( 'WPCleverMenu' ) ) {
    5     class WPCleverMenu {
    6         function __construct() {
    7             // do nothing, moved to WPCleverDashboard
    8         }
    9     }
    10 
    11     new WPCleverMenu();
    12 }
    133
    144if ( ! class_exists( 'WPCleverDashboard' ) ) {
     
    232222
    233223            if ( ! empty( $key ) && ( $settings = get_option( $key ) ) ) {
     224                unset( $settings['_last_saved'] );
     225                unset( $settings['_last_saved_by'] );
     226
    234227                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>';
    235228                echo '<div style="display: flex; align-items: center"><button class="button button-primary wpclever_import" data-key="' . esc_attr( $key ) . '">Update</button>';
     
    265258    new WPCleverDashboard();
    266259}
     260
     261if ( ! 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) 2025 WPClever
     1# Copyright (C) 2026 WPClever
    22# This file is distributed under the GPLv2 or later.
    33msgid ""
    44msgstr ""
    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"
    66"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/wpc-custom-related-products\n"
    77"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
     
    1010"Content-Type: text/plain; charset=UTF-8\n"
    1111"Content-Transfer-Encoding: 8bit\n"
    12 "POT-Creation-Date: 2025-12-23T09:01:10+00:00\n"
     12"POT-Creation-Date: 2026-03-15T10:24:01+00:00\n"
    1313"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
    1414"X-Generator: WP-CLI 2.12.0\n"
     
    4040msgstr ""
    4141
    42 #: wpc-custom-related-products.php:145
    43 #: wpc-custom-related-products.php:159
     42#: wpc-custom-related-products.php:161
     43#: wpc-custom-related-products.php:175
    4444msgid "WPC Custom Related Products"
    4545msgstr ""
    4646
    47 #: wpc-custom-related-products.php:145
    48 #: wpc-custom-related-products.php:733
     47#: wpc-custom-related-products.php:161
     48#: wpc-custom-related-products.php:769
    4949msgid "Related Products"
    5050msgstr ""
    5151
    52 #: wpc-custom-related-products.php:159
     52#: wpc-custom-related-products.php:175
    5353msgid "Premium"
    5454msgstr ""
    5555
    5656#. translators: stars
    57 #: wpc-custom-related-products.php:162
     57#: wpc-custom-related-products.php:178
    5858#, php-format
    5959msgid "Thank you for using our plugin! If you are satisfied, please reward it a full five-star %s rating."
    6060msgstr ""
    6161
    62 #: wpc-custom-related-products.php:165
     62#: wpc-custom-related-products.php:181
    6363msgid "Reviews"
    6464msgstr ""
    6565
    66 #: wpc-custom-related-products.php:168
     66#: wpc-custom-related-products.php:184
    6767msgid "Changelog"
    6868msgstr ""
    6969
    70 #: wpc-custom-related-products.php:171
     70#: wpc-custom-related-products.php:187
    7171msgid "Discussion"
    7272msgstr ""
    7373
    74 #: wpc-custom-related-products.php:179
     74#: wpc-custom-related-products.php:195
    7575msgid "Settings updated."
    7676msgstr ""
    7777
    78 #: wpc-custom-related-products.php:186
    79 #: wpc-custom-related-products.php:638
     78#: wpc-custom-related-products.php:202
     79#: wpc-custom-related-products.php:674
    8080msgid "How to use?"
    8181msgstr ""
    8282
    83 #: wpc-custom-related-products.php:190
    84 #: wpc-custom-related-products.php:639
     83#: wpc-custom-related-products.php:206
     84#: wpc-custom-related-products.php:675
    8585msgid "Settings"
    8686msgstr ""
    8787
    88 #: wpc-custom-related-products.php:194
    89 #: wpc-custom-related-products.php:250
    90 #: wpc-custom-related-products.php:640
     88#: wpc-custom-related-products.php:210
     89#: wpc-custom-related-products.php:266
     90#: wpc-custom-related-products.php:676
    9191msgid "Smart Related"
    9292msgstr ""
    9393
    94 #: wpc-custom-related-products.php:199
    95 #: wpc-custom-related-products.php:641
     94#: wpc-custom-related-products.php:215
     95#: wpc-custom-related-products.php:677
    9696msgid "Premium Version"
    9797msgstr ""
    9898
    99 #: wpc-custom-related-products.php:203
     99#: wpc-custom-related-products.php:219
    100100msgid "Essential Kit"
    101101msgstr ""
    102102
    103 #: wpc-custom-related-products.php:211
     103#: wpc-custom-related-products.php:227
    104104msgid "When creating/editing the product, please choose \"Related Product\" tab then you can search and add custom related products."
    105105msgstr ""
    106106
    107 #: wpc-custom-related-products.php:232
     107#: wpc-custom-related-products.php:248
    108108msgid "General"
    109109msgstr ""
    110110
    111 #: wpc-custom-related-products.php:236
     111#: wpc-custom-related-products.php:252
    112112msgid "Exclude unpurchasable"
    113113msgstr ""
    114114
    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
     120msgid "Yes"
     121msgstr ""
     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
     128msgid "No"
     129msgstr ""
     130
     131#: wpc-custom-related-products.php:258
     132msgid "Exclude unpurchasable products from related."
     133msgstr ""
     134
     135#: wpc-custom-related-products.php:262
     136msgid "Default products"
     137msgstr ""
     138
     139#: wpc-custom-related-products.php:265
     140msgid "Default Related"
     141msgstr ""
     142
     143#: wpc-custom-related-products.php:267
     144msgid "Upsells"
     145msgstr ""
     146
     147#: wpc-custom-related-products.php:268
     148msgid "Cross-sells"
     149msgstr ""
     150
     151#: wpc-custom-related-products.php:269
     152msgid "Upsells & Cross-sells"
     153msgstr ""
     154
     155#: wpc-custom-related-products.php:270
     156#: wpc-custom-related-products.php:537
     157msgid "None"
     158msgstr ""
     159
     160#: wpc-custom-related-products.php:278
     161msgid "Default products limit"
     162msgstr ""
     163
    116164#: 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
    166166msgid "Search"
    167167msgstr ""
    168168
    169 #: wpc-custom-related-products.php:277
     169#: wpc-custom-related-products.php:293
    170170msgid "Search limit"
    171171msgstr ""
    172172
    173 #: wpc-custom-related-products.php:286
     173#: wpc-custom-related-products.php:302
    174174msgid "Search by SKU"
    175175msgstr ""
    176176
    177 #: wpc-custom-related-products.php:295
     177#: wpc-custom-related-products.php:311
    178178msgid "Search by ID"
    179179msgstr ""
    180180
    181 #: wpc-custom-related-products.php:304
     181#: wpc-custom-related-products.php:320
    182182msgid "Search exact"
    183183msgstr ""
    184184
    185 #: wpc-custom-related-products.php:310
     185#: wpc-custom-related-products.php:326
    186186msgid "Match whole product title or content?"
    187187msgstr ""
    188188
    189 #: wpc-custom-related-products.php:314
     189#: wpc-custom-related-products.php:330
    190190msgid "Search sentence"
    191191msgstr ""
    192192
    193 #: wpc-custom-related-products.php:320
     193#: wpc-custom-related-products.php:336
    194194msgid "Do a phrase search?"
    195195msgstr ""
    196196
    197 #: wpc-custom-related-products.php:329
    198 #: wpc-custom-related-products.php:416
     197#: wpc-custom-related-products.php:354
     198#: wpc-custom-related-products.php:452
    199199msgid "import / export"
    200200msgstr ""
    201201
    202 #: wpc-custom-related-products.php:380
     202#: wpc-custom-related-products.php:405
    203203msgid "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."
    204204msgstr ""
    205205
    206 #: wpc-custom-related-products.php:400
     206#: wpc-custom-related-products.php:425
    207207msgid "+ Add rule"
    208208msgstr ""
    209209
    210 #: wpc-custom-related-products.php:402
     210#: wpc-custom-related-products.php:427
    211211msgid "Expand All"
    212212msgstr ""
    213213
    214 #: wpc-custom-related-products.php:404
     214#: wpc-custom-related-products.php:429
    215215msgid "Collapse All"
    216216msgstr ""
    217217
    218 #: wpc-custom-related-products.php:447
     218#: wpc-custom-related-products.php:483
    219219msgid "duplicate"
    220220msgstr ""
    221221
    222 #: wpc-custom-related-products.php:449
     222#: wpc-custom-related-products.php:485
    223223msgid "remove"
    224224msgstr ""
    225225
    226 #: wpc-custom-related-products.php:454
     226#: wpc-custom-related-products.php:490
    227227msgid "Add linked products to which?"
    228228msgstr ""
    229229
    230 #: wpc-custom-related-products.php:460
     230#: wpc-custom-related-products.php:496
    231231msgid "Define applicable linked products:"
    232232msgstr ""
    233233
    234 #: wpc-custom-related-products.php:472
     234#: wpc-custom-related-products.php:508
    235235msgid "Source"
    236236msgstr ""
    237237
    238 #: wpc-custom-related-products.php:478
     238#: wpc-custom-related-products.php:514
    239239msgid "All products"
    240240msgstr ""
    241241
    242 #: wpc-custom-related-products.php:479
     242#: wpc-custom-related-products.php:515
    243243msgid "Selected products"
    244244msgstr ""
    245245
    246 #: wpc-custom-related-products.php:481
     246#: wpc-custom-related-products.php:517
    247247msgid "Combined (Premium)"
    248248msgstr ""
    249249
    250 #: wpc-custom-related-products.php:492
     250#: wpc-custom-related-products.php:528
    251251msgid "Limit"
    252252msgstr ""
    253253
    254 #: wpc-custom-related-products.php:498
    255 #: wpc-custom-related-products.php:810
     254#: wpc-custom-related-products.php:534
     255#: wpc-custom-related-products.php:846
    256256msgid "Order by"
    257257msgstr ""
    258258
    259 #: wpc-custom-related-products.php:500
    260 #: wpc-custom-related-products.php:514
     259#: wpc-custom-related-products.php:536
     260#: wpc-custom-related-products.php:550
    261261msgid "Default"
    262262msgstr ""
    263263
    264 #: wpc-custom-related-products.php:502
    265 #: wpc-custom-related-products.php:815
     264#: wpc-custom-related-products.php:538
     265#: wpc-custom-related-products.php:851
    266266msgid "ID"
    267267msgstr ""
    268268
    269 #: wpc-custom-related-products.php:503
     269#: wpc-custom-related-products.php:539
    270270msgid "Name"
    271271msgstr ""
    272272
    273 #: wpc-custom-related-products.php:504
     273#: wpc-custom-related-products.php:540
    274274msgid "Type"
    275275msgstr ""
    276276
    277 #: wpc-custom-related-products.php:505
     277#: wpc-custom-related-products.php:541
    278278msgid "Rand"
    279279msgstr ""
    280280
    281 #: wpc-custom-related-products.php:506
    282 #: wpc-custom-related-products.php:816
     281#: wpc-custom-related-products.php:542
     282#: wpc-custom-related-products.php:852
    283283msgid "Date"
    284284msgstr ""
    285285
    286 #: wpc-custom-related-products.php:507
    287 #: wpc-custom-related-products.php:818
     286#: wpc-custom-related-products.php:543
     287#: wpc-custom-related-products.php:854
    288288msgid "Price"
    289289msgstr ""
    290290
    291 #: wpc-custom-related-products.php:508
    292 #: wpc-custom-related-products.php:817
     291#: wpc-custom-related-products.php:544
     292#: wpc-custom-related-products.php:853
    293293msgid "Modified"
    294294msgstr ""
    295295
    296 #: wpc-custom-related-products.php:512
    297 #: wpc-custom-related-products.php:823
     296#: wpc-custom-related-products.php:548
     297#: wpc-custom-related-products.php:859
    298298msgid "Order"
    299299msgstr ""
    300300
    301 #: wpc-custom-related-products.php:515
    302 #: wpc-custom-related-products.php:827
     301#: wpc-custom-related-products.php:551
     302#: wpc-custom-related-products.php:863
    303303msgid "DESC"
    304304msgstr ""
    305305
    306 #: wpc-custom-related-products.php:516
    307 #: wpc-custom-related-products.php:826
     306#: wpc-custom-related-products.php:552
     307#: wpc-custom-related-products.php:862
    308308msgid "ASC"
    309309msgstr ""
    310310
    311 #: wpc-custom-related-products.php:524
     311#: wpc-custom-related-products.php:560
    312312msgid "Products"
    313313msgstr ""
    314314
    315 #: wpc-custom-related-products.php:530
     315#: wpc-custom-related-products.php:566
    316316msgid "Search for a product&hellip;"
    317317msgstr ""
    318318
    319 #: wpc-custom-related-products.php:545
     319#: wpc-custom-related-products.php:581
    320320msgid "Terms"
    321321msgstr ""
    322322
    323 #: wpc-custom-related-products.php:657
     323#: wpc-custom-related-products.php:693
    324324msgid "Community support"
    325325msgstr ""
    326326
    327327#. translators: keyword
    328 #: wpc-custom-related-products.php:707
     328#: wpc-custom-related-products.php:743
    329329#, php-format
    330330msgid "No results found for \"%s\""
    331331msgstr ""
    332332
    333 #: wpc-custom-related-products.php:717
     333#: wpc-custom-related-products.php:753
    334334msgid "Add"
    335335msgstr ""
    336336
    337 #: wpc-custom-related-products.php:719
     337#: wpc-custom-related-products.php:755
    338338msgid "Remove"
    339339msgstr ""
    340340
    341 #: wpc-custom-related-products.php:756
     341#: wpc-custom-related-products.php:792
    342342msgid "Product wasn't returned."
    343343msgstr ""
    344344
    345 #: wpc-custom-related-products.php:770
     345#: wpc-custom-related-products.php:806
    346346msgid "settings"
    347347msgstr ""
    348348
    349 #: wpc-custom-related-products.php:775
     349#: wpc-custom-related-products.php:811
    350350msgid "searching..."
    351351msgstr ""
    352352
    353 #: wpc-custom-related-products.php:777
     353#: wpc-custom-related-products.php:813
    354354msgid "Type any keyword to search"
    355355msgstr ""
    356356
    357 #: wpc-custom-related-products.php:783
    358 #: wpc-custom-related-products.php:813
     357#: wpc-custom-related-products.php:819
     358#: wpc-custom-related-products.php:849
    359359msgid "Selected"
    360360msgstr ""
    361361
    362362#. translators: default
    363 #: wpc-custom-related-products.php:789
     363#: wpc-custom-related-products.php:825
    364364#, php-format
    365365msgid "* If you don't choose any products, it can show products from %s."
     
    367367
    368368#. translators: default
    369 #: wpc-custom-related-products.php:790
     369#: wpc-custom-related-products.php:826
    370370msgid "Default Products"
    371371msgstr ""
    372372
    373 #: wpc-custom-related-products.php:814
     373#: wpc-custom-related-products.php:850
    374374msgid "Title"
    375375msgstr ""
  • wpc-custom-related-products/trunk/readme.txt

    r3425987 r3483018  
    44Tags: woocommerce, wpc, related, custom related
    55Tested up to: 6.9
    6 Version: 3.2.2
    7 Stable tag: 3.2.2
     6Version: 3.2.3
     7Stable tag: 3.2.3
    88License: GPLv2 or later
    99License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    4343
    4444== 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
    4549
    4650= 3.2.2 =
  • wpc-custom-related-products/trunk/wpc-custom-related-products.php

    r3425987 r3483018  
    44Plugin URI: https://wpclever.net/
    55Description: WPC Custom Related Products allows you to choose custom related products for each product.
    6 Version: 3.2.2
     6Version: 3.2.3
    77Author: WPClever
    88Author URI: https://wpclever.net
     
    1313Tested up to: 6.9
    1414WC requires at least: 3.0
    15 WC tested up to: 10.4
     15WC tested up to: 10.6
    1616License: GPLv2 or later
    1717License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    2020defined( 'ABSPATH' ) || exit;
    2121
    22 ! defined( 'WOOCR_VERSION' ) && define( 'WOOCR_VERSION', '3.2.2' );
     22! defined( 'WOOCR_VERSION' ) && define( 'WOOCR_VERSION', '3.2.3' );
    2323! defined( 'WOOCR_LITE' ) && define( 'WOOCR_LITE', __FILE__ );
    2424! defined( 'WOOCR_FILE' ) && define( 'WOOCR_FILE', __FILE__ );
     
    3131! defined( 'WPC_URI' ) && define( 'WPC_URI', WOOCR_URI );
    3232
     33include 'includes/log/wpc-log.php';
    3334include 'includes/dashboard/wpc-dashboard.php';
    3435include 'includes/kit/wpc-kit.php';
     
    6869                    // Settings
    6970                    add_action( 'admin_init', [ $this, 'register_settings' ] );
     71                    add_filter( 'pre_update_option', [ $this, 'last_saved' ], 10, 2 );
    7072                    add_action( 'admin_menu', [ $this, 'admin_menu' ] );
    7173
     
    133135                    // settings
    134136                    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', [
    135142                            'type'              => 'array',
    136143                            'sanitize_callback' => [ $this, 'sanitize_array' ],
     
    140147                            'sanitize_callback' => [ $this, 'sanitize_array' ],
    141148                    ] );
     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;
    142158                }
    143159
     
    323339                                        <tr class="submit">
    324340                                            <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>
    326351                                                <a style="display: none;" class="wpclever_export"
    327352                                                   data-key="woocr_settings"
     
    410435                            <tr class="submit">
    411436                                <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>
    413449                                    <a style="display: none;" class="wpclever_export"
    414450                                       data-key="woocr_rules"
Note: See TracChangeset for help on using the changeset viewer.