2014-07-15 3 views
-1

현재 WordPress에 표시되는 테마를 동적으로 변경하는 태그를 설정할 수 있습니까?Wordpress 테마를 동적으로 변경하십시오.

나는 비슷한 질문에 여기에 설명 된대로 스위치 기능을 이해합니다 : Display page content using multiple templates - WordPress,하지만 변경 사항을 구현하는 방법을 모르겠습니다. 스위치가 테마 내부의 index.php에 추가되어야합니까, 아니면 테마 폴더 안에 있습니까? 내 링크가 index.php 파일을 가리 킵니까?

가능한 경우 플러그인없이 이것을하고 싶습니다.

이 이미 않는 사이트의 예 : www.envye.com/wordpress/

감사합니다! function.php

function fxn_change_theme($theme) { 

    if($condition == true) 
    $theme = 'twentytwelve'; 
    else 
    $theme = 'twentyteleven'; 

    return $theme; 
} 

add_filter('template', 'fxn_change_theme'); 
add_filter('option_template', 'fxn_change_theme'); 
add_filter('option_stylesheet', 'fxn_change_theme'); 
+0

WordPress 템플릿 <> WordPress 테마 – user2019515

+0

사용하려는 것은 [페이지 템플릿] (http://codex.wordpress.org/Page_Templates) – ssergei

+0

입니다. Ssergei : 페이지 템플릿을 원하지 않습니다. 클릭시 전체 사이트에 표시 할 템플릿 방문자가 어떤 페이지/게시물/사이드 바에 상관없이 템플릿을 변경할 수 있습니다. – user1943523

답변

1

사용이 당신은 switch_theme() 방법을 사용할 수 있습니다. https://codex.wordpress.org/Function_Reference/switch_theme

+0

포크렐 : $ 조건은 무엇입니까? 클릭을 기반으로 템플릿을 변경할 때가되었음을 함수에 어떻게 알릴 수 있습니까? – user1943523

+0

다음은 쉬운 단계입니다. 1. 클릭시 테마 값을 전달할 수 있습니다. 2. 페이지를 다시로드하십시오. 3. 변수에 값을 가져옵니다. 4. 위 조건에서 변수를 전달하십시오. – slash

+0

@slash는 기존의 옵션에 연결되는 마지막 두 개의 필터입니까, 아니면 사용자 정의 된 필터입니까? 나는 특별히 'option-template'과 'option-stylsheet'를 언급하고 있는데, 왜냐하면 그것들은 테마를 전환 할 때 anythinng을 전혀하지 않는 것처럼 보이기 때문입니다. 또한 스타일 시트와 스크립트 만 전환되고 테마 템플릿 파일 (index, header, footer..etc)은 전환되지 않습니다. 왜 이런 일이 일어날 수 있습니까? –

관련 문제