Résolu Xenforo ajouter un block dans la sidebar

Statut
N'est pas ouverte pour d'autres réponses.

kroko11

Membre
Inscription
17 Janvier 2016
Messages
60
Réactions
1
Points
2 331
Hello !

Je souhaiterai ajouter un block dans la sidebar, j'ai vu qu'on pouvait le faire grâce au template mais je souhaiterai que certains groupes puissent voir ce block et d'autre non.
Et je doute que l'on puisse mettre des permissions grâce aux templates...

Y a t'il un addon ? Ou la possibilité de le faire avec les templates ?

Kroko11
 

TMC78.

Banni
Inscription
25 Août 2017
Messages
137
Réactions
62
Points
136
Pour cela, il existe des conditions XF...

Par ex, pour ton cas :
Code:
<xen:if is="{xen:helper ismemberof, $visitor, x, y}">
Ce contenu sera affiché uniquement aux membres du groupe d'utilisateurs x ou y
</xen:if>
 

TMC78.

Banni
Inscription
25 Août 2017
Messages
137
Réactions
62
Points
136
D'accord et pour terminer dans quelle template faut t'il le mettre pour qu'il apparaise dans la sidebar
Tu crées un nouveau template en mettant le code dedans,

Ensuite, rends-toi sur le template forum_list pour ajouter ceci :
Code:
<xen:include template="nom du template">
Tu l'ajoutes où tu voudrais que le bloc soit affiché :)

Je ne sais pas si j'ai bien expliqué, dit-moi si tu n'as pas compris ;)
 

kroko11

Membre
Inscription
17 Janvier 2016
Messages
60
Réactions
1
Points
2 331
Tu crées un nouveau template en mettant le code dedans,

Ensuite, rends-toi sur le template forum_list pour ajouter ceci :
Code:
<xen:include template="nom du template">
Tu l'ajoutes où tu voudrais que le bloc soit affiché :)

Je ne sais pas si j'ai bien expliqué, dit-moi si tu n'as pas compris ;)
Peux tu me donner l'endroit précis dans le code pour que le block soit affiché après le block "nouveau message de profil" merci beaucoup de ton aide !
 

TMC78.

Banni
Inscription
25 Août 2017
Messages
137
Réactions
62
Points
136
Peux tu me donner l'endroit précis dans le code pour que le block soit affiché après le block "nouveau message de profil" merci beaucoup de ton aide !
Dans ce cas-là tu dois le mettre en dessous de ça :
Code:
<xen:if is="{$profilePosts}">
            <div class="section profilePostList">
                <div class="secondaryContent">
                    <h3><a href="{xen:link find-new/profile-posts}">{xen:phrase new_profile_posts}</a></h3>
                    <xen:include template="sidebar_profile_post_list" />
                </div>
            </div>
        </xen:if>
 

kroko11

Membre
Inscription
17 Janvier 2016
Messages
60
Réactions
1
Points
2 331
Dans ce cas-là tu dois le mettre en dessous de ça :
Code:
<xen:if is="{$profilePosts}">
            <div class="section profilePostList">
                <div class="secondaryContent">
                    <h3><a href="{xen:link find-new/profile-posts}">{xen:phrase new_profile_posts}</a></h3>
                    <xen:include template="sidebar_profile_post_list" />
                </div>
            </div>
        </xen:if>

Quand j'ajoute
<xen:include template="pub">

ll me met erreur de syntaxe et quand je le retire cela marche...

Voilà le code qui marche:
Code:
<xen:h1>{$xenOptions.boardTitle}</xen:h1>

<xen:container var="$head.canonical"><link rel="canonical" href="{xen:link 'canonical:forums'}" /></xen:container>
<xen:if is="{$xenOptions.boardDescription}"><xen:container var="$head.description">
    <meta name="description" content="{$xenOptions.boardDescription}" /></xen:container></xen:if>
<xen:container var="$head.openGraph">
    <xen:include template="open_graph_meta">
        <xen:set var="$url">{xen:link 'canonical:forums'}</xen:set>
        <xen:set var="$title">{$xenOptions.boardTitle}</xen:set>
        <xen:set var="$description">{$xenOptions.boardDescription}</xen:set>
        <xen:set var="$ogType">website</xen:set>
    </xen:include></xen:container>

<xen:hook name="forum_list_nodes">
    <xen:if is="{$renderedNodes}"><xen:include template="node_list" /></xen:if>
