web-dev-qa-db-fra.com

Création de modèles Joomla 3.x: puis-je apporter des modifications dans offline.php ou dans les fichiers core, les appels .php mentionnés?

Par exemple, prenons un fichier offline.php personnalisé créé/modifié:

  1. Est-ce que ça va (je sais que c'est possible, duh) d'écrire du HTML directement dans offline.php? Ou...
  2. .. est-ce que je fais des changements dans les fichiers de base qui sont appelés dans ledit fichier .php?

À l’heure actuelle, mon fichier offline.php est principalement PHP) et la petite fenêtre d’arrière-plan dans Message personnalisé sous Paramètres du site est remplie avec du code HTML, mais je vraiment préfère viens d'avoir du HTML dans le fichier .php, j'ai quelques remarques:

  • existe-t-il des problèmes de sécurité ou d'autres problèmes? OMI il ne devrait pas y en avoir puisque c'est exactement ce que c'est en HTML. Là encore, HTML et PHP sont des mondes à part.
  • bien que ce soit possible, nous n'écrivons plus de CSS dans les fichiers .html car nous avons le fichier .css pour cela. Donc, HTML pour le contenu et CSS pour le style ... Est-ce la même raison pour laquelle je ne devrais pas écrire HTML dans des fichiers .php tels que offline.php, error.php et ainsi de suite?

Merci pour les commentaires.

MODIFIER

Ok, voici un exemple. C'est la partie de offline.php qui appelle le message et le style que j'ai insérés dans le backend (Message personnalisé dans les paramètres de fichier):

<jdoc:include type="message" />
<?php if ($app->get('display_offline_message', 1) == 1 && str_replace(' ', '', $app->get('offline_message')) != '') : ?>
    <p><?php echo $app->get('offline_message'); ?></p>
<?php endif; ?>

S'il est parfaitement correct de simplement supprimer ces lignes et de coller du code HTML, je préférerais utiliser cette option même s'il ne s'agit pas uniquement du message, mais également de 20 lignes de code HTML.

Et pendant que nous y sommes, prenons un autre exemple: principal index.php. Puis-je supprimer, disons, la ligne <html lang="<?php echo $this->language; ?>" > et le remplacer simplement par <html lang="en" /> (puisque le site Web n’est que dans une langue)?

1
derpoholic

Si votre offline.php consiste simplement en un message de conception très simple, puis utilise simplement du code HTML, n'inclut même pas les fichiers de base et n'inclut aucun code PHP.

Aucune des méthodes que vous avez énumérées ne pose de problèmes de sécurité, mais ma logique est qu'il ne sert à rien que le processeur effectue un calcul si vous n'en avez pas besoin.

Les pages hors connexion ont généralement quelques styles CSS, vous pouvez donc les copier directement dans le fichier offline.php page (dans la <style... tags), au lieu d’inclure simplement le CSS. Il n'y a aucune raison d'ajouter un autre hit sur le site Web pour une simple page hors connexion.

0
itoctopus

Pure et seul HTML est pour la création de balisage pour les pages de contenu statique, php est un langage de script qui produira des données dynamiquement après le traitement.

En retirant le php de la page, vous supprimez la partie dynamique et Joomla sera annulé à ce stade.
À vous de choisir comment vous souhaitez que vos pages fonctionnent. À la fin, lorsque nous parlons de pages Web, le résultat final sera le code HTML à restituer sur le navigateur.

Pour la sécurité, il n'y a rien de impliqué en n'ayant que du HTML.

Nous sommes encore en train d'écrire des CSS dans html de temps en temps, ce n'est pas qu'il ne puisse pas être utilisé. Il y a aussi l'option d'ajouter des styles dans la partie en tête de la page et la 3ème option pour charger les fichiers CSS à partir de fichiers externes.

La 3ème option est recommandée en raison des avantages qu'elle offre.

Je ne comparerais pas cela avec le mélange de HTML avec PHP. PHP est écrit pour être utilisé avec html. Après cela, il y a tellement de pratiques et de modèles concernant l'écriture de code propre et la séparation de la logique de l'affichage, etc. ... tous ces sujets sont longs.

* Les fichiers php me confond - je ne sais pas de quoi vous parlez.

** Vous ne devez pas effectuer de modifications directement sur les fichiers principaux que vous ne contrôlez pas, car ces modifications seront supprimées lors d'une prochaine mise à jour.

0
FFrewin