Uname: Linux business55.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64
Software: LiteSpeed
PHP version: 8.1.32 [ PHP INFO ] PHP os: Linux
Server Ip: 162.213.251.212
Your Ip: 18.117.172.41
User: allssztx (535) | Group: allssztx (533)
Safe Mode: OFF
Disable Function:
NONE

name : class-before.php
<?php
/**
 * Import before.
 *
 * @package Woodmart
 */

namespace XTS\Admin\Modules\Import;

use XTS\Singleton;

if ( ! defined( 'WOODMART_THEME_DIR' ) ) {
	exit( 'No direct script access allowed' );
}

/**
 * Import before.
 */
class Before extends Singleton {
	/**
	 * Init.
	 */
	public function init() {
		$this->remove_shop_page();
		$this->import_attributes();
	}

	/**
	 * Import.
	 */
	private function import_attributes() {
		if ( get_option( 'woodmart_import_attributes' ) ) {
			return;
		}

		$attrs = array(
			'color' => array(
				'name'         => 'Color',
				'slug'         => 'color',
				'has_archives' => false,
			),
			'brand' => array(
				'name'         => 'Brand',
				'slug'         => 'brand',
				'has_archives' => false,
			),
			'size'  => array(
				'name'         => 'Size',
				'slug'         => 'size',
				'has_archives' => false,
			),
		);

		foreach ( $attrs as $attr ) {
			wc_create_attribute(
				array(
					'name'         => $attr['name'],
					'slug'         => $attr['slug'],
					'type'         => 'select',
					'order_by'     => 'menu_order',
					'has_archives' => $attr['has_archives'],
				)
			);

			register_taxonomy(
				'pa_' . $attr['slug'],
				'product',
				array(
					'labels' => array(
						'name' => $attr['name'],
					),
				)
			);
		}

		flush_rewrite_rules();
		wp_cache_flush();
		delete_transient( 'wc_attribute_taxonomies' );

		update_option( 'woodmart_import_attributes', 'imported', false );
	}

	/**
	 * Remove default shop page
	 *
	 * @return void
	 */
	private function remove_shop_page() {
		$shop_page_id = get_option( 'woocommerce_shop_page_id' );

		if ( $shop_page_id ) {
			wp_delete_post( $shop_page_id, true );
		}
	}
}
© 2025 GrazzMean-Shell