</xen:hook>
  
<xen:sidebar>
    <xen:edithint template="sidebar.css" />
  
    <xen:hook name="forum_list_sidebar">
        <xen:if is="{$canViewMemberList}">
            <xen:include template="sidebar_online_users" />
        </xen:if>
      
        <xen:if is="{$threads}">
            <div class="section threadList">
                <div class="secondaryContent">
                    <h3><a href="{xen:link find-new/posts}" rel="nofollow">{xen:phrase new_posts}</a></h3>
                    <xen:include template="sidebar_new_posts" />
                </div>
            </div>
        </xen:if>
      
        <xen:if is="{$profilePosts}">
            <div class="section profilePostList">
                <div class="secondaryContent">
                    <h3><a href="{xen:link find-new/profile-posts}" rel="nofollow">{xen:phrase new_profile_posts}</a></h3>
                    <xen:include template="sidebar_profile_post_list" />
                </div>
            </div>
        </xen:if>
      
      
        <!-- block: forum_stats -->
        <div class="section">
            <div class="secondaryContent statsList" id="boardStats">
                <h3>{xen:phrase forum_statistics}</h3>
                <div class="pairsJustified">
                    <dl class="discussionCount"><dt>{xen:phrase discussions}:</dt>
                        <dd>{xen:number $boardTotals.discussions}</dd></dl>
                    <dl class="messageCount"><dt>{xen:phrase messages}:</dt>
                        <dd>{xen:number $boardTotals.messages}</dd></dl>
                    <dl class="memberCount"><dt>{xen:phrase members_count}:</dt>
                        <dd>{xen:number $boardTotals.users}</dd></dl>
                    <dl><dt>{xen:phrase latest_member}:</dt>
                        <dd><xen:username user="$boardTotals.latestUser" /></dd></dl>
                    <!-- slot: forum_stats_extra -->
                </div>
            </div>
        </div>
        <!-- end block: forum_stats -->
      
        <xen:include template="sidebar_share_page">
            <xen:set var="$url">{xen:link canonical:forums}</xen:set>
        </xen:include>
      
    </xen:hook>
</xen:sidebar>


Celui qui ne marche pas:
Code:
<xen:h1>{$xenOptions.boardTitle}</xen:h1>

<xen:container var="$head.canonical"><link rel="canonical" href="{xen:link 'canonical:forums'}" /></xen:container>
<xen:if is="{$xenOptions.boardDescription}"><xen:container var="$head.description">
    <meta name="description" content="{$xenOptions.boardDescription}" /></xen:container></xen:if>
<xen:container var="$head.openGraph">
    <xen:include template="open_graph_meta">
        <xen:set var="$url">{xen:link 'canonical:forums'}</xen:set>
        <xen:set var="$title">{$xenOptions.boardTitle}</xen:set>
        <xen:set var="$description">{$xenOptions.boardDescription}</xen:set>
        <xen:set var="$ogType">website</xen:set>
    </xen:include></xen:container>

<xen:hook name="forum_list_nodes">
    <xen:if is="{$renderedNodes}"><xen:include template="node_list" /></xen:if>
</xen:hook>
  
<xen:sidebar>
    <xen:edithint template="sidebar.css" />
  
    <xen:hook name="forum_list_sidebar">
        <xen:if is="{$canViewMemberList}">
            <xen:include template="sidebar_online_users" />
        </xen:if>
      
        <xen:if is="{$threads}">
            <div class="section threadList">
                <div class="secondaryContent">
                    <h3><a href="{xen:link find-new/posts}" rel="nofollow">{xen:phrase new_posts}</a></h3>
                    <xen:include template="sidebar_new_posts" />
                </div>
            </div>
        </xen:if>
      
        <xen:if is="{$profilePosts}">
            <div class="section profilePostList">
                <div class="secondaryContent">
                    <h3><a href="{xen:link find-new/profile-posts}" rel="nofollow">{xen:phrase new_profile_posts}</a></h3>
                    <xen:include template="sidebar_profile_post_list" />
                </div>
            </div>
        </xen:if>
      
        <xen:include template="pub">
        <!-- block: forum_stats -->
        <div class="section">
            <div class="secondaryContent statsList" id="boardStats">
                <h3>{xen:phrase forum_statistics}</h3>
                <div class="pairsJustified">
                    <dl class="discussionCount"><dt>{xen:phrase discussions}:</dt>
                        <dd>{xen:number $boardTotals.discussions}</dd></dl>
                    <dl class="messageCount"><dt>{xen:phrase messages}:</dt>
                        <dd>{xen:number $boardTotals.messages}</dd></dl>
                    <dl class="memberCount"><dt>{xen:phrase members_count}:</dt>
                        <dd>{xen:number $boardTotals.users}</dd></dl>
                    <dl><dt>{xen:phrase latest_member}:</dt>
                        <dd><xen:username user="$boardTotals.latestUser" /></dd></dl>
                    <!-- slot: forum_stats_extra -->
                </div>
            </div>
        </div>
        <!-- end block: forum_stats -->
      
        <xen:include template="sidebar_share_page">
            <xen:set var="$url">{xen:link canonical:forums}</xen:set>
        </xen:include>
      
    </xen:hook>
