Aller au contenu principal
Version: 0.6.0

Controller

Les controllers offrent une multitude de méthodes permettant de faciliter le développement comme la récupération des services principaux ou les redirections.

Récupération des services principaux

Plusieurs méthodes permettent de récupérer un service en particulier sans devoir chercher dans le conteneur directement. Voici les méthodes et le service associé :

  • customize() -> Appareance
  • postTypes() -> PostTypes
  • adminPages() -> AdminPages
  • templates() -> Templates
  • flash() -> FlashBag

getService()

Dans le cas ou vous souhaitez récupérer un service qui n'est pas listé ci-dessus, vous pouvez utiliser cette méthode. Il est recommandé d'utiliser la constante NAME pour obtenir le nom du service.

$service = $this->getService(Router::NAME);

render(string $template, array $data = [])

Rend une vue Twig.

json(array $data)

Retourne une réponse JSON.

redirect(string $url)

Redirige vers une URL.

redirectToRoute(string $routeName)

Redirige vers une route préalablement enregistrée par le service Router.

redirectBack()

Redirige vers la page précédente en utilisant l'en-tête Referer. Si aucun referer n'est présent, redirige vers la racine du site.

redirectToPost(int|\WP_Post $post)

Redirige vers la page d'une publication en utilisant son ID ou l'objet WP_Post.

getPostType(string $slug)

Retourne un PostType enregistrer par le service PostTypes. Il est également possible de récupérer les post types natifs de Wordpress en passant leur slug respectif : post, page, attachment.

flashAdd(string $key, string $message)

Enregistre un message dans la session pour être consommé dans la requête suivante.

Il est existe également les méthodes : flashInfo(), flashError(), flashSuccess() et flashWarning().

Chacune de ses méthodes prennent uniquement le message en paramètre car la clé est déterminée automatiquement. flashInfo() utilise la clé 'info', flashError() la clé 'error', flashSuccess() la clé 'success' et flashWarning() la clé 'warning'.