einmal gewöhltes Style behalten?
einmal gewöhltes Style behalten?
Hallöchen,
ich möchte gern, dass die Besucher sich ihren style auswählen können und nun ist es aber so, dass beim nächsten Besuch dieses Style nicht mehr da ist, also das standardtheme kommt, kann man da was gegen machen?
Also, die besucher sollen ihren einmal gewöhlten style behalten, auch wenn sie wiederkommen.
ich möchte gern, dass die Besucher sich ihren style auswählen können und nun ist es aber so, dass beim nächsten Besuch dieses Style nicht mehr da ist, also das standardtheme kommt, kann man da was gegen machen?
Also, die besucher sollen ihren einmal gewöhlten style behalten, auch wenn sie wiederkommen.
-
- Core Developer
- Posts: 30022
- Joined: Tue Sep 16, 2003 9:45 pm
- Location: Cologne, Germany
- Contact:
Re: einmal gewöhltes Style behalten?
Das geht, ja. Probier doch bitte mal folgendes.
Öffne deine Datei plugins/serendipity_event_templatechooser/serendipity_event_templatechooser.php
Suche da in der recht kleinen DAtei ungefähr bie Zeile 52 nach diesem Code:
und ändere das in:
Dann sollte das gewählte Theme eigentlich per Cookie gespeichert werden. Probier's mal bitte aus, wenn das korrekt klappt kann ich es in der Standarddistribution aufnehmen.
Viele Grüße,
Garvin
Öffne deine Datei plugins/serendipity_event_templatechooser/serendipity_event_templatechooser.php
Suche da in der recht kleinen DAtei ungefähr bie Zeile 52 nach diesem Code:
Code: Select all
if (isset($_REQUEST['user_template']) && (in_array($_REQUEST['user_template'], serendipity_fetchTemplates())) ) {
$_SESSION['serendipityUseTemplate'] = $_REQUEST['user_template'];
}
Code: Select all
if (isset($serendipity['COOKIE']['user_template'])) {
$_REQUEST['user_template'] = $serendipity['COOKIE']['user_template'];
}
if (isset($_REQUEST['user_template']) && (in_array($_REQUEST['user_template'], serendipity_fetchTemplates())) ) {
$_SESSION['serendipityUseTemplate'] = $_REQUEST['user_template'];
serendipity_setCookie('user_template', $_REQUEST['user_template']);
}
Viele Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Also, Im Grunde klappt es, aber:
Es kommt das von mir gewählte Theme, nur, es kommt nicht richtig, es ist wesentlich zu breit. Erst wenn ich aktualisiere im Brwoser kommt es richtig.
Das betrifft den Firefox.
Im IE will nicht das gewählte kommen, muss man also auch hier erst wieder das Theme wechseln... logisch eigentlich...
aber dann kommt es zumindest zeitnah gleich bei Neuöffnung des IE wieder in dem gewünschten Theme und auch ohne zubreit zu sein.
S, nun stelle ich grad fest, nun kann man kein anderes Theme mehr im Fox aussuchen, es bleibt bei dem erstmals ausgesuchten Theme.
Im IE ist das auch so.
Also noch nicht perfekt...
Es kommt das von mir gewählte Theme, nur, es kommt nicht richtig, es ist wesentlich zu breit. Erst wenn ich aktualisiere im Brwoser kommt es richtig.
Das betrifft den Firefox.
Im IE will nicht das gewählte kommen, muss man also auch hier erst wieder das Theme wechseln... logisch eigentlich...
aber dann kommt es zumindest zeitnah gleich bei Neuöffnung des IE wieder in dem gewünschten Theme und auch ohne zubreit zu sein.
S, nun stelle ich grad fest, nun kann man kein anderes Theme mehr im Fox aussuchen, es bleibt bei dem erstmals ausgesuchten Theme.
Im IE ist das auch so.
Also noch nicht perfekt...
-
- Core Developer
- Posts: 30022
- Joined: Tue Sep 16, 2003 9:45 pm
- Location: Cologne, Germany
- Contact:
Benutzt Du serendipity 1.0-beta1? Erst dort ist der Themewechsel so, dass cachende Browser das direkt reloaden.
Und "Cross-Browser" klappt der cookie nicht. Man muss das im Browser jeweils einmal einstellen. Anders geht das technisch nicht, da müssten die User schon registriert sein bevor das klappt.
Bezüglich der Einmal-Wahl, ja das hast Du recht bitte probiere stattdessen diesen Code:
Grüße,
Garvin
Und "Cross-Browser" klappt der cookie nicht. Man muss das im Browser jeweils einmal einstellen. Anders geht das technisch nicht, da müssten die User schon registriert sein bevor das klappt.
Bezüglich der Einmal-Wahl, ja das hast Du recht bitte probiere stattdessen diesen Code:
Code: Select all
if (isset($serendipity['COOKIE']['user_template']) && !isset($_REQUEST['user_template'])) {
$_REQUEST['user_template'] = $serendipity['COOKIE']['user_template'];
}
if (isset($_REQUEST['user_template']) && (in_array($_REQUEST['user_template'], serendipity_fetchTemplates())) ) {
$_SESSION['serendipityUseTemplate'] = $_REQUEST['user_template'];
serendipity_setCookie('user_template', $_REQUEST['user_template']);
}
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Nun weiß ich nicht, was ich sagen soll.
Gott sei dank habe ichs an einem blog probiert, der inzwischen hinfällig ist, ich ihn aber weiter für testzwecke nutze.
Ich habe das also mal geändert und es scheint zu klappen...
Nur das Standardtheme kommt nicht mehr richtig, wenn ichs auswähle.
Es ist das joshua, falls du mal selbst probieren willst
http://rapinferno-online.com/comm
Ich schalte jetzt mal ein anderes Theme als standard (Independence), damit du dann wenigstens auswählen kannst, falls im ursprünglichen Standardtheme joshua nix kommt.
Im IE kann ich nicht mehr probieren, da komme ich aus dem kaputten joshua nicht mehr raus, obwohl anderes Standardtheme jetzt gültig ist
Gott sei dank habe ichs an einem blog probiert, der inzwischen hinfällig ist, ich ihn aber weiter für testzwecke nutze.
Ich habe das also mal geändert und es scheint zu klappen...
Nur das Standardtheme kommt nicht mehr richtig, wenn ichs auswähle.
Es ist das joshua, falls du mal selbst probieren willst
http://rapinferno-online.com/comm
Ich schalte jetzt mal ein anderes Theme als standard (Independence), damit du dann wenigstens auswählen kannst, falls im ursprünglichen Standardtheme joshua nix kommt.
Im IE kann ich nicht mehr probieren, da komme ich aus dem kaputten joshua nicht mehr raus, obwohl anderes Standardtheme jetzt gültig ist
-
- Core Developer
- Posts: 30022
- Joined: Tue Sep 16, 2003 9:45 pm
- Location: Cologne, Germany
- Contact:
Ähm, wie sieht dein templatechooser plugin jetzt aus? Ich habe den eindruck, dass da jetzt etwas defekt ist.
Viele Grüße,
Garvin
Viele Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Ich habe nun auch daraufhin keine neuen Erkenntnisse oder Bilder.
Hier ist das gesamte Dingen:
Hier ist das gesamte Dingen:
<?php # $Id: serendipity_event_templatechooser.php 346 2005-08-01 17:35:25Z garvinhicking $
// Probe for a language include with constants. Still include defines later on, if some constants were missing
$probelang = dirname(__FILE__) . '/' . $serendipity['charset'] . 'lang_' . $serendipity['lang'] . '.inc.php';
if (file_exists($probelang)) {
include $probelang;
}
@define('PLUGIN_EVENT_TEMPLATECHOOSER_NAME', 'Template chooser');
@define('PLUGIN_EVENT_TEMPLATECHOOSER_DESC', 'Allows your visitors to change template on the fly');
class serendipity_event_templatechooser extends serendipity_event
{
var $title = PLUGIN_EVENT_TEMPLATECHOOSER_NAME;
function introspect(&$propbag)
{
global $serendipity;
$propbag->add('name', PLUGIN_EVENT_TEMPLATECHOOSER_NAME);
$propbag->add('description', PLUGIN_EVENT_TEMPLATECHOOSER_DESC);
$propbag->add('stackable', false);
$propbag->add('author', 'Evan Nemerson');
$propbag->add('version', '1.1');
$propbag->add('requirements', array(
'serendipity' => '0.8',
'smarty' => '2.6.7',
'php' => '4.1.0'
));
$propbag->add('groups', array('BACKEND_TEMPLATES'));
$propbag->add('event_hooks', array('frontend_configure' => true));
// Register (multiple) dependencies. KEY is the name of the depending plugin. VALUE is a mode of either 'remove' or 'keep'.
// If the mode 'remove' is set, removing the plugin results in a removal of the depending plugin. 'Keep' meens to
// not touch the depending plugin.
$this->dependencies = array('serendipity_plugin_templatedropdown' => 'remove');
}
function generate_content(&$title) {
$title = $this->title;
}
function event_hook($event, &$bag, &$eventData) {
global $serendipity;
$hooks = &$bag->get('event_hooks');
if (isset($hooks[$event])) {
switch($event) {
case 'frontend_configure':
if (isset($serendipity['COOKIE']['user_template']) && !isset($_REQUEST['user_template'])) {
$_REQUEST['user_template'] = $serendipity['COOKIE']['user_template'];
}
if (isset($_REQUEST['user_template']) && (in_array($_REQUEST['user_template'], serendipity_fetchTemplates())) ) {
$_SESSION['serendipityUseTemplate'] = $_REQUEST['user_template'];
serendipity_setCookie('user_template', $_REQUEST['user_template']);
}
if (isset($_SESSION['serendipityUseTemplate']) ) {
$templateInfo = serendipity_fetchTemplateInfo($_SESSION['serendipityUseTemplate']);
$eventData['template'] = $_SESSION['serendipityUseTemplate'];
$eventData['template_engine'] = isset($templateInfo['engine']) ? $templateInfo['engine'] : $serendipity['defaultTemplate'];
}
return true;
break;
default:
return false;
}
} else {
return false;
}
}
}
/* vim: set sts=4 ts=4 expandtab : */
?>
-
- Core Developer
- Posts: 30022
- Joined: Tue Sep 16, 2003 9:45 pm
- Location: Cologne, Germany
- Contact:
Also ich glaube, der templatechooser in seiner früheren Version dürfte dann auf diesem Blog auch nicht funktioniert haben? Irgendeines der anderen Plugins läuft da wohl nicht korrekt. Vielleicht mal auf updates prüfen oder abspecken?
Wie gesagt, das Templatewechseln funktioniert erst ab Serendipity 1.0-beta1 ohne manuellen Reload.
Grüße,
Garvin
Wie gesagt, das Templatewechseln funktioniert erst ab Serendipity 1.0-beta1 ohne manuellen Reload.
Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
Doch, vorher hat alles funktioniert, nur, dass man halt beim späteren Besuch wieder das Standard präsentiert bekam.
Es geht ja auch nicht um diesen Blog. Interessant nur, wieso ausgerechnet das Theme, was den Standard darstellte, nun plötzlich nicht mehr hinhaut.
Update. hm... kann ich ja an dem Blog mal probieren... und wieso abspecken? Da ist doch gar nicht so viel drauf... oder drin...
Danke erst mal.
Wenns dann auch nicht geht, schreie ich...
Es geht ja auch nicht um diesen Blog. Interessant nur, wieso ausgerechnet das Theme, was den Standard darstellte, nun plötzlich nicht mehr hinhaut.
Update. hm... kann ich ja an dem Blog mal probieren... und wieso abspecken? Da ist doch gar nicht so viel drauf... oder drin...
Danke erst mal.
Wenns dann auch nicht geht, schreie ich...
-
- Core Developer
- Posts: 30022
- Joined: Tue Sep 16, 2003 9:45 pm
- Location: Cologne, Germany
- Contact:
Genau, einfach mal das original-plugin wiederherstellen, dann müsste ja alles wie vorher sein.
Ich hab'S gerad ein meinem Test-Blog (1.0-beta1) mal probiert, da klappt das Plugin wie gewünscht und merkt sich alles.
Viele Grüße,
Garvin
Ich hab'S gerad ein meinem Test-Blog (1.0-beta1) mal probiert, da klappt das Plugin wie gewünscht und merkt sich alles.
Viele Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/