Forum CMS Made Simple FR

Version complète : [résolu] affichage news si validation d'un champ personnalisé
Vous consultez actuellement la version basse qualité d’un document. Voir la version complète avec le bon formatage.
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: 1.11.9
#~ Url du site :
#~ Hébergeur / Soft : phpnet
#~ Informations Système :
#~ ----------------------------------------------
#~ Cms Version: 1.11.9
#~ Installed Modules:
#~ CMSMailer: 5.2.2
#~ CMSPrinting: 1.0.5
#~ FileManager: 1.4.3
#~ MenuManager: 1.8.6
#~ MicroTiny: 1.2.5
#~ ModuleManager: 1.5.5
#~ News: 2.13
#~ Search: 1.7.11
#~ ThemeManager: 1.1.8
#~ TemplateExternalizer: 2.1.3
#~ CGExtensions: 1.37.2
#~ CGCalendar: 1.10.4
#~ CGSimpleSmarty: 1.7
#~ JQueryTools: 1.2.5
#~ CGSmartImage: 1.13
#~ CGContentUtils: 1.3.6
#~ MleCMS: 1.11.4
#~ FormBuilder: 0.7.4
#~ AceEditor: 1.0
#~ Cataloger: 0.11.3
#~ Archiver: 0.2.6
#~ CGFeedMaker: 1.0.17
#~ CGGoogleMaps2: 0.98.1
#~ UsersGuide: 1.8.1
#~ Config Information:
#~ php_memory_limit:
#~ process_whole_template:
#~ max_upload_size: 50000000
#~ url_rewriting: none
#~ page_extension:
#~ query_var: page
#~ image_manipulation_prog: GD
#~ auto_alias_content: true
#~ locale:
#~ default_encoding: utf-8
#~ admin_encoding: utf-8
#~ set_names: true
#~ Php Information:
#~ phpversion: 5.4.16
#~ md5_function: On (Vrai)
#~ gd_version: 2
#~ tempnam_function: On (Vrai)
#~ magic_quotes_runtime: Off (Faux)
#~ E_STRICT: 2048
#~ E_DEPRECATED: 0
#~ memory_limit: 196M
#~ max_execution_time: 40
#~ output_buffering: 4096
#~ safe_mode: Off (Faux)
#~ file_uploads: On (Vrai)
#~ post_max_size: 50M
#~ upload_max_filesize: 50M
#~ session_save_path: Aucune vérification à cause de la restriction spécifiée par PHP open_basedir
#~ session_use_cookies: On (Vrai)
#~ xml_function: On (Vrai)
#~ xmlreader_class: On (Vrai)
#~ Server Information:
#~ Server Api: cgi-fcgi
#~ Server Db Type: MySQL (mysqli)
#~ Server Db Version: 5.5.32
#~ Server Db Grants: Impossible de trouver un privilège "GRANT ALL". Cela peut signifier que vous pourriez avoir des problèmes pour installer ou retirer des modules, ou encore l 'ajout et la suppression d'éléments, y compris les pages.
#~ Server Time Diff: Aucune différence de date du système de fichiers trouvées
#~ ----------------------------------------------
#~~~~~ FIN BLOC A NE PAS SUPPRIMER ~~~~~

L'idée est de pouvoir afficher une sélection de 2-3 news issues de plusieurs catégories à une page donnée (ici la page d'accueil). Pour ce faire, j'ai ajouté une définition de champs d'id=4 avec une case à cocher. Dans mon idée, si la case est cochée, ça s'affiche, sinon, ça ne s'affiche pas. Déjà, je ne sais pas si c'est faisable de la sorte ?

Voici le code que j'ai mis dans mon gabarit :


Code :
[== Indéfini ==]
<!-- Start News Display Template -->
{foreach from=$items item=entry}
<div class="NewsSummary">
{if isset($entry->fields)}
  {foreach from=$entry->fields item='field'}
    {if $field->id == '4' && $field->value == 'true'} {* Si le champ est coché, afficher l'article *}
      <h3 class="NewsSummaryLink">
      <a href="{$entry->moreurl}" title="{$entry->title|cms_escape:htmlall}">{$entry->title|cms_escape}</a>
      </h3>

      {if $entry->summary}
          {if isset($entry->fields)}
              <div class="NewsSummaryCost">
              {foreach from=$entry->fields item='field'}
               {if $field->id == '7' && $field->name == 'tarif'}
                    {eval var=$field->displayvalue}
               {/if}
              {/foreach}
              </div>
          {/if}
          {if isset($entry->extra)}
              <div class="NewsSummaryExtra">
                  {eval var=$entry->extra}
              </div>
          {/if}
          <div class="NewsSummaryMorelink">
              {$entry->morelink}
          </div>

      {else if $entry->content}

          <div class="NewsSummaryContent">
              {eval var=$entry->content}
          </div>
      {/if}

      {if isset($entry->fields)}
        {foreach from=$entry->fields item='field'}
           <div class="NewsSummaryField">
              {if $field->type == 'file' && $field->name == 'miniature'}
                <img src="{$entry->file_location}/{$field->displayvalue}" alt="" />
              {else}
              {/if}
           </div>
        {/foreach}
      {/if}
    {else} {* Sinon, ne rien afficher *}
    {/if}
  {/foreach}
{/if}

</div>
{/foreach}
<!-- End News Display Template -->

Je n'ai pas d'erreur smarty, mais ça ne fonctionne pas. Quelqu'un aurait-il une idée ?
Oups, bon j'ai trouvé : il suffit d'enlever les ' ' autour de true. Arf.