WC_Product::is_visible_core()protectedWC 1.0

Returns whether or not the product is visible in the catalog (doesn't trigger filters).

Метод класса: WC_Product{}

Хуков нет.

Возвращает

true|false.

Использование

// protected - в коде основоного (родительского) или дочернего класса
$result = $this->is_visible_core();

Код WC_Product::is_visible_core() WC 8.7.0

protected function is_visible_core() {
	$visible = 'visible' === $this->get_catalog_visibility() || ( is_search() && 'search' === $this->get_catalog_visibility() ) || ( ! is_search() && 'catalog' === $this->get_catalog_visibility() );

	if ( 'trash' === $this->get_status() ) {
		$visible = false;
	} elseif ( 'publish' !== $this->get_status() && ! current_user_can( 'edit_post', $this->get_id() ) ) {
		$visible = false;
	}

	if ( $this->get_parent_id() ) {
		$parent_product = wc_get_product( $this->get_parent_id() );

		if ( $parent_product && 'publish' !== $parent_product->get_status() && ! current_user_can( 'edit_post', $parent_product->get_id() ) ) {
			$visible = false;
		}
	}

	if ( 'yes' === get_option( 'woocommerce_hide_out_of_stock_items' ) && ! $this->is_in_stock() ) {
		$visible = false;
	}

	return $visible;
}