Welcome, Guest. Please login or register.
Did you miss your activation email?
May 16, 2012, 11:53:10 PM

Login with username, password and session length
Search:     Advanced search
Interested in joining the WebsiteBaker team?
For more Information read here or on our new website.
155098 Posts in 21664 Topics by 7721 Members
Latest Member: arrow345
* Home Help Search Login Register
Pages: [1]   Go Down
Print
Author Topic: Template chooser wechsler switcher preview  (Read 2269 times)
gottfried

Offline Offline

Posts: 972


« on: May 08, 2009, 04:34:28 PM »

Hi !

Ich hab per Suche nachgesehen, aber ich finde keinen "Templatewechsel" , wie ihn diverse andere CMS bieten. Obwohl ich mein, schon was gesehen zu haben, aber nicht ganz zu meiner Befriedigung. shocked

(ist ja kein Kernproblem, ich kann sie ja über das Backend ändern, während Vorzeigen.).

Bei WB ist das über Backend aber bißchen kompliziert bzw zeitaufwendig und verwirrend, für den der daneben sitzt.  embarassed n

Heute kommen wieder mal Interessenten (Dichter -> "Sonderzeit"), denen ich viel leichter WSB andrehen kann.
(ich mein damit ... das nur das ... keine Lust auf html! ) ,
leichter wär noch wenn ich Ihnen den Vorteil deses Templatewechsels auf Anhieb zeigen könnte,
mit einer lebendigen Site, nicht der Demosite für die Templates.

WB Portable ist nebenbei dabe eine geniale Hilfe !, aber ich sitz grad vor einem anderen PC beim Kunden.

Als Beispiel wie es sein könnte: (Am Beispiel Coppermine)
([ url]http://www.channel-1.de/katalog/[/url]

oben rechts ist der Templatewähler für coppermine, das ich als Galerie ganz gern parallel zu CMS WB oder dem Forum smf zu verwenden geneigt bin. Die fehlende Bridge zwischen  Wb selber und dem Forum smf ist nebenbei eigentlich noch nicht so gravierend, Soweit sind die Künstler und Dichter noch nicht)

Alsoooo ... der Verbreitung des WB durch Eindruck beim potentiellen Websiteeigner wär doch gut ?!

Ich meine einen Templatewähler als eine Art Code Snipplet zur hand zu haben.

 :- (honeypot !)

Hab, wie immer keine Lust das selber zu basteln.
Wär im Grund wohl das Stückchen Code aus dem Backend.

Ich find WB genial - soll keine Kritik sein! kennt wer den Trick?




« Last Edit: May 09, 2009, 06:07:38 PM by gottfried » Logged
mr-fan

Offline Offline

Posts: 1555


WWW
« Reply #1 on: May 08, 2009, 06:14:48 PM »

Quote
Ich hab per Suche nachgesehen, aber ich finde keinen "Templatewechsel" , wie ihn diverse andere CMS bieten. Obwohl ich mein, schon was gesehen zu haben, aber nicht ganz zu meiner Befriedigung. shocked

du bist lustig - schon mal auf english versucht   grin

mit sowas wie "template preview" oder "switcher"......nein nicht gell sonst hättest das gefunden

 coolhttp://www.websitebaker2.org/forum/index.php/topic,11638.msg70071.html#msg70071 cool

lösung von Ruude für die root index.php aufruf des Template per url

 coolhttp://www.websitebaker2.org/forum/index.php/topic,4887.0.html cool

also bitte das nächste mal "wirklich" suchen bevor du hier eine halbe seite text loslässt.... wink

grüße aus bayern

martin
Logged

 
mr-fan

Offline Offline

Posts: 1555


WWW
« Reply #2 on: May 09, 2009, 11:18:29 AM »

Quote
Schöner wäre natürlich eine Auswahlbox....

wir reden hier ja von template-wechseln im frontend oder huh

mach dir halt einfach ein menu dafür z.b. mit dem menulink mod (noch nicht ausprobiert...)

http://help.websitebaker.org/pages/de/basis-doku/umgang-mit-wb/seitenverwaltung/seiten-aendern/menuelink.php

dann hast du ein menu mit dem du die templates ansteuerst...fertig zwar ohne schöne box- aber für einfache zwecke geht das so!

