public function getTerms($taxonomy)
    {
        // If terms isn't set
        if (!$this->terms) {
            // Retrieve the transient value
            $transientKey = sprintf('WPMVC\Models\Post::getTerms(%s)', $this->id(), $taxonomy);
            $terms = WP::getTransient($transientKey);
            // If the terms isn't found in the cache
            if (!$terms) {
                // Query for the terms
                $args = array(
                    'orderby' => 'name',
                    'order' => 'ASC'
                );
                // Retrieve and set the terms
                $terms = wp_get_post_terms($this->id(), $taxonomy, $args);
                // Store into the cache
                WP::setTransient($transientKey, $terms, static::$transientTimeout);
            }
            // Set the terms
            $this->terms[$taxonomy] = $terms;
        }
        return $this->terms[$taxonomy];
    }