WordPress : Démo du thème sur le site en direct

Publié par Jean-Michel le

Je ne sais pas comment expliquer cette question, mais laissez-moi essayer, imaginez que j’ai un site Web appelé xyz.com et que dans xyz, il y a 10 thèmes téléchargés et sur la page d’accueil, je montrerai le nom et la capture d’écran des 10 thèmes si quelqu’un cliquez sur activer / démo, puis ce thème sera activé dans son adresse IP uniquement jusqu’à ce que sa session soit détruite après sa visite à nouveau après un certain temps, il pourra voir l’ancien thème.

Lire également:  Wordpress : Rendre l'élément de menu des options de thème plus facilement / directement accessible

Cela signifie que si quelqu’un voulait acheter un thème sur mon site, il peut le voir directement depuis mon site.

Solution n°1 trouvée

Déposez ceci dans un fichier .php dans wp-content/mu-plugins :

add_filter('template',   'check_for_theme_preview');
add_filter('stylesheet', 'check_for_theme_preview');

// if you want to display the theme selector
// (this is wrong, you need a custom action in each of your themes, after <body>)
add_action('wp_head',    'display_template_selector');


// checks for the "theme-preview" argument, and changes the template
function check_for_theme_preview($template){
  session_start();

  if(isset($_SESSION['template']))
    $template = $_SESSION['template'];

  // sanitize this!
  if(isset($_GET['theme-preview']))
    $template = $_GET['theme-preview'];

  $_SESSION['template'] = $template;

  return $template;
}


// theme selector
function display_template_selector(){

  $themes = get_themes(); ?>

  <select onchange="document.location.href = this.options[this.selectedIndex].value;">
    <?php foreach($themes as $theme_name => $theme_data): ?>
    <option value="<?php echo add_query_arg('theme-preview', $theme_data['Template']) ?>"><?php echo $theme_name; ?></option>
    <?php endforeach; ?>
  </select>
  <?php

}

Ainsi, en pointant votre navigateur sur http://yoursite.com/?theme-preview=twentyten, le site chargera ce modèle pour toute la session.

Lire également:  Comment vais-je styliser la page de menu personnalisé wordpress des plugins lors du développement d'un plugin?

Mais il existe des plugins qui font mieux cela…

Catégories : Wordpress

Jean-Michel

Jean-Michel est en charge de la partie blog du site. Il met en place la stratégie de contenu et répond aux questions fréquentes sur Wordpress.

0 commentaire

Laisser un commentaire

Avatar placeholder

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *