$11 GRAYBYTE WORDPRESS FILE MANAGER $49

SERVER : premium201.web-hosting.com #1 SMP Wed Mar 26 12:08:09 UTC 2025
SERVER IP : 172.67.217.254 | ADMIN IP 216.73.216.180
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : mail

/var/softaculous/sitepad/editor/site-data/plugins/kkart-pro/includes/

HOME
Current File : /var/softaculous/sitepad/editor/site-data/plugins/kkart-pro/includes//class-kkart-shipping.php
<?php
/**
 * Kkart Shipping
 *
 * Handles shipping and loads shipping methods via hooks.
 *
 * @version 2.6.0
 * @package Kkart\Classes\Shipping
 */

use Automattic\Jetpack\Constants;

if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

/**
 * Shipping class.
 */
class KKART_Shipping {

	/**
	 * True if shipping is enabled.
	 *
	 * @var bool
	 */
	public $enabled = false;

	/**
	 * Stores methods loaded into kkart.
	 *
	 * @var array|null
	 */
	public $shipping_methods = null;

	/**
	 * Stores the shipping classes.
	 *
	 * @var array
	 */
	public $shipping_classes = array();

	/**
	 * Stores packages to ship and to get quotes for.
	 *
	 * @var array
	 */
	public $packages = array();

	/**
	 * The single instance of the class
	 *
	 * @var KKART_Shipping
	 * @since 2.1
	 */
	protected static $_instance = null;

	/**
	 * Main KKART_Shipping Instance.
	 *
	 * Ensures only one instance of KKART_Shipping is loaded or can be loaded.
	 *
	 * @since 2.1
	 * @return KKART_Shipping Main instance
	 */
	public static function instance() {
		if ( is_null( self::$_instance ) ) {
			self::$_instance = new self();
		}
		return self::$_instance;
	}

	/**
	 * Cloning is forbidden.
	 *
	 * @since 2.1
	 */
	public function __clone() {
		kkart_doing_it_wrong( __FUNCTION__, __( 'Cloning is forbidden.', 'kkart' ), '2.1' );
	}

	/**
	 * Unserializing instances of this class is forbidden.
	 *
	 * @since 2.1
	 */
	public function __wakeup() {
		kkart_doing_it_wrong( __FUNCTION__, __( 'Unserializing instances of this class is forbidden.', 'kkart' ), '2.1' );
	}

	/**
	 * Magic getter.
	 *
	 * @param string $name Property name.
	 * @return mixed
	 */
	public function __get( $name ) {
		// Grab from cart for backwards compatibility with versions prior to 3.2.
		if ( 'shipping_total' === $name ) {
			return KKART()->cart->get_shipping_total();
		}
		if ( 'shipping_taxes' === $name ) {
			return KKART()->cart->get_shipping_taxes();
		}
	}

	/**
	 * Initialize shipping.
	 */
	public function __construct() {
		$this->enabled = kkart_shipping_enabled();

		if ( $this->enabled ) {
			$this->init();
		}
	}

	/**
	 * Initialize shipping.
	 */
	public function init() {
		do_action( 'kkart_shipping_init' );
	}

	/**
	 * Shipping methods register themselves by returning their main class name through the kkart_shipping_methods filter.
	 *
	 * @return array
	 */
	public function get_shipping_method_class_names() {
		// Unique Method ID => Method Class name.
		$shipping_methods = array(
			'flat_rate'     => 'KKART_Shipping_Flat_Rate',
			'free_shipping' => 'KKART_Shipping_Free_Shipping',
			'local_pickup'  => 'KKART_Shipping_Local_Pickup',
		);

		// For backwards compatibility with 2.5.x we load any ENABLED legacy shipping methods here.
		$maybe_load_legacy_methods = array( 'flat_rate', 'free_shipping', 'international_delivery', 'local_delivery', 'local_pickup' );

		foreach ( $maybe_load_legacy_methods as $method ) {
			$options = get_option( 'kkart_' . $method . '_settings' );
			if ( $options && isset( $options['enabled'] ) && 'yes' === $options['enabled'] ) {
				$shipping_methods[ 'legacy_' . $method ] = 'KKART_Shipping_Legacy_' . $method;
			}
		}

		return apply_filters( 'kkart_shipping_methods', $shipping_methods );
	}

