[Résolu] Mettre une image par défaut sur CGBlog -
toniodesbois - 24/04/2015
Citation :#~~~~~ DEBUT BLOC A NE PAS SUPPRIMER ~~~~~
#~ Version du CMS: 1.11.13
#~ Url du site : http://www.arcal.org/
#~ Hébergeur / Soft : OVH perso
#~ Informations Système :
#~ ----------------------------------------------
#~ Cms Version: 1.11.13
#~ Installed Modules:
#~ CMSMailer: 5.2.2
#~ CMSPrinting: 1.0.5
#~ FileManager: 1.4.5
#~ MenuManager: 1.8.6
#~ MicroTiny: 1.2.9
#~ ModuleManager: 1.5.8
#~ News: 2.15
#~ Search: 1.7.12
#~ ThemeManager: 1.1.8
#~ Showtime: 3.4
#~ CGExtensions: 1.45
#~ CGSimpleSmarty: 1.7.4
#~ JQueryTools: 1.3.4
#~ CGBlog: 1.12.9
#~ NewsSlides: 1.4
#~ Config Information:
#~ php_memory_limit:
#~ process_whole_template:
#~ max_upload_size: 64000000
#~ url_rewriting: none
#~ page_extension:
#~ query_var: page
#~ image_manipulation_prog: GD
#~ auto_alias_content: true
#~ locale: fr_FR.utf8
#~ default_encoding: utf-8
#~ admin_encoding: utf-8
#~ set_names: true
#~ Php Information:
#~ phpversion: 5.4.38
#~ md5_function: On (Vrai)
#~ gd_version: 2
#~ tempnam_function: On (Vrai)
#~ magic_quotes_runtime: Off (Faux)
#~ E_STRICT: 2048
#~ E_DEPRECATED: 8192
#~ memory_limit: 512M
#~ max_execution_time: 300
#~ output_buffering: 4096
#~ safe_mode: Off (Faux)
#~ file_uploads: On (Vrai)
#~ post_max_size: 64M
#~ upload_max_filesize: 64M
#~ session_save_path: /tmp (0700)
#~ session_use_cookies: On (Vrai)
#~ xml_function: On (Vrai)
#~ xmlreader_class: On (Vrai)
#~ Server Information:
#~ Server Api: fpm-fcgi
#~ Server Db Type: MySQL (mysqli)
#~ Server Db Version: 5.5.41
#~ 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 ~~~~~
Bonjour,
Je voudrais qu'une photo par défaut s'affiche quand j'ajoute une news sans photo dans CGBlog afin de pas "dérégler" le design.
J'ai lu ça :
http://www.how-i-did-that.com/cgblog/9/15/Setting-a-default-image-for-News-or-CGBlog.html
J'ai fait ça :
Code :
[== PHP ==]
{if isset($entry->fields)}
{foreach from=$entry->fields item='field'}
<div class="CGBlogSummaryField">
{if $field->type == 'image'}
{if !empty($field)}
<img src="{$entry->file_location}/{$field->value}" width='200' />
{else}
<img src="uploads/NCleanBlue/news.jpg" width='200' />
{/if}
{/if}
</div>
{/foreach}
{/if}
Mais la variable $field ne semble jamais vide même si aucune image n'est ajoutée : en retirant le ! ça m’affiche news.jpg.
Merci pour vos réponses.
Antoine
[Résolu] Mettre une image par défaut sur CGBlog -
Jean le Chauve - 24/04/2015
Peut-être en vidant les caches (navigateur et cms).
Regarde ce que contient $field car l'adresse n'est peut-être pas bonne, et comme tu n'as pas de alt= :
Code :
[== Indéfini ==]
{if $field->type == 'image'}
{$field}
{if !empty($field)}
[Résolu] Mettre une image par défaut sur CGBlog -
jissey - 24/04/2015
Bonjour,
ton test n'est pas bon, essaie plutôt ça :
{if !empty($field->value)}
[Résolu] Mettre une image par défaut sur CGBlog -
Jean le Chauve - 24/04/2015
Bien vu jissey
[Résolu] Mettre une image par défaut sur CGBlog -
toniodesbois - 24/04/2015
Merci jissey, ça ne risquait pas de marcher mais ça ne fonctionne toujours pas
J'ai testé ça :
Code :
[== Indéfini ==]
{if $field->type == 'image'}
{$field->value}
{/if}
Je retrouve bien le nom des images sur les 2 news avec image mais ça ne me renvoit rien sur celle sans image.
L'adresse de news.jpg est bonne car elle apparait quand je retire le ! de !empty (uniquement sur les 2 news avec photo).
[Résolu] Mettre une image par défaut sur CGBlog -
Jean le Chauve - 24/04/2015
Bizarre, ton histoire. Et avec
{if $field->value !=""}
[Résolu] Mettre une image par défaut sur CGBlog -
toniodesbois - 24/04/2015
Code :
{if $field->value !=""}
<img src="{$entry->file_location}/{$field->value}" width='200' />
{else}
<img src="uploads/NCleanBlue/news.jpg" width='200' />
{/if}
news 1 = image 1 OK
news 2 = image 2 OK
news 3 = rien
Code :
[== Indéfini ==]
{if $field->value ==""}
<img src="{$entry->file_location}/{$field->value}" width='200' />
{else}
<img src="uploads/NCleanBlue/news.jpg" width='200' />
{/if}
news 1 = news.jpg
news 2 = news.jpg
news 3 = rien
[Résolu] Mettre une image par défaut sur CGBlog -
jissey - 24/04/2015
et ton image uploads/NCleanBlue/news.jpg, t'es sûr qu'elle existe?
[Résolu] Mettre une image par défaut sur CGBlog -
toniodesbois - 24/04/2015
Oui elle s'affiche bien quand je teste avec {if $field->value ==""}
[Résolu] Mettre une image par défaut sur CGBlog -
jissey - 24/04/2015
ne crie pas :lol:
d'après ton code, ça m'étonnerait qu'elle s'affiche :
Code :
[== Indéfini ==]
{if $field->value ==""}
<img src="{$entry->file_location}/{$field->value}" width='200' />
[Résolu] Mettre une image par défaut sur CGBlog -
jissey - 24/04/2015
de toute évidence le champ n'est jamais vide!
Fait un print_r de $field.
Code :
[== Indéfini ==]
{if $field->type == 'image'}
<pre>{$field|print_r}</pre>
{/if}
[Résolu] Mettre une image par défaut sur CGBlog -
toniodesbois - 24/04/2015
jissey a écrit :ne crie pas :lol:
d'après ton code, ça m'étonnerait qu'elle s'affiche :
Code :
[== Indéfini ==]
{if $field->value ==""}
<img src="{$entry->file_location}/{$field->value}" width='200' />
Je testait ça justement pour voir si ce qui était après le {else} fonctionnait
[Résolu] Mettre une image par défaut sur CGBlog -
toniodesbois - 24/04/2015
jissey a écrit :de toute évidence le champ n'est jamais vide!
Fait un print_r de $field.Code :
[== Indéfini ==]
{if $field->type == 'image'}
<pre>{$field|print_r}</pre>
{/if}
Après les 2 news avec photo, j'ai ça :
Code :
[== Indéfini ==]
<pre>stdClass Object
(
[name] => Photo
[type] => image
[value] => badauds_sur__la_place30x30cm_.JPG
)
1</pre>
En fait je pense que c'est le {if $field->type == 'image'} qui exclut directement les news sans image.
Il faudrait quelque chose du genre :
Code :
[== Indéfini ==]
{if !empty($field->type == 'image')}
<img src="{$entry->file_location}/{$field->value}" width='200' />
{else}
<img src="uploads/NCleanBlue/news.jpg" width='200' />
{/if}
mais ça me renvoit une erreur
[Résolu] Mettre une image par défaut sur CGBlog -
toniodesbois - 24/04/2015
J'ai carrément retiré le test {if $field->type == 'image'} mais ça ne change rien :
AVANT :
Code :
{if isset($entry->fields)}
{foreach from=$entry->fields item='field'}
<div class="CGBlogSummaryField">
{if $field->type == 'image'}
{if !empty($field->value)}
<img src="{$entry->file_location}/{$field->value}" width='200' />
{else}
<img src="uploads/NCleanBlue/news.jpg" width='200' />
{/if}
{/if}
</div>
{/foreach}
{/if}
APRÈS :
Code :
[== Indéfini ==]
{if isset($entry->fields)}
{foreach from=$entry->fields item='field'}
<div class="CGBlogSummaryField">
{if !empty($field->value)}
<img src="{$entry->file_location}/{$field->value}" width='200' />
{else}
<img src="uploads/NCleanBlue/news.jpg" width='200' />
{/if}
</div>
{/foreach}
{/if}
[Résolu] Mettre une image par défaut sur CGBlog -
toniodesbois - 24/04/2015
J'allège le code pour tester
J'ai retiré aussi {if isset($entry->fields)} : aucun changement, même problème
Quand j'enlève {foreach from=$entry->fields item='field'} : toutes les news se retrouvent avec l'image news.jpg
Code :
[== Indéfini ==]
<div class="CGBlogSummaryField">
{if !empty($field->value)}
<img src="{$entry->file_location}/{$field->value}" width='200' />
{else}
<img src="uploads/NCleanBlue/news.jpg" width='200' />
{/if}
</div>
[Résolu] Mettre une image par défaut sur CGBlog -
jissey - 24/04/2015
fait des print_r pour qu'on s'y retrouve, c'est pas clair et ça commence à être trop embrouillé!!
Copie le résultat de ça :
Code :
[== Indéfini ==]
{foreach from=$entry->fields item='field'}
<pre>{$field|print_r}</pre>
{/foreach}
[Résolu] Mettre une image par défaut sur CGBlog -
toniodesbois - 24/04/2015
Toujours dans les tests :
Code :
[== Indéfini ==]
{if $entry->fields}
<div class="CGBlogSummaryField">
{if !empty($field->value)}
<img src="{$entry->file_location}/{$field->value}" width='200' />
{else}
<img src="uploads/NCleanBlue/news.jpg" width='200' />
{/if}
</div>
{/if}
Je me retrouve avec l'image news.jpg uniquement dans les news avec image.
[Résolu] Mettre une image par défaut sur CGBlog -
toniodesbois - 24/04/2015
jissey a écrit :fait des print_r pour qu'on s'y retrouve, c'est pas clair et ça commence à être trop embrouillé!!
Copie le résultat de ça :
Code :
[== Indéfini ==]
{foreach from=$entry->fields item='field'}
<pre>{$field|print_r}</pre>
{/foreach}
Code :
[== Indéfini ==]
<h2>Nos actualités</h2>
<div class="CGBlogSummary">
<div class="CGBlogSummaryPostdate">
Le 24 avril 2015
</div>
<div class="CGBlogSummaryLink">
<a href="http://www.arcal.org/index.php?mact=CGBlog,cntnt01,detail,0&cntnt01articleid=5&cntnt01returnid=15" title="News 1 (sans image)">News 1 (sans image)</a>
</div>
<div class="CGBlogSummarySummary">
<p>Sommaire news 1</p> </div>
</div>
<div class="CGBlogSummary">
<pre>stdClass Object
(
[name] => Photo
[type] => image
[value] => badauds_sur__la_place30x30cm_.JPG
)
1</pre>
<div class="CGBlogSummaryPostdate">
Le 24 avril 2015
</div>
<div class="CGBlogSummaryLink">
<a href="http://www.arcal.org/index.php?mact=CGBlog,cntnt01,detail,0&cntnt01articleid=4&cntnt01returnid=15" title="News 2 (avec image badauds.jpg)">News 2 (avec image badauds.jpg)</a>
</div>
<div class="CGBlogSummarySummary">
<p>Sommaire news 2</p> </div>
</div>
<div class="CGBlogSummary">
<pre>stdClass Object
(
[name] => Photo
[type] => image
[value] => IMG_0541.JPG
)
1</pre>
<div class="CGBlogSummaryPostdate">
Le 24 avril 2015
</div>
<div class="CGBlogSummaryLink">
<a href="http://www.arcal.org/index.php?mact=CGBlog,cntnt01,detail,0&cntnt01articleid=2&cntnt01returnid=15" title="News 3 (avec image IMG_0541.jpg)">News 3 (avec image IMG_0541.jpg)</a>
</div>
<div class="CGBlogSummarySummary">
<p>Sommaire news 3</p> </div>
</div>
[Résolu] Mettre une image par défaut sur CGBlog -
jissey - 24/04/2015
je ne peux pas t'aider si tu me répond à côté!
Je n'ai pas CGBlog sous la main, c'est trop embrouillé pour moi, je sors.
[Résolu] Mettre une image par défaut sur CGBlog -
jissey - 24/04/2015
oups! Désolé, j'avais pas scrollé...
[Résolu] Mettre une image par défaut sur CGBlog -
Jean le Chauve - 24/04/2015
essaye {if !empty($entry->fields.Image->value)}
[Résolu] Mettre une image par défaut sur CGBlog -
jissey - 24/04/2015
Donc, si je ne me trompe pas :
Code :
[== Indéfini ==]
<div class="CGBlogSummaryField">
{if isset($entry->fields)}
{foreach from=$entry->fields item='field'}
<img src="{$entry->file_location}/{$field->value}" width='200' />
{/foreach}
{else}
<img src="uploads/NCleanBlue/news.jpg" width='200' />
{/if}
</div>
Essaie pour voir, si c'est bon, on doit pouvoir se passer du foreach.
[Résolu] Mettre une image par défaut sur CGBlog -
toniodesbois - 24/04/2015
.
[Résolu] Mettre une image par défaut sur CGBlog -
Jean le Chauve - 24/04/2015
Quand j'écris ceci {if !empty($entry->fields.Image->value)} Image est le nom du champs.
Donc {if !empty($entry->fields.photo->value)} dans ton cas.
[Résolu] Mettre une image par défaut sur CGBlog -
jissey - 24/04/2015
donc avec un mixte de JLC pour supprimer le foreach :
Code :
[== Indéfini ==]
<div class="CGBlogSummaryField">
{if isset($entry->fields)}
<img src="{$entry->file_location}/{$entry->fields.Image->value}" width='200' />
{else}
<img src="uploads/NCleanBlue/news.jpg" width='200' />
{/if}