Prise en main de Joomla

De Analyse Développement Hacking
Sauter à la navigation Sauter à la recherche

Glider.png

Le wiki : Accueil - Administrateur - Bureautique - Développeur - Intégrateur - Marketing - Multimédia - Objets numériques - Jeux - We make Hack

Le site : Accueil - Annuaire - Blog - Forum - Outils - Utilisateur
Le FTP : Consulter les fichiers partagés sur le FTP
Le Redmine : Consulter le Redmine

Sommaire

Prise en main de Joomla

La documentation

La documentation officielle

Source : https://docs.joomla.org

Le wiki officiel

Source : https://docs.joomla.org/Documentation_Working_Group/fr
Source : https://docs.joomla.org/JDOC:Developer_Tutorials_Project/fr

Comprendre un message affiché par Joomla

Source : https://kb.joomla.fr

Utiliser l'API de Joomla

Api Joomla : https://api.joomla.org/cms-3/namespaces/default.html
Api Joomla pour Mediawiki : api.joomla.org/cms-3/classes/JMediawiki.html
Web Services Working Group : https://docs.joomla.org/Web_Services_Working_Group

Manuel pour les développeurs Joomla

Manuel pour les développeurs Joomla : joomlacode.org/gf/download/frsrelease/4568/10541/Joomla_developer_manual.pdf

Testing de Joomla

Feuille de route

Actuellement en sa version stable 3.8, Joomla! 4 est sortit en 2016 pour sa phase de développement.
Dans cette future version majeure, le système de gestion de contenu veut faire taire ses détracteurs.
Deux objectifs principaux sont visés : simplifier la structure du CMS tout en gagnant en puissance.
Pour cette version, le noyau sera complètement révisé et toutes les extensions ne seront que des composants. Fini les modules ou les plugins en frontend !
Objectifs de Joomla 4
De nouvelles approches pour la gestion des bases de données avec le support de NoSQL et le passage à Doctrine comme couche d’abstraction pour supporter des SGDB autre que MySQL.
Source : http://www.developpez.net/forums/d1556310/php/scripts/cms/joomla/joomla-leve-voile-version-4-prevue-deuxieme-trimestre-2016-a/
La roadmap pour les versions de Joomla! à venir : https://developer.joomla.org/roadmap.html

Groupes utilisateurs de Joomla

https://community.joomla.org/user-groups.html
https://community.joomla.org/user-groups/europe/france.html

Communautés d'entre aide pour Joomla

https://gitter.im/joomla/joomla-cms
https://joomla.stackexchange.com/questions

Rejoindre les volontaires

Le site officiel pour rejoindre les volontaires de Joomla! : https://volunteers.joomla.org
La page officielle de l'équipe de traduction de Joomla! : https://crowdin.com/project/joomla-official-sites
La page officielle de l'équipe didacticiels pour les développeurs : https://docs.joomla.org/JDOC:Developer_Tutorials_Project/fr

Les différentes équipes du groupe accessibilité

Les différentes équipes du groupe Joomla accessibilité.
# Documentation accessibilité pour Joomla.
Accessibility : https://docs.joomla.org/Category:Accessibility

Installer et tester Joomla!

Installer Joomla sur Debian 9 Stretch

Mon script : https://raw.githubusercontent.com/ZerooCool/Linux-Search-Engine-Optimisation/master/installation/4-installer-joomla.sh
A comparer avec le script suivant : https://websetnet.net/fr/install-joomla-apache-debian-9-stretch/
En cas de message d'erreur de Joomla depuis Extensions/Gérer/Avertissements : "Le répertoire temporaire PHP n'est pas défini".
Consulter la page suivante : Renseigner la directive upload_tmp_dir.

Notes de configuration pour le fichier configuration.php

Permet notamment d'indiquer les accès mysql et ftp.
Faire pointer le dossier tmp et logs qui doivent avoir des droits en écriture.
Activer le mode Debug
public $debug = '1';
public $error_reporting = 'maximum';

Créer un fichier php pour remettre les droits 644 au fichier de configuration

Placer le code ci-dessous dans un fichier texte appelé chmod-configuration.php a placer à la racine de votre site.
Le script va remettre les droits 644 sur le fichier configuration.php  puis va s'auto-détruire.
Le fichier chmod-configuration.php sera supprimé après son exécution.
<?php
$file=dirname(__FILE__)."/configuration.php";
echo $file;
chmod($file, octdec(644)); 
unlink(__FILE__);
?>

Configurer l'envoie de mail par SMTP

Envoyer un mail depuis la configuration test de Joomla :
Exemple avec OVH et Nerim.
Le serveur SMTP ns0.ovh.net sur le port 587 ne permet pas l'envoie de mail. Idem pour le serveur SMTP de visionduweb : smtp.visionduweb.com
Utiliser le serveur SMTP ssl0.ovh.net sur le port 587 avec STARTTLS permet l'envoie de mail.
Il faudra donc contacter le prestataire de votre fournisseur de mail pour obtenir la bonne information concernant le serveur SMTP SSL a utiliser.

Configurer Joomla

Mise à jour

Source : https://docs.joomla.org/Joomla_1.5_to_3.x_Step_by_Step_Migration/fr

Erreurs suite à une mise à jour

L'article ne s'enregistre plus en front depuis Joomla 3.7

Résolu : https://www.joomlacontenteditor.net/support/forum/91506-i-get-an-warning-empty-solution-not-allowed-after-updating-to-joomla-4-7

PHP Warning du au fichier error.php du template non officiel de Joomla

Suite à l'erreur suivante :
PHP Warning:  require_once(/var/www/domaine/libraries/joomla/document/html/renderer/head.php): failed to open stream: No such file or directory in /var/www/domaine/templates/nomdutemplate/error.php on line 49, referer: ...
Se positionner dans le dossier du template et ouvrir le fichier error.php
/*
# Remplacer :
# require_once(JPATH_LIBRARIES.'/joomla/document/html/renderer/head.php');
*/
/*
# Par :
*/
if(!class_exists('JDocumentRendererHead')) {
        $head = JPATH_LIBRARIES . '/joomla/document/html/renderer/head.php';
        if(file_exists($head)) {
                require_once($head);
        }
}
Résolu.

Droits ACL

Tutoriel sur les droits ACL : https://docs.joomla.org/J3.x:Access_Control_List_Tutorial/fr

Développement d'un composant MVC - Ajout d'ACL : https://docs.joomla.org/J3.x:Developing_an_MVC_Component/Adding_ACL/fr
Comment permettre à certains utilisateurs d'accéder au site hors ligne : https://cinnk.com/joomla/3/trucs-et-astuces/comment-permettre-%C3%A0-certains-utilisateurs-d%E2%80%99acc%C3%A9der-au-site-hors-ligne

Découverte des anciennes extensions

Disposer d'une ancienne base de données Joomla! à installer sur une nouvelle installation propre.
Aller dans gestion des extensions, découvrir les extensions pour pouvoir réinstaller les éventuels composants, plugins, modules indiqués en base de données.

Sauvegarder et restaurer Joomla

Ne pas laisser vos sauvegardes dans des dossiers tels que /backups, /_backups, /sauvegarde, /_sauvegarde ...
Ne pas laisser vos sauvegardes directement à la racine de votre site avec un nom comme backup.zip, backup.tar, backup.tar.gz, backup.gz ...
Des scripts malveillants existent pour lancer des requêtes GET ou HEAD sur des cibles comme http://votresite/backup.zip, au petit bonheur la chance.

Récupérer un accès utilisateur

Dans la base de données, depuis la table des utilisateurs, utiliser l'un des hashs suivants pour changer le mot de passe d'un utilisateur en "secret" ou "admin".
Soit chiffrer le mot de passe en MD5.
Soit utiliser un des exemples suivants :
secret = d2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199
admin  = 433903e0a9d6a712e00251e44d29bf87:UJ0b9J5fufL3FKfCc0TLsYJBh2PFULvT
Soit utiliser (Vérifier si fonctionnel) :
secret = $2y$10$iBhenaNm4uep3kzpgJG/cOgEWPJBM2TBi8Qi5Kxl0VfZT.elOB2X2
Sinon, ajouter un administrateur.
INSERT INTO `jos31_users` (`name`, `username`, `password`, `params`)
VALUES ('Administrator2', 'admin2', 'd2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199', );
INSERT INTO `jos31_user_usergroup_map` (`user_id`,`group_id`)
VALUES (LAST_INSERT_ID(),'8');
Je partage mon propre script pour changer un mot de passe ou tous les mots de passe de Joomla : https://github.com/ZerooCool/requetes-sql-joomla

