Layout programmgesteuert ändern

Ich habe ein Thema, das 2 Möglichkeiten von Layouts innerhalb seiner Optionen, gestrecktes und boxed Layout bietet.

Ich wollte versuchen, die Vorderseite so zu gestalten, dass das gestreckte Layout aussieht, während der Rest der Seite das eingerahmte Aussehen verwendet.

Ich habe dies zu den Themenfunktionen hinzugefügt, um dies zu erreichen:

function yit_update_option( $id, $new_value, $hard_save = false ) { YIT_Registry::get_instance()->options->update_option( $id, $new_value, $hard_save ); } add_action('template_redirect', 'layoutchange'); function layoutchange(){ if( is_front_page() ) { yit_update_option('general-layout-type', 'streched'); } else { yit_update_option('general-layout-type', 'boxed'); } } 

Der Code prüft, ob sich der Benutzer auf der ersten Seite befindet oder nicht, und passt die Layoutoptionen entsprechend an.

Während dieser Code funktioniert, aktualisiert die Option ” yit_update_option” die databaseoptionen für das Layout direkt. Wenn sich eine Person auf der ersten Seite befindet und sich eine andere Person auf einer inneren Seite befindet, hat dieser Code Probleme, mit der Person Schritt zu halten. Hätte jemand andere Vorschläge für einen besseren Weg, diese Lösung zu implementieren?

Vielen Dank im Voraus für die Hilfe!

Solutions Collecting From Web of "Layout programmgesteuert ändern"