web-dev-qa-db-fra.com

Le HTML dans la vue du composant est en train d'être écrasé

J'ai une vue de composant mappée à un alias:

/view1 est en cours de redirection vers ?option=com_mycomponent&view=view1

Quand je frappe sur www.monsite.com/view1, je peux voir que le chemin d'exécution frappe le fichier default.php de view1 en mettant un peu de débogage et de sortie. Le problème est que lorsque la page continue à se charger, le code HTML ajouté dans le fichier default.php est supprimé.

Je n'ai pas ce problème lorsque j'utilise un alias pour la vue par défaut du composant et que je spécifie la tâche dans l'URL. Par exemple:

/mycomponent?view=view1 se chargera correctement, où l'alias mycomponent correspond à la vue par défaut du com_mycomponent.

Je voudrais alias la vue directement en utilisant /view1 et qu'il se comporte de la même manière que si j'avais spécifié la vue dans l'URL. Y-a-t-il un moyen de faire ça?

1
ContextSwitch

Je suis désolé, je ne suis pas un programmeur qui écrit cette partie, mais il existe deux approches.

La première consiste à formuler votre routeur pour diriger spécifiquement cette vue. Il existe le routeur par défaut Joomla, mais vous pouvez également le rendre plus précis.

L'autre réponse serait le choix par site, qui consiste à utiliser un gestionnaire SEF externe, tel que sh404SEF, qui garantirait que la vue est entièrement attribuée à chaque fois que l'alias est utilisé. Vous voyez réellement l'URL dans le cache et assurez-vous qu'il inclut l'aspect "vue" dans l'URL nonSEF.

1
Toni Marie