Просмотр категории в предварительном просмотре Настройщика тем


Я создаю тему, в которой настройщик тем изменяет цвета, размеры и т. Д., А также имеет возможность выбрать категорию и стиль, которые конкретно относятся к этой категории.

Как я могу отобразить эту категорию в предварительном просмотре (только когда пользователь изменяет соответствующие параметры) вместо домашней/главной страницы по умолчанию, отображаемой по умолчанию?

РЕДАКТИРОВАТЬ

Я могу получить доступ к окну предварительного просмотра с помощью customize_preview_init, но я не могу применить wp_redirect, что, я думаю, может быть способом.

Author: Alvaro, 2013-08-13

4 answers

Если я правильно понимаю вашу цель, то вы выберете внутри настройщика, там перечислены категории, и пользователь может использовать это для сохранения в настройках вашей темы.

Если вы улучшите настройщик для категорий, то используйте этот класс из этого репозитория здесь. Включите файл и улучшите класс по умолчанию. Вы можете легко реализовать выбор для категорий установки. Внутри readme этого репозитория есть две ссылки на gist с примером использования, но для другой класс РЕПО. Я думаю, что это ясно и одинаково для всех расширений для настройщика.

 1
Author: bueltge, 2013-08-21 21:22:38

Вот подход, который я использовал, чтобы показывать что-то пользователям, когда они просматривают сайт через предварительный просмотр настройщика тем:

global $wp_customize;
if( is_user_logged_in() && isset($wp_customize) ) {
  // Show "categories" or things in the Customizer Previewer only
}

Это делает ваши шаблоны немного более запутанными, но, как вы, вероятно, обнаружили, в программе настройки тем не так много документации/разработок:/

 0
Author: jkhedani, 2013-08-20 21:00:41

Просто добавьте javascript, который активируется только в режиме предварительного просмотра и перенаправления: http://www.jquery4u.com/snippets/jquery-redirect-web-page/

В качестве расширенного решения вы можете создать асинхронно работающую функцию js с помощью wp.customize. Вы можете ознакомиться с моей темой http://theme.firmasite.com / для примера использования.

 0
Author: Ünsal Korkmaz, 2013-08-21 21:45:17

Я пришел к такому решению:

1. Требуется дополнительный файл, который будет содержать крючки только в предварительном просмотре темы

function mytheme_customizer_live_preview() {
    require_once('library/preview.php');
}
add_action( 'customize_preview_init', 'mytheme_customizer_live_preview' );

2. Что мне нужно было сделать, так это изменить запрос, как я обычно делаю на странице, поэтому просто сделайте это в предварительном просмотре (внутри preview.php ):

function modify_query($query) {

    $category = get_theme_mod( 'mytheme' )['categories'][0];

    $query->set('cat', $category);

    return $query;

}
add_filter('pre_get_posts', 'modify_query', 10);
 0
Author: Alvaro, 2013-10-06 01:24:39