Pergunta de revisões do site WordPress: Função auxiliar de classificação de estrelas css quebrada

Um usuário perguntou ?

Olá,

Parece que a função auxiliar de classificação por estrelas precisa ser atualizada para refletir as alterações nas classes CSS de classificação por estrelas, no momento, as estrelas não estão sendo exibidas ao usar esta função.

obrigado johny

(@geminilabs)

1 ano, 6 meses atrás

Obrigado Johnny!

Por enquanto, você pode contornar isso dobrando as estrelas em um div que contém um .glsr-default tocou.

Por exemplo:

<div class="glsr-default">
    <?= apply_filters( 'glsr_star_rating', null, $rating ); ?>
</div>

(@johny-dotpad)

1 ano, 6 meses atrás

Olá,

Obrigado pela resposta. Infelizmente, a saída funcional não resolveu o problema para mim. Eu tive que trabalhar um pouco mais para mostrar a eles.

No final, eu tive que passar por todas as aulas envolvidas através do glsr- / gl- prefixos, um pouco doce, mas parece funcionar.

Até que uma solução esteja disponível, para qualquer outra pessoa neste post aqui, o CSS que usei, você precisará adicionar caminhos relativos aos svgs das estrelas. Copiei-os para a minha pasta de imagens de temas por conveniência.

.star {
	width: 20px;
	height: 20px;
	font-size: inherit;
	background-size: 20px;
        display: inline-block;
}

.star-rating>div,
.star-empty {
	background-image: url([path to]/star-empty.svg)!important
}

.has-error .star-rating>div {
	background-image: url([path to]/star-error.svg)!important
}

.star-half {
	background-image: url([path to]/star-half.svg)!important
}

.star-rating.s10>div:first-child,
.star-rating.s20>div:nth-child(-1n+2),
.star-rating.s30>div:nth-child(-1n+3),
.star-rating.s40>div:nth-child(-1n+4),
.star-rating.s50>div:nth-child(-1n+5),
.star-rating.s60>div:nth-child(-1n+6),
.star-rating.s70>div:nth-child(-1n+7),
.star-rating.s80>div:nth-child(-1n+8),
.star-rating.s90>div:nth-child(-1n+9),
.star-rating.s100>div,
.star-rating>.star-full {
	background-image: url([path to]/star-full.svg)!important
}

Esta resposta foi modificada há 1 ano e 6 meses.

(@geminilabs)

1 ano, 6 meses atrás

Isso funciona para mim:

Isso também deve funcionar para você, pois a regra CSS exige .glsr-default .glsr-star { ... } Srl.

No entanto, parece que você está usando o auxiliar de classificação por estrelas com o aplicativo ajax…

Há um bug na versão atual que afeta o auxiliar de classificação por estrelas se usado com o aplicativo ajax. Isso foi corrigido na v3.6, mas você pode corrigi-lo temporariamente se não puder esperar pela liberação da v3.6 editando um arquivo no plugin:

O arquivo a ser editado pode ser encontrado aqui:

/wp-content/plugins/site-reviews/plugin/Modules/Html/Partials/StarRating.php

E você mudaria a linha 19 daqui:

        return !is_admin()

Para fazer isso:

        return !glsr()->isAdmin()

Depois de fazer essa pequena edição, o assistente deve funcionar corretamente, conforme mostrado na minha primeira resposta sobre o tópico.

Esta resposta foi modificada há 1 ano e 6 meses. Esta resposta foi modificada há 1 ano e 6 meses.

(@johny-dotpad)

1 ano, 6 meses atrás

Uma solução mais profunda para o problema é que eu tenho a função auxiliar estrela no controlador de aplicativos AJAX.

A parte StarRating do plugin verifica se is_admin() é false .glsr- prefixo. Como o manipulador AJAX TRUE sempre retorna para is_admin(), ele não adicionará o prefixo.

Se eu alterar a condicional após a declaração de volta na classe StarRating para !is_admin() || wp_doing_ajax() então envie o .glsr- prefixos.

(@johny-dotpad)

1 ano, 6 meses atrás

Hahaha acho que temos que postar as respostas de uma vez! São problemas que resolvem agora. Obrigado.

Isto foi útil?

0 / 0

Deixe uma resposta 0

O seu endereço de email não será publicado. Campos obrigatórios são marcados *