WordPress

De FroggDev - Fr
Aller à : navigation, rechercher

Introduction

WordPress est un système de gestion de contenu (SGC) ou (Content management system (CMS) en anglais) libre écrit en PHP, reposant sur une base de données MySQL, et distribué par l'entreprise américaine Automattic. WordPress est surtout utilisé comme moteur de blog, mais ses fonctionnalités lui permettent également de gérer n'importe quel site web. Il est distribué selon les termes de la licence GNU GPL version 2. Le logiciel est aussi à l'origine du service WordPress.com.

Installation

Fichiers

Site officiel : https://wordpress.org/download/

  • Télécharger l'archive la dernière officielle
  • Extraire les fichiers dans le répertoire web désiré.
  • Afficher le site dans le navigateur
  • Suivre les étape d'instruction d'installation

Contenu

  • Donner les droits d'upload à l'utilisateur web

sous Linux :

cd WordPressSitePath
mkdir -p wp-content/uploads/
chown www-data:www-data -R wp-content/uploads/
  • "Customize your website" : permet de créer du contenu (barre de navigation, footer, articles ..)
    • site Identity  : titre du site, logo
    • Colors : couleurs du site
    • Header image : bandeau du haut de page
    • Background image : image de fond
    • Menu : menus du site
    • Widget : éléments suplémentaires
    • Static Front Page

Thème

  • Ajouter un thème

Pour ajouter un thème, télécharger un thème puis placer le répertoire extrait dans

wp-content/themes/

Par exemple : https://wordpress.org/themes/customizr/

wp-content/themes/customizr/
  • Sélectionner un thème

Dans l'administration onglet Appearance, choisir le thème désiré, puis l'activer

  • Configurer l'apparence du thème

Dans l'administration onglet Appearance, choisir le thème désiré, puis choisir "customize"

ou

dans la barre d'administration sur le site choisir "customize"

Jupiter

  • Traduction :

https://artbees.net/themes/docs/how-to-translate-theme/

  • outil de traduction :

https://poedit.net/

  • fichiers de traduction :
wp-content/themes/jupiter/languages/

Global

variable globale du site :

$this->settings
$sitepres

Thèmes

Customizr

  • Déplacer le slider à une autre position :

http://presscustomizr.com/snippet/moving-slider-anywhere/

Plugins

Principaux

site officiel : https://fr.wordpress.org/plugins

Affichage

  • wp-user-avatars

Permet une customisation des avatars des utilisateurs stockés en local (sans passer par Gravatar)

  • wp-google-maps

Permet d'afficher une Googlemap configurable

SEO

  • Yoast SEO
  • All In One SEO

Maintenance

  • duplicator

Pemet de faire des sauvegardes, restauration, migration du site

  • wp-optimize

Permet de nettoyer le site

  • user-role-editor

Permet d'assigner facilement un rôle à un utilisateur, ainsi que définir des rôle et assigner plusieurs rôles à un utilisateur

Sécurité

  • wp-limit-login-attemps

Permet de limiter le nombre de tentative de connexion (anti brute force)

  • wp-security-audit-log

Permet de visualisaer les événements liés aux utilisateurs du site

Speciaux

Avatar du profile

  • Installation
  1. Upload metronet-profile-picture dans /wp-content/plugins/
  2. Activez-la via le menu Extensions dans l'admin WordPress
  3. Utiliser "Override Avatar" pour utiliser une image uploader comme profile

Multilangue (WPML)

Recuperer la langue actuelle :

ICL_LANGUAGE_CODE

https://wpml.org/documentation/support/wpml-coding-api/

masquer la langue courante de la liste des langues:

inc/language-switcher.php
	private function get_menu_ls_html( $args ) {
		global $sitepress, $wpml_post_translations, $wpml_term_translations;

		$current_language = $sitepress->get_current_language();
		$languages_helper = new WPML_Languages( $wpml_term_translations, $sitepress, $wpml_post_translations );
		$languages        = $sitepress->get_ls_languages();

		$lang           = isset( $languages[ $current_language ] )
			? $languages[ $current_language ]
			: $languages_helper->get_ls_language( $current_language, $current_language );
		
		//HERE IS THE TEST OF CURRENT LANG
		if( $lang['language_code'] != ICL_LANGUAGE_CODE ){

			$items .= '<li class="menu-item menu-item-language menu-item-language-current menu-item-has-children">';
			$items .= isset( $args->before ) ? $args->before : '';
			$items .= '<a href="#" onclick="return false">';
			$items .= isset( $args->link_before ) ? $args->link_before : '';

			$native_lang    = $sitepress->get_setting( 'icl_lso_native_lang' );
			$displayed_lang = $sitepress->get_setting( 'icl_lso_display_lang' );
			$language_name  = $this->language_display( $lang[ 'native_name' ],
													   $lang[ 'translated_name' ],
													   $native_lang,
													   $displayed_lang,
													   false );
													   
			$language_name  = $this->maybe_render_flag( $lang, $language_name );

			$items .= $language_name;
			$items .= isset( $args->link_after ) ? $args->link_after : '';
			$items .= '</a>';
			$items .= isset( $args->after ) ? $args->after : '';
			}
		unset( $languages[ $current_language ] );
		$items .= $this->render_ls_sub_items( $languages );
			
		return $items;
	}

Fonction pour la langue par défaut

$this->maybe_render_flag

Fonction pour les autres langues

$this->render_ls_sub_items

Avancé

  • Changer le mot de pass utilisateur manuellement
UPDATE wp_users SET user_pass = MD5('newpassword') WHERE user_login = "admin";