OwnCloud – Thème Personnalisé
Imaginons qu’OwnCloud soit installé dans :
/var/www/owncloud
On va créer le répertoire suivant
mkdir -p /var/www/owncloud/themes/nomdutheme
Puis on va venir y copier tout ou partie du thème principal OwnCloud
cp -r /var/www/owncloud/core /var/www/owncloud/themes/nomdutheme
n’ayant besoin que de personnaliser quelques images j’ai donc créé l’arborescence suivante
mkdir -p /var/www/owncloud/themes/nomdutheme/core/img/
J’y ai copié les images modifiés, les images présentes dans ce dossier prennent le pas sur le thème par défaut. Pour identifier le noms des images à modifier/remplacer, il est très simple d’utiliser les outils « pour développeurs » des navigateurs actuels.
Pour activer le thème on va modifier le fichier de conf suivant :
nano /var/www/owncloud/config/config.php
On va y ajouter ou modifier le paramètre suivant :
‘theme’ => ‘nomdutheme’,
On enregistre puis,
service apache2 reload
Il est également possible de modifier pas mal d’autres petits paramètres, notamment la baseline, le titre de la page etc… Tout ça se gère en dur dans le fichier suivant :
/var/www/owncloud/lib/private/defaults.php
En jouant avec les paramètres suivants :
$this->defaultEntity = « ownCloud »; /* e.g. company name, used for footers and copyright notices */$this->defaultName = « ownCloud »; /* short name, used when referring to the software */$this->defaultTitle = « ownCloud »; /* can be a longer name, for titles */$this->defaultBaseUrl = « https://owncloud.org »;$this->defaultSyncClientUrl = « https://owncloud.org/sync-clients/ »;$this->defaultDocBaseUrl = « http://doc.owncloud.org »;$this->defaultSlogan = $this->l->t(« web services under your control »);$this->defaultLogoClaim = « »;$this->defaultMailHeaderColor = « #1d2d44″; /* header color of mail notifications */
nano /var/www/owncloud/themes/nomdutheme/defaults.php
<?php
/**
* See lib/private/defaults.php for a list of possible defaults
*/class OC_Theme {
private $ThemeName;
function __construct() {
$this->ThemeName = ’nomdutheme’;
}
public function getEntity() {
return ‘customentity’;
}
public function getName() {
return ‘customname’;
}
public function getTitle() {
return ‘customtitle’;
}
public function getBaseUrl() {
return ‘customURL’;
}
public function getSlogan() {
return ‘customSlogan’;
}
}
?>
public function getMailHeaderColor() {
return ‘#333333’;
}