public function filter_onInit() { $strataRewriter = Strata::rewriter(); $i18n = Strata::i18n(); $configuration = $i18n->getConfiguration(); // Taxonomies $rewriter = new TaxonomyRewriter($i18n, $strataRewriter); $rewriter->setConfiguration($configuration); $rewriter->rewrite(); // Custom Post Types $rewriter = new CustomPostTypeRewriter($i18n, $strataRewriter); $rewriter->setConfiguration($configuration); $rewriter->rewrite(); // Translate homepages $rewriter = new HomepageRewriter($i18n, $strataRewriter); $rewriter->setDefaultHomepageId($i18n->query()->getDefaultHomepageId()); $rewriter->rewrite(); // Translate the default slugs $rewriter = new DefaultWordpressRewriter($i18n, $strataRewriter); $rewriter->setConfiguration($configuration); $rewriter->rewrite(); $postPermalink = new PostPermalinkManager(); add_filter('post_link', array($postPermalink, "filter_onCptLink"), 5, 2); add_filter('post_type_link', array($postPermalink, "filter_onCptLink"), 5, 2); add_filter('page_link', array($postPermalink, "filter_onPostLink"), 5, 2); $termPermalink = new TermPermalinkManager(); add_filter('term_link', array($termPermalink, 'filter_onTermLink'), 5, 3); $metaManager = new PostMetaManager(); add_action('save_post', array($metaManager, 'filter_onSavePost'), 100); $metaManager = new TermMetaManager(); add_action('create_term', array($metaManager, 'filter_onCreateTerm'), 100); add_action('edit_term', array($metaManager, 'filter_onEditTerm'), 100); }
private function saveRules() { if (count($this->collectedRewrites)) { $rewriter = Strata::rewriter(); foreach ($this->collectedRewrites as $rewrite) { $rewriter->addRule($rewrite[0], $rewrite[1]); } } if (count($this->collectedRoutes)) { $router = Strata::router(); $router->addModelRoutes($this->collectedRoutes); } }