	/**
	 * Loads all shipping methods which are hooked in.
	 * If a $package is passed, some methods may add themselves conditionally and zones will be used.
	 *
	 * @param array $package Package information.
	 * @return KKART_Shipping_Method[]
	 */
	public function load_shipping_methods( $package = array() ) {
		if ( ! empty( $package ) ) {
			$debug_mode             = 'yes' === get_option( 'kkart_shipping_debug_mode', 'no' );
			$shipping_zone          = KKART_Shipping_Zones::get_zone_matching_package( $package );
			$this->shipping_methods = $shipping_zone->get_shipping_methods( true );

			// translators: %s: shipping zone name.
			$matched_zone_notice = sprintf( __( 'Customer matched zone "%s"', 'kkart' ), $shipping_zone->get_zone_name() );

			// Debug output.
			if ( $debug_mode && ! Constants::is_defined( 'KKART_CHECKOUT' ) && ! Constants::is_defined( 'KKART_DOING_AJAX' ) && ! kkart_has_notice( $matched_zone_notice ) ) {
				kkart_add_notice( $matched_zone_notice );
			}
		} else {
			$this->shipping_methods = array();
		}

		// For the settings in the backend, and for non-shipping zone methods, we still need to load any registered classes here.
		foreach ( $this->get_shipping_method_class_names() as $method_id => $method_class ) {
			$this->register_shipping_method( $method_class );
		}

		// Methods can register themselves manually through this hook if necessary.
		do_action( 'kkart_load_shipping_methods', $package );

		// Return loaded methods.
		return $this->get_shipping_methods();
	}

	/**
	 * Register a shipping method.
	 *
	 * @param object|string $method Either the name of the method's class, or an instance of the method's class.
	 *
	 * @return bool|void
	 */
	public function register_shipping_method( $method ) {
		if ( ! is_object( $method ) ) {
			if ( ! class_exists( $method ) ) {
				return false;
			}
			$method = new $method();
		}
		if ( is_null( $this->shipping_methods ) ) {
			$this->shipping_methods = array();
		}
		$this->shipping_methods[ $method->id ] = $method;
	}

	/**
	 * Unregister shipping methods.
	 */
	public function unregister_shipping_methods() {
		$this->shipping_methods = null;
	}

	/**
	 * Returns all registered shipping methods for usage.
	 *
	 * @return KKART_Shipping_Method[]
	 */
	public function get_shipping_methods() {
		if ( is_null( $this->shipping_methods ) ) {
			$this->load_shipping_methods();
		}
		return $this->shipping_methods;
	}

	/**
	 * Get an array of shipping classes.
	 *
	 * @return array
	 */
	public function get_shipping_classes() {
		if ( empty( $this->shipping_classes ) ) {
			$classes                = get_terms(
				'product_shipping_class',
				array(
					'hide_empty' => '0',
					'orderby'    => 'name',
				)
			);
			$this->shipping_classes = ! is_wp_error( $classes ) ? $classes : array();
		}
		return apply_filters( 'kkart_get_shipping_classes', $this->shipping_classes );
	}

	/**
	 * Calculate shipping for (multiple) packages of cart items.
	 *
	 * @param array $packages multi-dimensional array of cart items to calc shipping for.
	 * @return array Array of calculated packages.
	 */
	public function calculate_shipping( $packages = array() ) {
		$this->packages = array();

		if ( ! $this->enabled || empty( $packages ) ) {
			return array();
		}

		// Calculate costs for passed packages.
		foreach ( $packages as $package_key => $package ) {
			$this->packages[ $package_key ] = $this->calculate_shipping_for_package( $package, $package_key );
		}

		/**
		 * Allow packages to be reorganized after calculating the shipping.
		 *
		 * This filter can be used to apply some extra manipulation after the shipping costs are calculated for the packages
		 * but before Kkart does anything with them. A good example of usage is to merge the shipping methods for multiple
		 * packages for marketplaces.
		 *
		 * @since 2.6.0
		 *
		 * @param array $packages The array of packages after shipping costs are calculated.
		 */
		$this->packages = array_filter( (array) apply_filters( 'kkart_shipping_packages', $this->packages ) );

		return $this->packages;
	}

	/**
	 * See if package is shippable.
	 *
	 * Packages are shippable until proven otherwise e.g. after getting a shipping country.
	 *
	 * @param  array $package Package of cart items.
	 * @return bool
	 */
	public function is_package_shippable( $package ) {
		// Packages are shippable until proven otherwise.
		if ( empty( $package['destination']['country'] ) ) {
			return true;
		}

		$allowed = array_keys( KKART()->countries->get_shipping_countries() );
		return in_array( $package['destination']['country'], $allowed, true );
	}