wenn du es ganz anders angehen willst - schau dir chio's template-suche an! das geht mit frames usw.....is aber für den zweck das ganze dem kunden zu präsentieren ein bisschen übertrieben, oder?  wink

die meisten wollen eh keine vorgefertigten designs...sondern was eigenes!

mfg martin
Logged

 
gottfried

Offline Offline

Posts: 972


« Reply #3 on: May 09, 2009, 12:57:14 PM »

Etz !  grin (Fränkischer Ausruf des Entzückens)

Endlich hab ich ihn !!!  cheesy Camäleon vorzeigen !

Dieser Code  passend in einen Code - Abschnitt einer Seite plaziert ->

Code:
$return= '';
$lineBreak = "\n";

$lang_theme_selection = array(
  'reset_theme' => 'Standard-Design',
  'choose_theme' => 'Wähle Design',
);


$CurrentTheme.="template=";

// get list of available themes
    $value = $CONFIG['template'];
    $theme_dir = WB_PATH.'/templates/';



    $dir = opendir($theme_dir);
    while ($file = readdir($dir)) {
        if (is_dir($theme_dir . $file) && $file != "." && $file != ".." && $file != 'CVS' && $file != 'sample' && $file != '.svn') {
            $theme_array[] = $file;
        }
    }
    closedir($dir);



//start the output

       $return.= $lineBreak . '<form name="ChooseTheme" id="ChooseTheme" action="' . $_SERVER['PHP_SELF'] . '" method="get" style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;display:inline">' . $lineBreak;
       $return.= '<select name="ThemeSelect" class="listbox" onchange="if (this.options[this.selectedIndex].value) window.location.href=\'' . '?' . $CurrentTheme . '\' + this.options[this.selectedIndex].value;">' . $lineBreak;
       $return.='<option selected="selected">' . $lang_theme_selection['choose_theme'] . '</option>';
       foreach ($theme_array as $theme) {
           $return.= '<option value="' . $theme . '"'.($value == $theme ? '  selected="selected"' : '').'>' . strtr(ucfirst($theme), '_', ' ') . ($value == $theme ? '  *' : ''). '</option>' . $lineBreak;
       }

          $return.=  '</select>' . $lineBreak;
          $return.=  '</form>' . $lineBreak;


echo $return;

--- ruft sich mit mit .........?template=xxxxxx wieder  auf

in Verbindung mit der Änderung der Index.php von

http://www.websitebaker2.org/forum/index.php/topic,4887.0.html , ganz unten.

Diese modifizierte index.php reagiert auf Templatewunsch im parameter.
(vielen Dank an mr-fan)

Das gibt zusammen dann einen Templatewähler, wie hier abgebildet.


   

Scheint ganz gut zu funktionieren. 
geht davon aus, daß im Templateverzeichnis s vorwiegend nur Unterverzeichnisse bzw bestimmte ignorierte Filetypen sind, wie das ja normal auch ist.

Hab codeteile von  coppermine kopiert  und viel angepasst.
Hoffentlich ist das legal. Ist ja auch freeware.  embarassed

Der Code ist momentan auf Portable WB getestet.
irgendwelche Garantien auf Funktion Fehlerfreiheit u.s.w  kann ich natürlich nicht geben.


Vielen Dank für die befruchtenden Gedanken !

Eigentlich müßte es doch möglich sein, die index.php so zu verändern, daß unabhängig von einem Template
der Templatewechsler z.B oben rechts im Eck angezeigt wird ?
Schluß für heute !
« Last Edit: May 09, 2009, 02:24:29 PM by gottfried » Logged
mr-fan

Offline Offline

Posts: 1555


WWW
« Reply #4 on: May 09, 2009, 06:20:48 PM »

ich vermisse hier GANZ STARK das "klatschen smilie"   grin

echt gute arbeit - ich probier das nächste woche gleich mal aus - (woende is schon zu)

vielen dank fürs teilen bringt das ganze schon einiges weiter!

vielleicht was für die nächste portable version!!

~hut ab~

melde mich wenn ich es getestet habe

Quote
Eigentlich müßte es doch möglich sein, die index.php so zu verändern, daß unabhängig von einem Template
der Templatewechsler z.B oben rechts im Eck angezeigt wird ?
Schluß für heute !

