it-swarm.com.de

Überschreibe die aktuelle Theme Einstellung in der wp config.php

Ich suche nach einer Möglichkeit, das aktuell ausgewählte Thema zu überschreiben, vorzugsweise in der Datei wp_config.php. Ich weiß, dass Sie einige wp_options-Einstellungen in der Konfiguration wie überschreiben können

define('WP_HOME', 'http://someotherdomain.com');

Dadurch wird die Option 'home' in der Tabelle wp_options überschrieben. Es gibt eine Option namens 'current_theme', die den Namen des aktuell ausgewählten Themas speichert. Ich frage mich, ob es eine Möglichkeit gibt, dies aus der Datei wp_config zu überschreiben, und wenn ja, wird dies tatsächlich das Thema ändern.

Ich habe es versucht

define('WP_CURRENT_THEME', 'someothertheme');

aber es geht nicht.

Ich muss dies in unserer Entwicklungsumgebung tun, da die Datenbank von zwei Entwicklern gemeinsam genutzt wird. Ich muss in der Lage sein, an einem Thema zu arbeiten, während der andere Entwickler an einem anderen Thema arbeitet.

2
joeljoeljoel

Lass dies in einem Plugin fallen & aktiviere. Ich sollte beachten, dass dies Dinge wie untergeordnete Themen nicht berücksichtigt - es dient lediglich zum Umschalten, welches Thema basierend auf SOME_FLAG gerendert wird.

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

function switch_ma_theme()
{
    // Return the theme directory name
    return SOME_FLAG ? 'theme-1' : 'theme-2';
}
5
TheDeadMedic

Eine andere Lösung.

add_action( 'template_redirect' , 'thisismyurl_change_theme_manually' );

function thisismyurl_change_theme_manually() {
if ( 'twentyeleven' != get_stylesheet() && is_admin() )
switch_theme( 'twentyeleven', 'style.css' );
}

Wenn Sie jedoch verschiedene WordPress-Installationen verwenden, klicken Sie im Administrator einfach auf "Thema aktivieren".

ps. Weitere Informationen finden Sie hier: http://nacin.com/2012/03/29/page-templates-in-subdirectories-new-in-wordpress-3-4/

1
Wyck

Wenn Sie dieselbe Datenbank mit verschiedenen Installationen von WordPress gemeinsam nutzen, ist es die beste Lösung, die Themendaten nur in der Konfigurationsdatei hinzuzufügen, da das Thema für alle Installationen von WordPress, die dieselbe Datenbank gemeinsam nutzen, geändert wird, wenn Sie zum Administrator wechseln und das Thema ändern.

Sie können Ihrer wp-config.php-Datei folgenden Code hinzufügen:

define('TEMPLATEPATH', '/path/to/your/new/theme/directory');
define('STYLESHEETPATH', '/path/to/your/new/theme/directory');
1
Vijay Kumar

Warum nicht ein Plugin wie WordPress ›Theme Tester" WordPress Plugins oder ähnliches verwenden und die Entwickler unterschiedliche Admin-Logins verwenden lassen? Ich bin mir jedoch nicht sicher, ob Theme Tester die Widget-Auswahl behandelt.

Und es ist immer noch keine gute Idee, eine Datenbank für zwei Installationen zu verwenden.

0
markratledge