	/**
	 * Calculate shipping rates for a package,
	 *
	 * Calculates each shipping methods cost. Rates are stored in the session based on the package hash to avoid re-calculation every page load.
	 *
	 * @param array $package Package of cart items.
	 * @param int   $package_key Index of the package being calculated. Used to cache multiple package rates.
	 *
	 * @return array|bool
	 */
	public function calculate_shipping_for_package( $package = array(), $package_key = 0 ) {
		// If shipping is disabled or the package is invalid, return false.
		if ( ! $this->enabled || empty( $package ) ) {
			return false;
		}

		$package['rates'] = array();

		// If the package is not shippable, e.g. trying to ship to an invalid country, do not calculate rates.
		if ( $this->is_package_shippable( $package ) ) {
			// Check if we need to recalculate shipping for this package.
			$package_to_hash = $package;

			// Remove data objects so hashes are consistent.
			foreach ( $package_to_hash['contents'] as $item_id => $item ) {
				unset( $package_to_hash['contents'][ $item_id ]['data'] );
			}

			// Get rates stored in the KKART session data for this package.
			$kkart_session_key = 'shipping_for_package_' . $package_key;
			$stored_rates   = KKART()->session->get( $kkart_session_key );

			// Calculate the hash for this package so we can tell if it's changed since last calculation.
			$package_hash = 'kkart_ship_' . md5( wp_json_encode( $package_to_hash ) . KKART_Cache_Helper::get_transient_version( 'shipping' ) );

			if ( ! is_array( $stored_rates ) || $package_hash !== $stored_rates['package_hash'] || 'yes' === get_option( 'kkart_shipping_debug_mode', 'no' ) ) {
				foreach ( $this->load_shipping_methods( $package ) as $shipping_method ) {
					if ( ! $shipping_method->supports( 'shipping-zones' ) || $shipping_method->get_instance_id() ) {
						/**
						 * Fires before getting shipping rates for a package.
						 *
						 * @since 4.3.0
						 * @param array $package Package of cart items.
						 * @param KKART_Shipping_Method $shipping_method Shipping method instance.
						 */
						do_action( 'kkart_before_get_rates_for_package', $package, $shipping_method );

						// Use + instead of array_merge to maintain numeric keys.
						$package['rates'] = $package['rates'] + $shipping_method->get_rates_for_package( $package );

						/**
						 * Fires after getting shipping rates for a package.
						 *
						 * @since 4.3.0
						 * @param array $package Package of cart items.
						 * @param KKART_Shipping_Method $shipping_method Shipping method instance.
						 */
						do_action( 'kkart_after_get_rates_for_package', $package, $shipping_method );
					}
				}

				// Filter the calculated rates.
				$package['rates'] = apply_filters( 'kkart_package_rates', $package['rates'], $package );

				// Store in session to avoid recalculation.
				KKART()->session->set(
					$kkart_session_key,
					array(
						'package_hash' => $package_hash,
						'rates'        => $package['rates'],
					)
				);
			} else {
				$package['rates'] = $stored_rates['rates'];
			}
		}
		return $package;
	}

	/**
	 * Get packages.
	 *
	 * @return array
	 */
	public function get_packages() {
		return $this->packages;
	}

	/**
	 * Reset shipping.
	 *
	 * Reset the totals for shipping as a whole.
	 */
	public function reset_shipping() {
		unset( KKART()->session->chosen_shipping_methods );
		$this->packages = array();
	}

	/**
	 * Deprecated
	 *
	 * @deprecated 2.6.0 Was previously used to determine sort order of methods, but this is now controlled by zones and thus unused.
	 */
	public function sort_shipping_methods() {
		kkart_deprecated_function( 'sort_shipping_methods', '2.6' );
		return $this->shipping_methods;
	}
}