Klar geht das - das müsste mit einem frameset wie auf der template-suche funktionieren....ab er ich glaub da muss man an die index.php's der ganzen einzelnen templates ran? hab noch nicht wirklich viel mit frames gearbeitet..

ein anderer weg wäre die id=choosetheme einfach per css zu definieren immer rechts/links oben/unten.... glaub das geht am leichtesten!!

mal sehen

auf alle fälle saucool!

schönen gruß

martin
Logged

 
gottfried

Offline Offline

Posts: 972


« Reply #5 on: May 09, 2009, 08:38:02 PM »

Danke für den Beifall !  grin

Ich hab mein Codeschnipselchen anstatt als Code in einen Codeabschnitt einer Seite nun in das index.php der wbroot plaziert. Es betrifft also praktischerweise global  alle Templates, bzw Seiten.


Code:

    // Display the filtered output on the frontend
        echo filter_frontend_output($frontend_output);


        // ab hier - hinten dran,  Templatewechsel -----------------------------------------------------------------

            echo "<body><html><div style='position: absolute; right: 0px ; top: 10px; width: 170px; height: 30px;' >" ;

            $return= '';
            $lineBreak = "\n";

            $lang_theme_selection = array(
              'reset_theme' => 'Standard-Design',
              'choose_theme' => 'W&auml;hle Design',
            );


            // 3.7.2010 besser variable vorbesetzen für neuere  php bzw hohe errorlevel
            $CurrentTheme= '';

            $CurrentTheme.="template=";

            // get list of available themes
                $value = $CONFIG['template'];
                $theme_dir = WB_PATH.'/templates/';



                $dir = opendir($theme_dir);
                while ($file = readdir($dir)) {
                    if (is_dir($theme_dir . $file) && $file != "." && $file != ".." && $file != 'CVS' && $file != 'sample' && $file != '.svn') {
                        $theme_array[] = $file;
                    }
                }
                closedir($dir);



            //start the output

                   $return.= $lineBreak . '<form name="ChooseTheme" id="ChooseTheme" action="' . $_SERVER['PHP_SELF'] . '" method="get" style="margin-top:0px;margin-bottom:0px;margin-left:0px;margin-right:0px;display:inline">' . $lineBreak;
                   $return.= '<select name="ThemeSelect" class="listbox" onchange="if (this.options[this.selectedIndex].value) window.location.href=\'' . '?' . $CurrentTheme . '\' + this.options[this.selectedIndex].value;">' . $lineBreak;
                   $return.='<option selected="selected">' . $lang_theme_selection['choose_theme'] . '</option>';
                   foreach ($theme_array as $theme) {
                       $return.= '<option value="' . $theme . '"'.($value == $theme ? '  selected="selected"' : '').'>' . strtr(ucfirst($theme), '_', ' ') . ($value == $theme ? '  *' : ''). '</option>' . $lineBreak;
                   }

                      $return.=  '</select>' . $lineBreak;
                      $return.=  '</form>' . $lineBreak;


            echo $return;

            echo "</div></body></html>" ;

            // bis hier -> Templatewechsel Ende ------------------------------------------------------------------------
        



also zwischen

Code:
       echo filter_frontend_output($frontend_output);

und
Code:
 die;  

Der Templatewähler ist dann bei allen Templates rechts oben im Eck. (über <div style="usw.. änderbar")
Also etwa so:









Hoffentlich hab ich mich bei all den nachträglichen Änderungen im Code oben nicht vertippt !

Wie oben schon gesagt wird zusätzlich der Code aus

http://www.websitebaker2.org/forum/index.php/topic,4887.0.html, hinten,  benötigt


Der Code benötigt u.U eine gewisse fachkundige "Beautification".
Ich hab halt was zusammenkopiert, bis funktioniert hat.
Kann eigentlich nicht PHP, bin aber ganz gut im Analysieren und  Zusammenmixen von Codeteilen.


« Last Edit: July 03, 2010, 01:37:22 PM by gottfried » Logged
Pages: [1]   Go Up
Print
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.16 | SMF © 2011, Simple Machines Valid XHTML 1.0! Valid CSS!