Sauvegarder avec Akeeba Backup

Installer Akeeba.
Lancer la sauvegarde automatique.

Restaurer depuis une sauvegarde de Akeeba Backup

1. Décompresser Akeeba Backup avec Akeeba eXtract Wizard : https://www.akeebabackup.com/download/akeeba-extract-wizard/akeeba-extract-wizard-3-5.html
2. Une fois le contenu décompressé, il y a un répertoire installation/sql où se trouvent les fichiers SQL pour la base de données.
3. Dans PHPmyAdmin, il faut ré-importer tous les fichiers ou en faire un unique avant.
Le moyen simple est de rechercher un «logiciel de jointure de fichiers». Utiliser l'un d'entre eux pour joindre les fichiers .s01 .s02 .s03 ...
Ensuite, joindre le .sql avec le fichier joint de sorte que le .sql est le premier et tout le reste est ajouté à la suite du fichier.
Vous pouvez maintenant modifier le fichier unique et grand selon les instructions de la documentation suivante.
Exemple :
cat -n site.s01 site.s02 site.s03 site.s04 site.s05 site.s06 site.s07 site.s08 site.s09 site.s10 site.s11 site.s12 site.s13 site.s14 site.s15 site.s16 site.s17 site.s18 site.s19 site.s20 site.s21 site.s22 site.s23 site.s24 site.s25 site.s26 site.s27 site.s28 site.s29 site.s30 site.s31 site.s32 site.s33 site.s34 site.s35 site.s36 site.s37 site.s38 site.s39 site.s40 site.s41 site.s42 site.s43 site.s44 site.s45 site.s46 site.s47 site.s48 site.s49 site.s50 site.s51 site.s52 site.s53 site.s54 site.s55 > final.txt
cat -n site.sql final.txt > base.sql

Modifier la base de données sauvegardée par Akeeba Backup

À l'aide de la commande "Remplacer" de votre éditeur de texte, remplacer la valeur `jos_ par votre préfixe de base de données.
search for CREATE TABLE `#__ replace with CREATE TABLE `work_
search for DROP TABLE IF EXISTS `#__ replace with DROP TABLE IF EXISTS `work_
search for INSERT INTO `#__ replace with INSERT INTO `work_
search for CREATE VIEW `#__ replace with CREATE VIEW `work_
search for CREATE PROCEDURE `#__ replace with CREATE PROCEDURE `work_
search for CREATE FUNCTION `#__ replace with CREATE FUNCTION `work_
search for CREATE TRIGGER `#__ replace with CREATE TRIGGER `work_
Source : https://www.akeebabackup.com/documentation/akeeba-backup-documentation/unorthodox-emergency-restoration.html

Le template nécessaire à cet affichage est indisponible

