news e extrafield Topic is solved

La discussione sul CMS Made Simple in italiano.

Moderator: magallo

Post Reply
axxe16

news e extrafield

Post by axxe16 »

Ciao a tutti,
sto smanettando col modulo news ultima release.
Ho aggiunto 2 campi extra da backend: uno chiamato foto ed è un campo upload, l'altro chiamato filmato ed è un semplice campo input tipo testo.
Ora vorrei richiamarli dentro al template news realizato ad hoc

Code: Select all

{if isset($entry->extra)}
    <div class="NewsSummaryExtra">
        {eval var=$entry->extra}
	{* {cms_module module='Uploads' mode='simpleurl' upload_id=$entry->extravalue} *}
    </div>
{/if}

{if isset($entry->fields)}
  {foreach from=$entry->fields item='field'}
     <div class="NewsSummaryField">
        {if $field->type == 'file'}
          <img src="{$entry->file_location}/{$field->value}"/>
        {else}
          {$field->name}: {eval var=$field->value}
        {/if}
     </div>
  {/foreach}
{/if}
così com'è dovrebbe già farmi vedere le etichette dei campi e i loro valori... o no? (ovviamente ho inserito una news di prova con i campi compilati)
Che dipenda dalo fatto che ho configurato il multilingue?
axxe16

Re: news e extrafield

Post by axxe16 »

argh!!!!  >:(
avevo dimenticato di flaggare nei campi "pubblico" ora il template Sample funziona!!!
axxe16

Re: news e extrafield

Post by axxe16 »

ok, sono di nuovo impantanato...  >:(  >:(

allora ho due problemi:

1° problema: ho creato una serie di campi e poi li controllo con degli if, così


{if isset($entry->aliasprodotto)}
  {if isset($entry->foto)}
          aliasprodotto}">
  title}" width="100" src="{$entry->file_location}/{$entry->foto}"/>
         
  {else}
        aliasprodotto}">
  title}" width="100" src="images/lay/noFoto.gif"/>
       
  {/if}
{else}
  {if isset($entry->foto)}
  title}" width="100" src="{$entry->file_location}/{$entry->foto}"/>
  {else}
  title}" width="100" src="images/lay/noFoto.gif"/>
  {/if}
{/if}


per qualche strano motivo la verifica su $entry->foto funziona mentre quella su $entry->aliasprodotto no... e non capisco perchè

2° problema: vorrei passare uno dei campi extra delle news dentro un tag inserito nel temlate della news, ho provato così ma non funziona:

{capture name=nomefilmato}{$entry->nomefilmato}{/capture}
{assign var="nomefilmato" value=$nomefilmato}
{swfobjectVideo fver="7" width="240" height="148" movie="../uploads/flv/$nomefilmato" idDiv="$nomefilmato"}


???
in sintesi vorrei ottenere un comportamento del genere: nel primo caso se ho definito il campo aliasprodotto allora lo uso per ricavare il link al prodotto, altrimenti metto solo un immagine, se non disponibile l'immagine metto un img predefinita.
Nel secondo caso voglio visualizzare un filmato flv tramite un player inserendo il nome del filmato nel campo nomefilmato che assegno ad una variabile...
alby

Re: news e extrafield

Post by alby »

axxe16 wrote: in sintesi vorrei ottenere un comportamento del genere: nel primo caso se ho definito il campo aliasprodotto allora lo uso per ricavare il link al prodotto, altrimenti metto solo un immagine, se non disponibile l'immagine metto un img predefinita.
Nel secondo caso voglio visualizzare un filmato flv tramite un player inserendo il nome del filmato nel campo nomefilmato che assegno ad una variabile...
In entrambi i casi devi sempre controllare con {get_template_vars} il nome esatto delle variabili.
Nel secondo caso probabilmente $entry->nomefilmato fa parte di un loop perchè è un array e quindi non lo puoi usare direttamente o sei dentro il loop?

Alby
axxe16

Re: news e extrafield

Post by axxe16 »

Ciao Alby,
si sono in un ciclo, come questo:

Code: Select all

{foreach from=$items item=entry}
<table class="prodotto" width="500" border="0" cellspacing="5" cellpadding="4">
  <tr>
    <td rowspan="2" style="vertical-align:top;" width="100">

{if isset($entry->aliasprodotto)}
  {if isset($entry->foto)}
          <a href="index.php?page={$entry->aliasprodotto}">
  <img alt="{$entry->title}" width="100" src="{$entry->file_location}/{$entry->foto}"/>
          </a>
  {else}
         <a href="index.php?page={$entry->aliasprodotto}">
  <img alt="{$entry->title}" width="100" src="images/lay/noFoto.gif"/>
         </a>
  {/if}
{else}
  {if isset($entry->foto)}
  <img alt="{$entry->title}" width="100" src="{$entry->file_location}/{$entry->foto}"/>
  {else}
  <img alt="{$entry->title}" width="100" src="images/lay/noFoto.gif"/>
  {/if}
{/if}

   </td>
    <td>

<h4 class="nomeProdotto">
	<a href="index.php?page={$entry->aliasprodotto}">{$entry->title}</a>
</h4>

</td>
  </tr>
  <tr>
    <td>
{if $entry->summary}
		{eval var=$entry->summary}
{else if $entry->content}
		{eval var=$entry->content}
{/if}
</td>
  </tr>
</table>
{/foreach}
</div>
{/if}
Strano ho messo {get_template_vars} nel template della news e, a parte le variabili standard mi individua solo "nomefilmato ="
Io ho settato nelle news: foto (campo file), nomefilmato  e aliasprodotto (campi testo)

Ho già svuotato la cache del browser e quella del sito  ???
axxe16

Re: news e extrafield

Post by axxe16 »

allora per rendere disponibile nella pagina uno dei campi è necessario fare una cosa così:

Code: Select all

{capture name=cicco}{$entry->aliasprodotto}{/capture}
{assign var="cicco" value=$ciccio}
ma non il valore...

per vedere le variabili delle news dentro un ciclo si deve usare:
{$entry|print_r}

e le vedo e sono corrette...

per gli if il problema a quanto pare era che verificavo se i campi erano settati e questo funziona solo con i campi file mentre con i campi testo il fatto di averli creati li da per "settati" ....

mi rimane l'ultimo problema: recuperare il valore metterlo in una variabile e usarlo in un tag...
Last edited by axxe16 on Tue May 06, 2008 9:15 pm, edited 1 time in total.
axxe16

Re: news e extrafield

Post by axxe16 »

OK, non ho risolto.... ma ho scorporato il tag e l'ho messo dentro al template della news (nel mio caso era solo js) sarebbe bello però capire come fare. Anche perchè le applicazioni sarebbero molte
Post Reply

Return to “Italian - Italiano”