</xen:sidebar>


Et le template pub:

Code:
<xen:if is="{xen:helper ismemberof, $visitor, 3, 2}">
Ce contenu sera affiché uniquement aux membres du groupe d'utilisateurs x ou y
</xen:if>


As tu une idée ?


Il manquait un </xen: include>
 
Dernière édition:

kroko11

Membre
Inscription
17 Janvier 2016
Messages
60
Réactions
1
Points
2 331
Dans ce cas-là tu dois le mettre en dessous de ça :
Code:
<xen:if is="{$profilePosts}">
            <div class="section profilePostList">
                <div class="secondaryContent">
                    <h3><a href="{xen:link find-new/profile-posts}">{xen:phrase new_profile_posts}</a></h3>
                    <xen:include template="sidebar_profile_post_list" />
                </div>
            </div>
        </xen:if>
Je n'ai pas trouvé l'endroit pour placer mon bloc au dessus des infos de l'utilisateur peux tu me l'indiquer ?
 

TMC78.

Banni
Inscription
25 Août 2017
Messages
137
Réactions
62
Points
136
Quand j'ajoute
<xen:include template="pub">

ll me met erreur de syntaxe et quand je le retire cela marche...

Voilà le code qui marche:
Code:
<xen:h1>{$xenOptions.boardTitle}</xen:h1>

<xen:container var="$head.canonical"><link rel="canonical" href="{xen:link 'canonical:forums'}" /></xen:container>
<xen:if is="{$xenOptions.boardDescription}"><xen:container var="$head.description">
    <meta name="description" content="{$xenOptions.boardDescription}" /></xen:container></xen:if>
<xen:container var="$head.openGraph">
    <xen:include template="open_graph_meta">
        <xen:set var="$url">{xen:link 'canonical:forums'}</xen:set>
        <xen:set var="$title">{$xenOptions.boardTitle}</xen:set>
        <xen:set var="$description">{$xenOptions.boardDescription}</xen:set>
        <xen:set var="$ogType">website</xen:set>
    </xen:include></xen:container>

<xen:hook name="forum_list_nodes">
    <xen:if is="{$renderedNodes}"><xen:include template="node_list" /></xen:if>
</xen:hook>
 
<xen:sidebar>
    <xen:edithint template="sidebar.css" />
 
    <xen:hook name="forum_list_sidebar">
        <xen:if is="{$canViewMemberList}">
            <xen:include template="sidebar_online_users" />
        </xen:if>
     
        <xen:if is="{$threads}">
            <div class="section threadList">
                <div class="secondaryContent">
                    <h3><a href="{xen:link find-new/posts}" rel="nofollow">{xen:phrase new_posts}</a></h3>
                    <xen:include template="sidebar_new_posts" />
                </div>
            </div>
        </xen:if>
     
        <xen:if is="{$profilePosts}">
            <div class="section profilePostList">
                <div class="secondaryContent">
                    <h3><a href="{xen:link find-new/profile-posts}" rel="nofollow">{xen:phrase new_profile_posts}</a></h3>
                    <xen:include template="sidebar_profile_post_list" />
                </div>
            </div>
        </xen:if>
     
     
        <!-- block: forum_stats -->
        <div class="section">
            <div class="secondaryContent statsList" id="boardStats">
                <h3>{xen:phrase forum_statistics}</h3>
                <div class="pairsJustified">
                    <dl class="discussionCount"><dt>{xen:phrase discussions}:</dt>
                        <dd>{xen:number $boardTotals.discussions}</dd></dl>
                    <dl class="messageCount"><dt>{xen:phrase messages}:</dt>
                        <dd>{xen:number $boardTotals.messages}</dd></dl>
                    <dl class="memberCount"><dt>{xen:phrase members_count}:</dt>
                        <dd>{xen:number $boardTotals.users}</dd></dl>
                    <dl><dt>{xen:phrase latest_member}:</dt>
                        <dd><xen:username user="$boardTotals.latestUser" /></dd></dl>
                    <!-- slot: forum_stats_extra -->
                </div>
            </div>
        </div>
        <!-- end block: forum_stats -->
     
        <xen:include template="sidebar_share_page">
            <xen:set var="$url">{xen:link canonical:forums}</xen:set>
        </xen:include>
     
    </xen:hook>
