Como Mostrar Diferentes Filtros do WooCommerce em Páginas Diferentes
O shortcode [woof] do filtro de produtos HUSKY para WooCommerce aceita atributos que permitem controlar quais filtros aparecem e quais produtos eles exibem.
Atributos principais:
tax_only– Exibir apenas taxonomias específicas (categorias, atributos)by_only– Exibir apenas filtros não-taxonômicos específicos (preço, SKU, estoque, etc.)taxonomies– Exibir apenas termos de taxonomia específicos (usado com recontagem dinâmica)
Exemplos de Shortcode
Filtrar Taxonomias Específicas
Exibir apenas filtros de categoria e marca:
[woof tax_only="product_cat,pa_brand"]
Filtrar Elementos Não-Taxonômicos
Exibir apenas filtros de preço, SKU e estoque:
[woof by_only="by_price,by_sku,by_instock"]
Combinado: Taxonomias + Filtros Não-Taxonômicos
Exibir taxonomias específicas E filtros não-taxonômicos:
[woof tax_only="product_cat,pa_size,pa_color" by_only="by_price,by_instock"]
Usando o Atributo taxonomies (Para Recontagem Dinâmica)
Exibir apenas termos específicos de taxonomias específicas:
[woof taxonomies="product_cat:35,42,58+pa_brand:nike,adidas"]
Nota: O atributo taxonomies é usado quando você tem "recontagem dinâmica" ou "ocultar opções vazias" ativados.
Guia de Configuração Completo
Passo 1: Crie Seus Shortcodes
Crie diferentes shortcodes [woof] para cada página com os atributos apropriados.
Exemplo:
- Fornecedor A:
[woof tax_only="product_cat,pa_size,pa_color" by_only="by_price"] - Fornecedor B:
[woof taxonomies="product_cat:50+pa_brand:nike,adidas" by_only="by_price"]
Passo 2: Coloque os Shortcodes em Widgets
- Vá em Aparência → Widgets
- Adicione o widget Texto ou HTML Personalizado à sua barra lateral
- Cole seu shortcode no widget
- Crie widgets separados para cada shortcode
Passo 3: Instale um Plugin de Widget Condicional
Você precisa de um plugin para controlar a visibilidade do widget com base nas condições da página.
Escolha um:
- Widget Logic – https://wordpress.org/plugins/widget-logic/
- Show WordPress Widget by Logic – https://github.com/realmag777/Show-WordPress-Widget-by-Logic
Passo 4: Defina as Condições de Visibilidade
Adicione lógica condicional a cada widget para controlar onde ele aparece.
Exemplos de Lógica Condicional
Exibir Filtro em uma Página Específica
Pelo slug da página:
is_page('supplier-nike')
Pelo ID da página:
is_page(123)
Exibir Filtro em Múltiplas Páginas
is_page(array('supplier-1', 'supplier-2', 'supplier-3'))
Exibir Filtro em Arquivo de Categoria
Pelo ID da categoria:
is_product_category(35)
Pelo slug da categoria:
is_product_category('electronics')
Exibir Filtro em Taxonomia Personalizada
is_tax('supplier', 'nike-products')
Excluir Páginas Específicas
Exibir em TODOS os lugares, EXCETO na página 123:
!is_page(123)
Exemplo de Configuração Completa
Cenário: 3 Fornecedores com Filtros Diferentes
Fornecedor A (Nike) – ID da Página: 123
- Shortcode:
[woof tax_only="product_cat,pa_size,pa_color" by_only="by_price"] - Condição do Widget:
is_page(123) - Resultado: Exibe todas as categorias de produtos com filtros de tamanho, cor e preço
Fornecedor B (Adidas) – Slug da página: produtos-adidas
- Shortcode:
[woof taxonomies="product_cat:40,41,42" by_only="by_instock"] - Condição do Widget:
is_page('adidas-products') - Resultado: Exibe apenas as categorias 40, 41, 42 com filtro de estoque
Fornecedor C – ID do Arquivo de Categoria: 50
- Shortcode:
[woof tax_only="product_cat,pa_brand" by_only="by_price,by_sku"] - Condição do Widget:
is_product_category(50) - Resultado: Exibe filtros de categorias, marcas, preço e SKU
Entendendo os Atributos
tax_only vs taxonomies
Use tax_only quando:
- Você quer exibir taxonomias inteiras (todos os termos)
- Exemplo:
tax_only="product_cat,pa_brand"exibe todas as categorias e todas as marcas
Use taxonomies quando:
- Você tem "recontagem dinâmica" ou "ocultar opções vazias" ativados
- Você quer exibir termos específicos de taxonomias específicas
- Exemplo:
taxonomies="product_cat:35,42+pa_brand:nike"exibe apenas as categorias 35 e 42, e apenas a marca Nike
Valores de by_only
Filtros não-taxonômicos disponíveis para by_only:
by_price– Controle deslizante de faixa de preçoby_sku– Pesquisar por SKUby_text– Pesquisa de textoby_author– Filtrar por autorby_onsales– Exibir apenas produtos em promoçãoby_instock– Exibir apenas produtos em estoque- Chaves de campo meta (se ativadas nas configurações do WOOF)
Use by_only="none" para ocultar todos os filtros não-taxonômicos.
Encontrando IDs e Slugs
IDs de Categoria
- Vá em Produtos → Categorias
- Passe o mouse sobre o nome da categoria
- Veja a barra de status do navegador ou a URL
- Encontre
tag_ID=35– o número é o ID da sua categoria
IDs de Página
- Vá em Páginas
- Passe o mouse sobre o nome da página
- Veja a URL:
post=123 - O número é o ID da sua página
Slugs de Atributo
- Vá em Produtos → Atributos
- Os slugs de atributo começam com
pa_ - Exemplos:
pa_brand,pa_size,pa_color,pa_material
Testando Sua Configuração
- Teste os shortcodes primeiro
- Coloque o shortcode diretamente em uma página de teste
- Verifique se os filtros são exibidos corretamente
- Confira se a filtragem funciona
- Teste a visibilidade do widget
- Visite cada página onde o filtro deve aparecer
- Verifique se o filtro correto é exibido
- Confira se outros filtros não aparecem
- Verifique se há apenas um filtro por página
- Múltiplos filtros na mesma página entrarão em conflito
- Use as condições do widget para garantir exclusividade
Limitação Importante
Apenas um filtro por página: Apenas um filtro WOOF pode estar ativo por página por vez. Múltiplos filtros entrarão em conflito.
Solução: Use lógica condicional de widget para garantir que apenas um widget de filtro seja exibido por página.
Dicas
- Teste os shortcodes diretamente primeiro
- Antes de adicionar aos widgets, teste os shortcodes em uma página normal
- Isso garante que os atributos estejam corretos
- Use condições exclusivas
- Certifique-se de que as condições do widget não se sobreponham
- Apenas um filtro deve estar visível por página
- Condições negativas
- Use
!is_page(123)para excluir páginas específicas - Útil para cenários de "exibir em todos os lugares, exceto"
- Use
- Verifique os slugs de atributo
- Os slugs de atributo devem começar com
pa_ - Slug errado = o filtro não aparecerá
- Os slugs de atributo devem começar com
Documentação Completa
Para referência completa de atributos de shortcode: https://products-filter.com/shortcode/woof
Solução de Problemas
Filtro Não Aparece
Causas possíveis:
- A condição do widget é falsa para a página atual
- Atributos do shortcode incorretos
- IDs de categoria/atributo não existem
- Múltiplos filtros em conflito
Solução:
- Verifique se o ID/slug da página corresponde à condição
- Confira os IDs das categorias em Produtos → Categorias
- Teste o shortcode em uma página normal primeiro
- Garanta que apenas um widget de filtro por página
Produtos Errados Sendo Exibidos
Causas possíveis:
- IDs de categoria incorretos
- Slugs de atributo errados
- Usando o atributo errado (
tax_onlyvstaxonomies)
Solução:
- Verifique novamente os IDs das categorias
- Confirme se os slugs de atributo começam com
pa_ - Use
taxonomiesse você tiver a recontagem dinâmica ativada - Teste com um shortcode mais simples primeiro
Múltiplos Filtros Sendo Exibidos
Causa: As condições do widget se sobrepõem
Solução:
- Revise todas as condições do widget
- Garanta exclusividade mútua
- Use condições negativas para separar
Filtro Aparece em Páginas Erradas
Causa: Condição do widget muito ampla
Solução:
- Torne a condição mais específica
- Use o ID da página em vez da categoria, se necessário
- Teste a lógica da condição cuidadosamente
Resumo
Para exibir filtros diferentes em páginas diferentes:
- Crie shortcodes
[woof]personalizados com atributostax_onlye/ouby_only - Coloque cada shortcode em widgets separados de Texto/HTML
- Instale o plugin Widget Logic
- Adicione lógica condicional a cada widget (ex.:
is_page(123)) - Teste para garantir que apenas um filtro seja exibido por página
Lembre-se: Apenas um filtro pode estar ativo por página. Use as condições do widget para garantir exclusividade.