# tier-pricing-table/7.1.7/src/Settings/Sections/SectionAbstract.php

Tiered Pricing Table for WooCommerce, version 7.1.7. 55 lines.

- Page: https://pluginprobe.com/plugins/tier-pricing-table/7.1.7/code/src/Settings/Sections/SectionAbstract.php
- Raw: https://pluginprobe.com/plugins/tier-pricing-table/7.1.7/raw/src/Settings/Sections/SectionAbstract.php
- Modified: 2026-09-02T12:48:06+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/tier-pricing-table/7.1.7/code/src/Settings/Sections/SectionAbstract.php#L10-L20`.

```php
<?php namespace TierPricingTable\Settings\Sections;

use TierPricingTable\Settings\Settings;

abstract class SectionAbstract {
	
	abstract public function getName();
	
	abstract public function getSlug();
	
	abstract public function getSettings();
	
	public function getSectionCSS(): string {
		return '';
	}
	
	public function isActive(): bool {
		
		if ( isset( $_GET['section'] ) ) {
			return $_GET['section'] === $this->getSlug();
		} else {
			return $this->getSlug() === Settings::DEFAULT_SECTION;
		}
	}
	
	public function getURL(): string {
		return add_query_arg( array( 'section' => $this->getSlug() ) );
	}
	
	public function isIntegration(): bool {
		return false;
	}
	
	/**
	 * "Unread" indicator on this section's navigation link. Return a version string to enable it;
	 * bump the version to show the badge again after it was seen. Store-wide: the first visit
	 * clears it for every user.
	 */
	public function getBadgeVersion(): ?string {
		return null;
	}
	
	public function isBadgeUnseen(): bool {
		$version = $this->getBadgeVersion();
		
		return $version && get_option( 'tpt_section_badge_seen_' . $this->getSlug() ) !== $version;
	}
	
	public function markBadgeSeen() {
		if ( $this->getBadgeVersion() ) {
			update_option( 'tpt_section_badge_seen_' . $this->getSlug(), $this->getBadgeVersion(), false );
		}
	}
}

```
