2011-02-03 13 views
3

私はオンスで複数のワードプレステーマを実行するアイディアを持っています。可能であれば、これはWordPressのプラグインを構築するのに良いことかもしれません。そして、そうですね、あまりにも難しいことでないなら、私はそのような仕事をするかもしれません。 (あなたは私と提携に興味がある場合も、私は(コメントを残す)、私は、偉大にJavaScriptとPHPでまともな、しかしないです知っているといくつかの助けを大好きだ!)マルチテーマワードプレスプラグインのアイデア

これは私がそれが働いている方法です: 現在の "設定"テーマはここにアクセスできます: "www.foo.com/" 2番目のテーマはここにアクセスできます: "www.foo.com/index.php?set_theme=theme2 &" 第3ここからアクセス可能なテーマ: "www.foo.com/index.php?set_theme=THEME_NAME_HERE &" など...

これはjavascript落ちる。たとえば、www.foo.com/?page_id=9にアクセスしてJavaScriptをオンにしている場合は、javascriptのリダイレクトを「www.foo.com/index.php?set_theme=THEM_WITH_JAVASCRIPT & page_id = 9」に設定します。これは私が見ているプラ​​グインのコードを想像する方法です

/作業:

if(isset($_GET['set_theme'])){ 
     $loadme = cleaned($_GET['set_theme']);  
     if($loadme exists){ 
      loadtheme($loadme); 
     } else { 
      //go on as usual, as if this plugin doesnt exist 
     } 
    } else { 
     //go on as usual, as if this plugin doesnt exist 
    } 

そしてもちろん、すべてのリンクが広告に持っているでしょうset_theme = FOOBAR &

だから、私のメインの質問はありますか:

  1. Wordpressはどのように現在のテーマを選択していますか?
  2. 内部リンクを変更する方法と場所を教えてください。
    if(isset($ _ GET ['set_theme'])){ echo "?set_theme =" $ _GET ['set_theme']; }
  3. WPプラグインの作成方法について私に正しい方向を指す良いウェブサイトをご存知ですか?

答えて

0

途中で98%のプラグインが見つかりました。 Wordpressのテーマスイッチャリロード。次のように

ジャストts_get_theme()関数を変更:

function ts_get_theme() { 
      if (!empty($_GET["wptheme"])) { 
       return $_GET["wptheme"]; 
      }  else { 
        return ''; 
      } 
    } 
1

Theme Switcherプラグインを参照すると、この作業がどのように達成されているかがわかります。いくつか考えてください。

0

本当にただのfunctions.phpにこれを追加し、プラグインを必要としないでください:

 function theme_switcher() { 
    if(isset($_GET['theme']) $theme = $_GET['theme']; 
    global $wpdb; 
    if (isset($theme)) { 
    $wpdb->prefix 
    $queries = “UPDATE “.$wpdb->prefix.”options SET option_value = ‘”.$theme.”‘ WHERE option_name = ‘template’ OR option_name = ‘stylesheet’ OR option_name = ‘current_theme’;”; 
    $wpdb->query($query); 
    } 
    } 
add_action('wp_head','switchTheme') 

その後、彼らに

免責事項切り替えることmywebsite.com/?theme=myNewThemeを使用します。テストされていないと!!

+0

あなたはそこにあるカップルのエラーを持っている、と私は言ったようにあなたは、DB – Dave

+0

にテストされていない、それを送信する前に、あなたはまた、$のテーマをきれいにする必要があります。 ) –

関連する問題