Seite 1 von 1

Mobile/SEO style

Verfasst: 03.02.2012 18:26
von schnagga
Moin,

kann man für bestimmte Gruppen einen Style vorgeben?

Es ist so:
Im Zeitalter von iPhone und Android habe ich einen zusätzlichen (Mobilen-) Style (art_mobile_iphone) zu Prosilver installiert. Besucher mit Handy bekommen den auch angezeigt, können aber durch Klick auf: "Full Version", auf den Standard Style wechseln.
Als Standard-Style habe ich bei mir Prosilver ausgewählt. Die Bots, bevorzugen aber scheinbar den Mobile-Style? Wenn ich im Google-Cache suche, finde ich fast nur noch die Mobile-Version :o .

Kann man das unterbinden?

LG

Re: Style für Gruppe bestimmen

Verfasst: 03.02.2012 18:29
von Malte
ich sehe da nur die Methode, dass du im ACP unter Benutzer jeden einzelnen Bot eingibst und ihm den Style zuordnest...

Re: Style für Gruppe bestimmen

Verfasst: 03.02.2012 19:03
von schnagga
THX,

das ist jetzt aber keine gute Lösung :( . Neben den "phpBB Standard Bots" habe ich mir noch sehr sehr viele dazu installiert. Wenn das für einzelne Benutzer möglich ist, sollte es ja auch für Gruppen möglich sein?!

Ich habe jetzt mal in den Board-Einstellungen: Benutzer-Style überschreiben: auf JA gesetzt.

Gibt es sonst noch Vorschläge?

Re: Style für Gruppe bestimmen

Verfasst: 03.02.2012 19:17
von Malte
Es gibt sicherlich einen SQL-Befehl dafür, ich muss mal schauen... Einfach wäre auch, über phpmyadmin einfach mal die Werte zu ändern, da gibts ja auch die Funktion ganz spalten zu ändern.

Re: Style für Gruppe bestimmen

Verfasst: 03.02.2012 19:48
von WileCoyote
Du könntest es mal mit nachfolgendem Snippet versuchen. Damit kannst du alle Bots in einem Schwung mit dem Standard-Style und der Standard-Sprache des Boards snychronisieren.

Öffne /includes/acp/acp_bots.php

Finde

Code: Alles auswählen

			case 'edit':
Davor einfügen

Code: Alles auswählen

            case 'default_style':
            case 'default_lang':
                if ($bot_id || sizeof($mark))
                {
                    $sql_id = ($bot_id) ? " = $bot_id" : ' IN (' . implode(', ', $mark) . ')';
                
                    // we need to grab the Bots' User ID to complete this operation
    				$sql = 'SELECT user_id, bot_name
    					FROM ' . BOTS_TABLE . "
    					WHERE bot_id $sql_id";
                    $result = $db->sql_query($sql);              
                
                    $bot_user_ids = array();
                    while ($row = $db->sql_fetchrow($result))
                    {
                        $bots[$row['user_id']] = $row['bot_name'];
                    }
                    
                    $set_sql = ($action == 'default_style') ? 'user_style' : 'user_lang';
                    
                    // $action is the correct key of the default config.  Not intentional,
                    // but it saves some code
                    $sql = 'UPDATE ' . USERS_TABLE .
                       " SET $set_sql = '" . $config[$action] .
                       "' WHERE " . $db->sql_in_set('user_id', array_keys($bots));
                    $db->sql_query($sql);
                
                    if (sizeof($bots) > 5)
                    {
                        add_log('admin', 'LOG_BOT_' . strtoupper($action) . '_COUNT', sizeof($bots));
                    }
                    else
                    {
                        add_log('admin', 'LOG_BOT_' . strtoupper($action) . '_NAMES', implode(', ', array_values($bots)));
                    }
                    
                    trigger_error($user->lang['BOT_SYNC_' . strtoupper($action)] . adm_back_link($this->u_action));
                }            
            break;

Finde

Code: Alles auswählen

		$_options = array('activate' => 'BOT_ACTIVATE', 'deactivate' => 'BOT_DEACTIVATE', 'delete' => 'DELETE');
Ersetzen durch

Code: Alles auswählen

		$_options = array('activate' => 'BOT_ACTIVATE', 'deactivate' => 'BOT_DEACTIVATE', 'delete' => 'DELETE', 'default_style' => 'BOT_DEFAULT_STYLE', 'default_lang' => 'BOT_DEFAULT_LANG');
Öffne /language/de/acp/bots.php

Finde

Code: Alles auswählen

	'BOT_DEACTIVATE'	=> 'Deaktivieren',
Danach einfügen

Code: Alles auswählen

    'BOT_DEFAULT_LANG'   => 'Mit der Standard-Sprache des Boards synchronisieren',
    'BOT_DEFAULT_STYLE'   => 'Mit dem Standard-Style des Boards synchronisieren',
Finde

Code: Alles auswählen

	'BOT_STYLE_EXPLAIN'	=> 'Der Style, der genutzt wird, um dem Bot das Board anzuzeigen.',
Danach einfügen

Code: Alles auswählen

    'BOT_SYNC_DEFAULT_LANG'     => 'Du hast die ausgewählten Bots erfolgreich mit dem Standard-Sprachpaket des Boards synchronisiert.',
    'BOT_SYNC_DEFAULT_STYLE'    => 'Du hast die ausgewählten Bots erfolgreich mit dem Standard-Style des Boards synchronisiert.',
Öffne /language/de/acp/common.php

Finde

Code: Alles auswählen

	'LOG_BOT_ADDED'		=> '<strong>Neuen Bot hinzugefügt</strong><br />» %s',
Danach einfügen

Code: Alles auswählen

    'LOG_BOT_DEFAULT_LANG_COUNT'    => '<strong>Es wurden %d Bots mit der Standard-Sprache des Boards synchronisiert.',
    'LOG_BOT_DEFAULT_LANG_NAMES'    => '<strong>Bots mit der Standard-Sprache des Boards synchronisiert<br />» %s',
    'LOG_BOT_DEFAULT_STYLE_COUNT'   => '<strong>Es wurden %d Bots mit dem Standard-Style des Boards synchronisiert',
    'LOG_BOT_DEFAULT_STYLE_NAMES'   => '<strong>Bots mit dem Standard-Style des Boards snychronisiert<br />» %s',
Alle Dateien speichern und schließen.

Re: Style für Gruppe bestimmen

Verfasst: 04.02.2012 19:53
von schnagga
Moin,

erst mal vielen Dank für die ausführliche Hilfe.

Ich glaube ich habe einen kleinen Bock geschossen (wer lesen kann ist klar im Vorteil) :oops: .

Der Style nennt sich genau: "Mobile/SEO style". Bei dem Begriff SEO, hätten bei mir eigentlich schon die Alarmsignale angehen müssen.
Um es kurz zu fassen:
Der Style prüft nicht nur ob ein Handy drauf zugreift, sondern auch ob ein im ACP eingetragener Bot auf das Board zugreift. Wenn das gegeben ist, wird automatisch auf den Mobile/SEO-Style umgeschaltet. In der includes/session.php gibt es dafür diesen Code (auszugsweise):

Code: Alles auswählen

function check_mobile($sql, $style)
    {
        $browser = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : '';
        if (empty($this->data['is_bot']) && strpos($browser, 'Mobile') === false && strpos($browser, 'Symbian') === false && strpos($browser, 'Opera M') === false && strpos($browser, 'Android') === false && stripos($browser, 'HTC_') === false && strpos($browser, 'Fennec/') === false && stripos($browser, 'Blackberry') === false && strpos($browser, 'Windows Phone') === false && strpos($browser, 'WP7') === false && strpos($browser, 'WP8') === false)
        {
                return true;
        }
        define('MOBILE_DEVICE', true);
        if(!empty($_REQUEST['nomobile']))
        {
            define('MOBILE_DEVICE_OFF', true);
            return true;
        }
        global $db;
 
Ich habe jetzt einfach (empty($this->data['is_bot']) in (empty($this->data['']) geändert.
Kann man das so machen oder ist das falsch :roll: ?

LG

Re: Mobile/SEO style

Verfasst: 05.02.2012 14:22
von Talk19zehn
Hello schnagga,

sofern WileCoyote keine anderen Vorschläge hat, bin ich grundsätzlich der Auffassung, dass die Zeile eingangs wie folgt aussehen könnte:

Code: Alles auswählen

 if (strpos($browser, 'Mobile')
Gab es zwischenzeiltich andere Sichtweisen von Google?

LG

BTW:
Und ich gebe dir recht, sofern es sich in deinem Falle um diese Version handelt. Die hier benannte IPhone-Version hatte ich bei mir testweise auch schon einmal für wenige Stunden eingebaut: http://www.artodia.com/phpbb-mobile/index.html
Und bei dieser Style-Version "I-Phone" steht zunächst erst einmal "nichts - offensichtlich für mich deutlich erkennbar" von SEO in der Deklaration --- Das ist "schon ein wenig irreführend". Ich wäre auch lediglich von einer I-Phone-Optik ausgegangen.


Viele Grüße

Re: Mobile/SEO style

Verfasst: 05.02.2012 14:33
von WileCoyote
Talk19zehn hat geschrieben:sofern WileCoyote keine anderen Vorschläge hat, bin ich grundsätzlich der Auffassung, dass die Zeile eingangs wie folgt aussehen könnte:
Das Snippet hat mit der Erkennung der mobilen Geräte nichts am Hut. Das war eine Anforderung die erst nach meinem Beitrag dazu gekommen ist ;-). Darauf hast du geantwortet, also auch dein Bier :)

Re: Mobile/SEO style

Verfasst: 05.02.2012 14:44
von Talk19zehn
Hi WileCoyote,
WileCoyote hat geschrieben:
Talk19zehn hat geschrieben:sofern WileCoyote keine anderen Vorschläge hat, bin ich grundsätzlich der Auffassung, dass die Zeile eingangs wie folgt aussehen könnte:
Das Snippet hat mit der Erkennung der mobilen Geräte nichts am Hut. Das war eine Anforderung die erst nach meinem Beitrag dazu gekommen ist ;-). Darauf hast du geantwortet, also auch dein Bier :)

Ich trinke zwar kein Bier und habe dennoch gern und ganz positiv gedacht unter der Prämisse geantwortet, da ich der Annahme war, es liegen Erfahrungswerte, auch hinsichtlich der Erkennung der mobilen Geräte deinerseits vor. :wink:
Kein Thema, wenn dies nicht der Fall sein sollte.

Allerbeste Grüße

Re: Mobile/SEO style

Verfasst: 05.02.2012 14:49
von WileCoyote
Meine Aussage war auch nicht negativ gemeint. Ich kenne, was die Erkennung mobiler Endgeräte anbelangt, nur die Einbauanleitungen. Da ich weder professionell Webdesign betreibe, noch das Thema bei mir im Forum von Bedeutung ist, habe ich mich damit auch noch nicht näher befasst.