2017-09-19 3 views
0

Je suis en train de cacher tous les messages ceux avec le label « maître jardinier »Masquer plusieurs messages sur la page d'accueil sur Blogger

J'ai utilisé ce code et cela fonctionne, mais je ne peux pas voir le poste avec l'étiquette « maître Jardinier". Ce message n'a qu'un seul label. Voici le site http://upcommunitygarden.blogspot.com/

<b:if cond='data:blog.url == data:blog.homepageUrl'> 
 
    <b:loop values='data:post.labels' var='label'> 
 
     <b:if cond='data:label.isLast == "true"'> 
 
      <b:if cond='data:label.name != "Education""Projects"'> 
 
       <b:include data='post' name='post' /> 
 
      </b:if> 
 
     </b:if> 
 
    </b:loop> 
 
<b:else/> 
 
    <b:include data='post' name='post' /> 
 
</b:if>

Répondre

0

Utilisez data:post.labels.length == "1" pour vérifier si une étiquette après a

<b:if cond='data:blog.url == data:blog.homepageUrl and data:post.labels.length == "1"'> 
    <b:loop values='data:post.labels' var='label'> 
     <b:if cond='data:label.name != "Master Gardener"'> 
      <b:include data='post' name='post' /> 
     </b:if> 
    </b:loop> 
<b:else/> 
    <b:include data='post' name='post' /> 
</b:if> 
+0

Lorsque j'utilise ce code tous les messages apparaissent. Pas seulement ceux avec le label "Master Gardener". La publication n'a qu'une seule étiquette. – Carson

+0

Ce code masquera tous les articles avec le libellé "Master Gardener" si la publication n'a qu'une seule étiquette sur la page d'accueil et pas d'autres pages d'index. pour masquer votre libellé sur les pages d'index, utilisez 'data: blog.pageType ==" index "' au lieu de 'data: blog.url == data: blog.homepageUrl' (les pages d'index contiennent des pages d'étiquettes, des pages de recherche et des pages lorsque vous cliquez) Older Posts) – Bassam

0

vos codes sont mauvais.

Remplacer:

<b:loop values='data:posts' var='post'> 

par:

<b:loop values='data:view.isMultipleItems ? data:posts where (p => p.labels none (l => l.name in {"Education","Projects"})) : data:posts' var='post'> 
+0

S'il vous plaît éviter juste poster le code comme réponse. Ajouter plus d'informations comme ce qui ne va pas. –

+0

Pour filtrer, utilisez un opérateur ternaire dans la boucle et redéfinissez un nouveau tableau: Condition? tableau si vrai: tableau si faux. Si vrai, utilisez un opérateur lambda pour filtrer le tableau: data: posts où (p => p.labels none (l => l.name dans {"Education", "Projects"})). Si la valeur est false, affichez array: data: posts. –