</xen:sidebar>


Celui qui ne marche pas:
Code:
<xen:h1>{$xenOptions.boardTitle}</xen:h1>

<xen:container var="$head.canonical"><link rel="canonical" href="{xen:link 'canonical:forums'}" /></xen:container>
<xen:if is="{$xenOptions.boardDescription}"><xen:container var="$head.description">
    <meta name="description" content="{$xenOptions.boardDescription}" /></xen:container></xen:if>
<xen:container var="$head.openGraph">
    <xen:include template="open_graph_meta">
        <xen:set var="$url">{xen:link 'canonical:forums'}</xen:set>
        <xen:set var="$title">{$xenOptions.boardTitle}</xen:set>
        <xen:set var="$description">{$xenOptions.boardDescription}</xen:set>
        <xen:set var="$ogType">website</xen:set>
    </xen:include></xen:container>

<xen:hook name="forum_list_nodes">
    <xen:if is="{$renderedNodes}"><xen:include template="node_list" /></xen:if>
</xen:hook>
 
<xen:sidebar>
    <xen:edithint template="sidebar.css" />
 
    <xen:hook name="forum_list_sidebar">
        <xen:if is="{$canViewMemberList}">
            <xen:include template="sidebar_online_users" />
        </xen:if>
     
        <xen:if is="{$threads}">
            <div class="section threadList">
                <div class="secondaryContent">
                    <h3><a href="{xen:link find-new/posts}" rel="nofollow">{xen:phrase new_posts}</a></h3>
                    <xen:include template="sidebar_new_posts" />
                </div>
            </div>
        </xen:if>
     
        <xen:if is="{$profilePosts}">
            <div class="section profilePostList">
                <div class="secondaryContent">
                    <h3><a href="{xen:link find-new/profile-posts}" rel="nofollow">{xen:phrase new_profile_posts}</a></h3>
                    <xen:include template="sidebar_profile_post_list" />
                </div>
            </div>
        </xen:if>
     
        <xen:include template="pub">
        <!-- block: forum_stats -->
        <div class="section">
            <div class="secondaryContent statsList" id="boardStats">
                <h3>{xen:phrase forum_statistics}</h3>
                <div class="pairsJustified">
                    <dl class="discussionCount"><dt>{xen:phrase discussions}:</dt>
                        <dd>{xen:number $boardTotals.discussions}</dd></dl>
                    <dl class="messageCount"><dt>{xen:phrase messages}:</dt>
                        <dd>{xen:number $boardTotals.messages}</dd></dl>
                    <dl class="memberCount"><dt>{xen:phrase members_count}:</dt>
                        <dd>{xen:number $boardTotals.users}</dd></dl>
                    <dl><dt>{xen:phrase latest_member}:</dt>
                        <dd><xen:username user="$boardTotals.latestUser" /></dd></dl>
                    <!-- slot: forum_stats_extra -->
                </div>
            </div>
        </div>
        <!-- end block: forum_stats -->
     
        <xen:include template="sidebar_share_page">
            <xen:set var="$url">{xen:link canonical:forums}</xen:set>
        </xen:include>
     
    </xen:hook>
</xen:sidebar>


Et le template pub:

Code:
<xen:if is="{xen:helper ismemberof, $visitor, 3, 2}">
Ce contenu sera affiché uniquement aux membres du groupe d'utilisateurs x ou y
</xen:if>


As tu une idée ?


Il manquait un </xen: include>
Effectivement, j'avais oublié de fermer la balise :xD:

Je ne comprends pas où tu veux le mettre en faite... Fait un screen stp
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut