57 lines
1.0 KiB
PHP
57 lines
1.0 KiB
PHP
<?php
|
|
|
|
namespace DgoraWcas;
|
|
|
|
// Exit if accessed directly
|
|
if ( ! defined( 'ABSPATH' ) ) {
|
|
exit;
|
|
}
|
|
|
|
class Setup {
|
|
/**
|
|
* @var string
|
|
*/
|
|
private $thumbnailSize;
|
|
|
|
public function init() {
|
|
add_action( 'init', array( $this, 'setThumbnailSize' ) );
|
|
|
|
add_filter( 'woocommerce_regenerate_images_intermediate_image_sizes', array( $this, 'getImageSizes' ) );
|
|
}
|
|
|
|
/**
|
|
* Get default image size
|
|
*
|
|
* @return string
|
|
*/
|
|
public function getThumbnailSize() {
|
|
return $this->thumbnailSize;
|
|
}
|
|
|
|
/**
|
|
* Register custom image size
|
|
*
|
|
* @return void
|
|
*/
|
|
public function setThumbnailSize() {
|
|
$this->thumbnailSize = apply_filters( 'dgwt/wcas/setup/thumbnail_size', 'dgwt-wcas-product-suggestion' );
|
|
|
|
if ( $this->thumbnailSize === 'dgwt-wcas-product-suggestion' ) {
|
|
add_image_size( 'dgwt-wcas-product-suggestion', 64, 0, false );
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Images sizes to regenerate
|
|
*
|
|
* @param array $sizes
|
|
*
|
|
* @return array
|
|
*/
|
|
public function getImageSizes( $sizes ) {
|
|
$sizes[] = $this->getThumbnailSize();
|
|
|
|
return array_unique( $sizes );
|
|
}
|
|
}
|