Current_dir [ NOT WRITEABLE ] Document_root [ WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
21 Feb 2026 2.55 AM
root / root
0755
abstracts
--
21 Feb 2026 2.55 AM
root / root
0755
admin
--
21 Feb 2026 2.55 AM
root / root
0755
cli
--
21 Feb 2026 2.55 AM
root / root
0755
customizer
--
21 Feb 2026 2.55 AM
root / root
0755
data-stores
--
21 Feb 2026 2.55 AM
root / root
0755
emails
--
21 Feb 2026 2.55 AM
root / root
0755
export
--
21 Feb 2026 2.55 AM
root / root
0755
gateways
--
21 Feb 2026 2.55 AM
root / root
0755
import
--
21 Feb 2026 2.55 AM
root / root
0755
integrations
--
21 Feb 2026 2.55 AM
root / root
0755
interfaces
--
21 Feb 2026 2.55 AM
root / root
0755
legacy
--
21 Feb 2026 2.55 AM
root / root
0755
libraries
--
21 Feb 2026 2.55 AM
root / root
0755
log-handlers
--
21 Feb 2026 2.55 AM
root / root
0755
payment-tokens
--
21 Feb 2026 2.55 AM
root / root
0755
queue
--
21 Feb 2026 2.55 AM
root / root
0755
rest-api
--
21 Feb 2026 2.55 AM
root / root
0755
shipping
--
21 Feb 2026 2.55 AM
root / root
0755
shortcodes
--
21 Feb 2026 2.55 AM
root / root
0755
theme-support
--
21 Feb 2026 2.55 AM
root / root
0755
tracks
--
21 Feb 2026 2.55 AM
root / root
0755
traits
--
21 Feb 2026 2.55 AM
root / root
0755
walkers
--
21 Feb 2026 2.55 AM
root / root
0755
wccom-site
--
21 Feb 2026 2.55 AM
root / root
0755
widgets
--
21 Feb 2026 2.55 AM
root / root
0755
body-props-settings.php
8.183 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-ajax.php
128.261 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-api.php
4.971 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-auth.php
11.659 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-autoloader.php
2.775 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-background-emailer.php
4.593 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-background-updater.php
3.496 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-breadcrumb.php
9.465 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-cache-helper.php
10.71 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-cart-fees.php
3.416 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-cart-session.php
14.459 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-cart-totals.php
27.723 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-cart.php
63.235 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-checkout.php
44.586 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-cli.php
1.019 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-comments.php
12.993 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-countries.php
42.209 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-coupon.php
32.568 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-customer-download-log.php
3.377 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-customer-download.php
10.357 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-customer.php
27.24 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-data-exception.php
1.275 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-data-store.php
5.881 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-datetime.php
2.198 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-deprecated-action-hooks.php
6.54 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-deprecated-filter-hooks.php
6.263 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-discounts.php
30.963 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-download-handler.php
23.369 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-emails.php
22.166 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-embed.php
4.184 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-form-handler.php
43.727 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-frontend-scripts.php
25.999 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-geo-ip.php
30.435 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-geolite-integration.php
1.994 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-geolocation.php
10.338 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-https.php
4.294 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-install.php
53.838 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-integrations.php
1.285 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-log-levels.php
2.536 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-logger.php
8.208 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-meta-data.php
2.179 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-order-factory.php
3.137 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-order-item-coupon.php
4.021 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-order-item-fee.php
8.7 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-order-item-meta.php
5.8 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-order-item-product.php
13.053 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-order-item-shipping.php
7.747 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-order-item-tax.php
6.438 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-order-item.php
10.69 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-order-query.php
2.518 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-order-refund.php
4.892 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-order.php
61.028 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-payment-gateways.php
5.241 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-payment-tokens.php
5.905 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-post-data.php
17.814 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-post-types.php
26.492 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-privacy-background-process.php
1.693 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-privacy-erasers.php
13.284 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-privacy-exporters.php
14.119 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-privacy.php
14.855 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-product-attribute.php
6.887 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-product-download.php
6.015 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-product-external.php
4.774 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-product-factory.php
3.597 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-product-grouped.php
5.194 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-product-query.php
2.17 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-product-simple.php
1.854 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-product-variable.php
21.468 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-product-variation.php
17.197 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-query.php
30.399 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-rate-limiter.php
2.083 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-regenerate-images-request.php
8.169 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-regenerate-images.php
15.241 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-register-wp-admin-settings.php
4.873 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-rest-authentication.php
19.347 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-rest-exception.php
0.267 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-session-handler.php
10.567 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-shipping-rate.php
5.262 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-shipping-zone.php
13.09 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-shipping-zones.php
4.071 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-shipping.php
11.335 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-shortcodes.php
17.205 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-structured-data.php
17.201 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-tax.php
35.837 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-template-loader.php
18.436 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-tracker.php
22.509 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-validation.php
5.835 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart-webhook.php
29.851 KB
18 Feb 2026 11.32 PM
root / root
0644
class-kkart.php
31.278 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-account-functions.php
12.69 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-attribute-functions.php
20.589 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-cart-functions.php
17.269 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-conditional-functions.php
11.796 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-core-functions.php
82.039 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-coupon-functions.php
2.647 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-formatting-functions.php
41.608 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-notice-functions.php
7.444 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-order-functions.php
33.528 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-order-item-functions.php
5.056 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-page-functions.php
6.918 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-product-functions.php
47.298 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-rest-functions.php
10.621 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-stock-functions.php
12.454 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-template-functions.php
164.644 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-template-hooks.php
11.057 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-term-functions.php
19.451 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-update-functions.php
64.883 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-user-functions.php
26.584 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-webhook-functions.php
5.579 KB
18 Feb 2026 11.32 PM
root / root
0644
kkart-widget-functions.php
2.076 KB
18 Feb 2026 11.32 PM
root / root
0644
premium.php
0.921 KB
18 Feb 2026 11.32 PM
root / root
0644
premium_functions.php
0.935 KB
18 Feb 2026 11.32 PM
root / root
0644
shortcode_functions.php
71.114 KB
18 Feb 2026 11.32 PM
root / root
0644
shortcodes.php
265.735 KB
18 Feb 2026 11.32 PM
root / root
0644
template.php
2.853 KB
18 Feb 2026 11.32 PM
root / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025 CONTACT ME
Static GIF