Le fichier index.php doit être présent dans le dossier du template.
Le code à la ligne 490 de \includes\application.php qui affiche le message d'erreur est le suivant :
// Fallback template
echo (JPATH_THEMES . '/' . $template->template . '/index.php');
if (!file_exists(JPATH_THEMES . '/' . $template->template . '/index.php')) {
JError::raiseWarning(0, JText::_('JERROR_ALERTNOTEMPLATE'));
Regarder les path depuis le fichier templatedetails.xml pour adapter un template manquant vers un template valide. (?!)

Mettre en place une sauvegarde automatique pour Joomla

# Sauvegarder les fichiers de son serveur et la base de données de Joomla vers Dropbox à l'aide d'une tâche cron :
Mettre en place une sauvegarde automatique pour Joomla.

Utiliser les menus de Joomla

Améliorer l'aspect visuel des menus

Attirer le regard sur le menu en ajoutant des icônes, animation en CSS3 ou interactions.

Cacher un menu

Un menu caché est un menu rendu invisible servant à créer des liens dans Joomla! sans pour autant les afficher dans un menu.
Dans chaque lien de menu, dans l’onglet Type de liens, existe la possibilité d’afficher le lien dans le menu ou de ne pas l’afficher pour le cacher.
Un lien de menu est un entrée vers un contenu.
Par cette entrée nous pouvons définir l’affichage qui en découle : les modules affichés, le template utilisé, l’affichage blog, des suffixes css...
Il peut être aussi nécessaire d’avoir un lien de menu servant d’ouverture vers des composants : page d’accueil Virtuemart, catégories Joomla!, formulaires de devis ou de contact...
Source de l'article d'origine - Web54 : https://www.web54.fr/tutoriels-joomla/astuces-joomla/la-fin-du-menu-cache-dans-joomla

Article Joomla!

Supprimer l'id de l'article et de la catégorie dans les URL de Joomla

Certains logiciels de réécriture SEO comme SH404 ou Acesef permettent de supprimer l'id de l'article dans les URL de Joomla!.
Il est également possible d'ajouter manuellement la fonctionnalité depuis Joomla!
Voir : https://www.actiaweb.com/activ/supprimer-id-du-nom-d-article-joomla.html

Ajouter une image d'entête personnalisée par article joomla

Source : https://www.web54.fr/tutoriels-joomla/astuces-joomla/ajouter-une-image-d-entete-personnalisee-par-article-joomla

Récupérer le flux RSS des derniers articles postés

https://www.visionduweb.fr/blog?format=feed&type=rss

Chercher dans Joomla

Utiliser la recherche standard.
Elle permet la recherche dans Kunena avec le plugin installé par Kunena.
Une autre option de Joomla! propose le mot de la recherche automatiquement.
Toutefois les réponses sont incomplètes, il manque les réponses du forum Kunena et des liens de Weblink.
La table #_core_log_searches recense les mots clés qui sont utilisés dans la recherche interne au site.
Supprimer des valeurs manuellement : DELETE FROM `prefixe_core_log_searches` WHERE `search_term`= 'DOMArch';

Erreurs

Trouver les erreurs sur son site Joomla

Base de connaissances de messages affichés par Joomla : https://kb.joomla.fr
Utiliser le mode développement : https://kb.joomla.fr/procedures/debug-passer-en-mode-developpement

Erreur 301

Source : https://joomlaseo.com/checklist/avoid-404-errors

Erreur 404

Une erreur 404 survient lorsque la cible d'un lien n'existe plus.
Joomla affichera une page erreur 404 par défaut qui n'est pas très esthétique.

Page 404 par défaut de Joomla

Joomla-page-erreur-404.gif

Rediriger la page erreur 404 vers une page personnalisée

Créer un article 404 non catégorisé

Créer un article 'non catégorisé' dans Joomla! qui sera utilisé comme page 404.
Ajouter un texte comme par exemple Désolé, nous n'avons pas trouvé la page demandée... Ajouter un lien vers votre page d'accueil..

Créer un élément de menu lié à votre nouvel article 404

Copier alors l'URL index.php?option=com_content&view=article&id=183 par exemple.
Mettre l'élément de menu sur 'publié : non' et fermer l'élément de menu.

Modifier le fichier error.php

Suivre la doc officielle, et, adapter si nécessaire : https://web.archive.org/web/20190128070925/https://docs.joomla.org/Creating_a_Custom_404_Error_Page/fr
Pourquoi gérer les erreurs 404 : https://docs.joomla.org/Managing_404_Errors
Se connecter au client FTP et aller dans le dossier templates/votre_template ou templates/system
A l'intérieur de l'un des 2 dossiers, vous devriez trouver un fichier error.php.
Solution 1
# En-dessous de la ligne :
defined('_JEXEC') or die;
# Ajouter :
if (($this->error->getCode()) == '404') {
header('Location: /index.php?option=com_content&view=article&id=183');
exit;
}
# Remplacer le numéro de l'article par le numéro de la page erreur 404 personnalisée.
header('Location: /index.php?option=com_content&view=article&id=183');
# L'inconvénient de cette méthode est que le navigateur reçoit toujours un code de réponse de 200 en-tête, ce qui rend difficile pour les moteurs de recherche de déterminer que cette page n'existe plus.
# Cette méthode aboutit à ce qu'on appelle les soft-404. Ce comportement est découragé.
# Cette solution 1 est décrite dans la documentation officielle de Joomla! : https://docs.joomla.org/Creating_a_Custom_404_Error_Page/fr
Solution 2
Amélioré le code avec une HTTP-reponse correcte.
# Remplacer :
header('Location: /index.php?option=com_content&view=article&id=183');
# Par :
header("HTTP/1.0 404 Not Found"); 
echo file_get_contents(JURI::root().'index.php?option=com_content&view=article&id=183');
Envoye un en-tête HTTP 404 au navigateur, reste sur la même URL et récupére le contenu de la page 404 au lieu d'y aller.
Cela se traduit par ce que l'on appelle hard-404.

Solution 3

Utiliser sh404, JoomSEF, AceSEF, MijoSEF, qui sont des extensions faites pour le seo du site, réécriture d'urls, meta title et autres, balise structurées...
Le composant sh404 permet de configurer la page erreur 404
Todo.png

Solution propriétaire

De nombreux fournisseurs de templates commerciaux ont leurs propres mécanismes de page 404, ce qui rend parfois difficile l'utilisation de cette solution.

La sécurité avec le CMS Joomla

Les exploits contre Joomla : http://www.exploitalert.com/search-results.html?search=joomla
Joomla! Vulnerable Extensions List : https://vel.joomla.org/live-vel

Lancer un scann contre Joomla

HackerTarget : https://hackertarget.com/joomla-security-scan/
Autres scann proposés depuis HackerTarget : https://hackertarget.com/vulnerability-scanner/

Les 10 causes principales du piratage d'un site Joomla

Vous utilisez une ancienne version de Joomla.
De trop vieilles extensions sont installées sur votre site Web.
Les autorisations d'écriture du fichier .htacess sont trop permissives. De préférence, être en 444 ou en 440.
Les autorisations d'écriture des fichiers *.php sont trop permissives. De préférence, être en 444.
Autoriser les utilisateurs à télécharger des scripts. Limiter les autorisations de téléchargement aux images par exemple.
Les autorisations d'écriture des répertoires publics qui permettent à un utilisateur de déposer des fichiers sont trop permissives.
Passer alors les dossiers publics en 766. Le propriétaire peut lire, écrire et exécuter. Les utilisateurs ne peuvent que lire et écrire.
Utiliser des extensions non standard qui n'ont pas été suffisamment testées.
Donner des informations d'identification à des développeurs non fiables.
Donner toutes les autorisations possibles à l'utilisateur de la base de données : une fois votre site Web Joomla configuré, l'utilisateur de la base de données ne doit INSÉRER que des lignes, des lignes UPDATE, des lignes DELETE et des tables CREATE. Il ne doit pas supprimer les tables ou la base de données. Assurez-vous que seules les autorisations nécessaires sont données pour l'utilisateur de la base de données Joomla.
Vous avez la certitude que votre site Web ne peut pas être piraté ou que personne ne le piratera : que vous ayez un petit site Web ou une grande école, votre site est susceptible de piratage. De nombreux pirates informatiques utilisent un logiciel pour rechercher sur Internet des sites Web présentant des vulnérabilités et les attaquer, simplement parce qu'ils le peuvent! Prenez toujours au sérieux la sécurité de votre site Web, ne pensez pas que si vous êtes trop petit, personne ne songe à pirater votre site Web, ou que si vous êtes trop grand, vous êtes suffisamment en sécurité et personne ne pourrait pirater votre site Web.
Ok.png 10 Reasons Why Your Joomla Website Got Hacked : https://www.itoctopus.com/10-reasons-why-your-joomla-website-got-hacked

Règles CSP pour Joomla

Le plugin HttpHeader 1.0.5 pour Joomla 3 permet d'assister la mise en place des règles CSP : https://github.com/zero-24/plg_system_httpheader/
Ajouter les règles CSP à son serveur Apache2 : https://wiki.visionduweb.fr/index.php?title=Installer_Apache2_sur_Debian#Mod_Headers
Ok.png Message fermé sur Github : https://github.com/joomla/joomla-cms/issues/23392

Protéger l'administration avec un .htpasswd

Voir le tutoriel Apache2 : Installer Apache2 sur Debian.

Supprimer certains fichiers

Supprimer les fichiers LICENSE.txt, README.txt
Supprimer web.config.txt si vous êtes sous Apache.
Ils sont accessibles depuis une URL et permettent à un visiteur de savoir que vous avez un site en Joomla!.

Gestion des logs

Dans le dossier administrator/logs/ se trouve le fichier error.php qui contient les erreurs de connexion pour accéder à l'interface d'administration.
Utiliser awk pour lister les IP de façon unique pour les interdire alors avec iptables.
cat error.php | awk '!x[$3]++'
Ajouter alors les adresses IP dans les règles Iptables pour les bloquer.
sudo iptables -A INPUT -s AdresseIP -j DROP
Cette solution n’est optimisée puisque les adresses IP changent régulièrement.
Avec Iptables les adresses IP sont bloquées définitivement, sauf en cas de redémarrage du serveur, si les règles de Iptables ne sont pas persistantes.
Préférer tout de même l’utilisation de Fail2ban qui bloque les adresses IP en fonction de règles définies par l'administrateur du serveur.

Le nouveau système de journalisation des actions

À partir de la version 3.9 de Joomla, Joomla a introduit un système de journalisation des actions.
Pour accéder au tableau de bord aller dans Utilisateurs / Journal des actions des utilisateurs.
Source : https://docs.joomla.org/Special:MyLanguage/Help38:Components_Actionlogs
Configuration des options devant être enregistrées.
Source : https://docs.joomla.org/Special:MyLanguage/Help38:Components_User_Actionlogs_Options
Référence pour le nouveau système de journalisation des actions : https://docs.joomla.org/J3.x:User_Action_Logs

Les plugins

Système - Journal des actions de l'utilisateur
Une fois activé, ce plugin permet de définir le nombre de jours après lequel les journaux seront supprimés.
Activé par défaut, avec la valeur 0.
Journal des actions - Joomla
Une fois activé, ce plugin permet d’enregistrer les actions des utilisateurs pour les extensions principales.
Activé par défaut, pas de valeur.
Confidentialité - Journaux des actions
Une fois activé, ce plugin permet d'exporter les données du journal d'actions pour une demande de confidentialité d'un utilisateur.
Activé par défaut, pas de valeur.

Le module

Journal des actions - Dernière actions
Ce module affiche sur le panneau de commande de l'interface administrateur une liste des dernières actions effectuées sur un site.
Remarque: le module ne s'affiche pas par défaut sur les sites ayant effectué une mise à niveau vers Joomla 3.9.
Pour activer l'affichage sur votre panneau de configuration, accédez à Extensions → Gérer → Gestion → Activer le plug-in Système - Journal des actions de l'utilisateur.
Publier le module depuis Extensions → Modules → Administrateur → Nouveau → Journal des actions - Derniers journaux des actions.

Obligations légales en matière de cookies

Obligations légales en matière de cookies.

RGPD

RGPD.

Composants, Modules, Plugins pour Joomla!

Composants Modules Plugins pour Joomla!.
Installer de nouveaux outils.

Template pour Joomla

Template pour Joomla.

Sélection de données et requêtes

Sélection de données en utilisant JDatabase : https://docs.joomla.org/Selecting_data_using_JDatabase/fr
Lister les utilisateurs d'un groupe / niveau : https://forum.joomla.fr/forum/anciennes-versions-de-joomla/joomla-2-5-x/questions-g%C3%A9n%C3%A9rales/181461-lister-les-utilisateurs-d-un-groupe-niveau
Depuis le Blog de Visionduweb : https://www.visionduweb.fr/blog/18-joomla/81-identifier-la-categorie-d-un-article-joomla

SEO

SEO pour Joomla.
1 SEO pour Joomla
   1.1 Autoriser la visite des googlebots
   1.2 Ajouter le code Google Analytics dans Joomla
       1.2.1 Ajouter le code Google Analytics dans Joomla! 2.5
       1.2.2 Ajouter le code Google Analytics dans Joomla! 3.x
   1.3 Le https avec Joomla
   1.4 Utiliser les tags avec précaution dans Joomla
   1.5 OpenGraph pour Joomla
       1.5.1 Social Meta
       1.5.2 Social Meta Tags
       1.5.3 CW so Meta
   1.6 Le fichier robots.txt pour Joomla
       1.6.1 Mise à jour de Joomla et modification du fichier robots.txt

Le fichier robots.txt pour Joomla

Faut t'il interdire le template ?
Si Google n'a pas le droit de visiter le dossier, la console Webmaster va indiquer des liens cassés / interdits.
Vérifier la présence du fichier robots.txt : http://www.grey-hat-seo.com/manuel-ghs-tools/verifier-presence-fichier-robots-txt-vos-sites

Langues

Overrides

Source : https://docs.kunena.org/en/languages/language-overrides

Quelques Hack pour présenter du contenu avec Joomla!

Hack pour rediriger une page HTML vers une iframe affichée dans Joomla

Redirection d'une page HTML qui ne se trouve pas intégrée directement dans Joomla vers une iframe de Joomla, elle même intégrée dans un article.
# Sur la page HTML statique, la redirection est gérée par JavaScript.
<script language="javascript" type="text/javascript">
if(parent.location.href == "https://www.visionduweb.fr/partage/info-lettre/voeux-2018.html"){
setTimeout(function() {top.location = "https://www.visionduweb.fr/ ... lien vers l'article qui inclue la frame ... ";},5000);
}
</script>
# Dans Joomla, créer un module pour afficher une iframe.
# Appeler l'iframe depuis un article.
A suivre :
Comment charger une page externe mais référencer uniquement la page qui charge le contenu ?
Je pense devoir mettre une balise META pour que cette page toute seule ne se fasse pas référencée, pour éviter le duplicata content ?
Mais alors, si j'appelle cette page dans l'iframe, le contenu de l'iframe charge dans l'article et contiendra toujours les balises meta. Le référencement de toute la page chargée sur Joomla serait empêché ?
<meta name='robots' content='noindex,nofollow'>

Bibliographie

Ok.png Open Source Matters! The non-profit organisation supporting the Joomla! project : https://www.opensourcematters.org

Schéma de la base de données de Joomla

Pour la version 1.5 : https://www.davidtan.org/wp-content/uploads/2008/08/joomla_15_database_schema.png
Pour la version 3.x : Voir à trouver le lien.

NAVIGATION

PARTICIPER ET PARTAGER

Bienvenue sur le wiki de Vision du Web.
De nombreuses pages sont partagées sur ce wiki.
Créer un compte utilisateur pour participer sur le wiki.
Les pages présentées sur le wiki évoluent tous les jours.
Certaines recherches sont peu abouties et incluent des erreurs.
Utiliser la recherche interne du wiki pour trouver votre contenu.
La page de discussion de VisionDuWeb vous permet de poser une question.
Utiliser la recherche interne du site pour chercher dans tout le contenu.
Ce contenu ne doit pas servir à nuire à autrui ou à un système informatique.
Protéger votre système Linux ou Windows en lisant la page dédié à la sécurité.
Améliorer le contenu des pages avec vos propositions depuis l'onglet discussion.

SOUTENIR CE WIKI

Soutenir le wiki avec un don en monnaie numérique :
AEON - Bitcoins - Bitcoins Cash - Bitcoins Gold - Bitcore - Blackcoins - Basic Attention Token - Bytecoins - Clams - Dash - Monero - Dogecoins - Ğ1 - Ethereum - Ethereum Classique - Litecoins - Potcoins - Solarcoins - Zcash

OBTENIR DE LA MONNAIE NUMERIQUE

Obtenir gratuitement de la monnaie numérique :
Gagner des Altcoins - Miner des Altcoins.