# timetics/1.0.61/base/taxonomy.php

Timetics – Appointment Booking Calendar &amp; Scheduling, version 1.0.61. 78 lines.

- Page: https://pluginprobe.com/plugins/timetics/1.0.61/code/base/taxonomy.php
- Raw: https://pluginprobe.com/plugins/timetics/1.0.61/raw/base/taxonomy.php
- Modified: 2026-02-17T03:25:02+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/timetics/1.0.61/code/base/taxonomy.php#L10-L20`.

```php
<?php
/**
 * Taxonomy Base Class
 *
 * @since 1.0.0
 *
 * @package Timetics
 */
namespace Timetics\Base;

defined( 'ABSPATH' ) || exit;

/**
 * Taxonomy Class.
 *
 * @since 1.0.0
 */
abstract class Taxonomy {
    /**
     * Store taxonomy name
     *
     * @since 1.0.0
     *
     * @var string $name
     */
    protected $name;

    /**
     * Store custom post type
     *
     * @since 1.0.0
     *
     * @var string $cpt
     */
    protected $cpt;

    /**
     * Store taxonomy args.
     *
     * @since 1.0.0
     *
     * @var array $args
     */
    protected $args;

    /**
     * Taxonomy Constructor.
     *
     * @since 1.0.0
     *
     * @return  void
     */
    public function __construct() {
        $this->set_props();
        add_action( 'init', [ $this, 'register_taxonomy' ] );
    }

    /**
     * Regisetr custom taxonomy
     *
     * @since 1.0.0
     *
     * @return  void
     */
    public function register_taxonomy() {
        register_taxonomy( $this->name, $this->cpt, $this->args );
    }

    /**
     * Set config
     *
     * @since 1.0.0
     *
     * @return void
     */
    abstract public function set_props();
}

```
