[Résolu] transfert d'un site CMSms 1.9.2 OVH vers 1.11.9 Win2008 privé -
bess - 21/01/2014
http://apidoc.cmsmadesimple.org : tu as toute la documentation php au sens premier du nom.
malheureusement ce n'est pas une documentation utilisateur, c'est une doc pour les développeurs.
[Résolu] transfert d'un site CMSms 1.9.2 OVH vers 1.11.9 Win2008 privé -
jce76350 - 22/01/2014
Citation :Cela me donne le nom du fichier image a mettre en background du header
si c'est pour afficher une image dans le header de la page
il te suffit par exemple de mettre dans la page
- Options / Balise Smarty spécifiques pour cette page :{assign var="show_ban" value="imagex"}
et dans la gabarit de tes pages
{if $show_ban == "imagex"}
<div id="headerimagex">
{elseif $show_ban =="imagex1"}
<div id="headerimagex1">
{else}
<div id="header">
{/if}
et de prévoir dans la feuille de style différent div#headermagex ,div#headermagex1...
avec
background:url(uploads/images/ton_imageheader.jpg) ....
[Résolu] transfert d'un site CMSms 1.9.2 OVH vers 1.11.9 Win2008 privé -
olafarge - 22/01/2014
Merci pour le lien, je suis développeur mais pas en php comme j'ai déjà indiqué.
En attendant je suis arrivé à refaire la balise utilisateur headerbackground précédement indiqué, en remplaçant par ceci et le résultat est identique à l'original:
$img_path = cmsms()->config['image_uploads_url'].'/';
$gCms = cmsms();
$contentops = $gCms->GetContentOperations();
$content_obj = $contentops->GetContentObject();
if (!$content_obj)
{
echo $img_path.'rub01.jpg';
}
else
{
$img = $content_obj->GetPropertyValue('image');
if($img>=0) {
echo $img_path.$img;
}
else {
//image par défaut
echo $img_path.'rub01.jpg';
}
}
[Résolu] transfert d'un site CMSms 1.9.2 OVH vers 1.11.9 Win2008 privé -
Jean le Chauve - 22/01/2014
Bonjour,
Comme le dit notre ami Jce, le plus important est de connaître le but de l'udt qui pose problème pour tenter de t'aider à le résoudre sans partir dans tous les sens.
Pour ma part, en lisant le code de l'udt, il me semble (99%) qu'il sert à récupérer le nom de l'image uploadée dans le champs "image" de l'administration de la page en cours d'utilisation et de l'afficher si l'image existe sinon d'en appeler une par défaut.
J'ai explicité la technique pour ce faire ici :
http://www.cmsmadesimple.fr/forum/viewtopic.php?id=2402
Aussi, il te suffit de remplacer l'appel de l'udt par ce code dans ton gabarit :
Code :
{capture name='image'}{page_image}{/capture}
{if ($smarty.capture.image ne '')}
<img src="uploads/images/{page_image}" alt="{page_image}" class="taClasse" />
{else}<img src="uploads/images/rub01.jpg" alt="rub01.jpg" class="taClasse" />
{/if}
[Résolu] transfert d'un site CMSms 1.9.2 OVH vers 1.11.9 Win2008 privé -
olafarge - 22/01/2014
Jce
En fait dans chaque page une variable image est spécifié, contenant l'image ruban à afficher, c'est stocké dans la base de données dans la table cms_content_props sous le nom image, donc je suppose variable utilisateur que je n'ai pas trouvé dans l'édition de la page (enfin pour le moment).
Le principal est que j'ai pu réactiver la balise, après j'en convient que ne n'est peut être pas la meilleur façon de concevoir un site, mais là je ne fait que réactiver un site tel qu'il est à l'origine. Plus tard je verrais de le refaire si j'ai la prise en charge financière.
[Résolu] transfert d'un site CMSms 1.9.2 OVH vers 1.11.9 Win2008 privé -
Jean le Chauve - 22/01/2014
Je pense que ton nouveau code n'est pas correct et amènera des bugs :
$content_obj = $contentops->GetContentObject();
if (!$content_obj)
$content_obj peut représenter le nom du fichier image, mais également n'importe quel autre objet.
[Résolu] transfert d'un site CMSms 1.9.2 OVH vers 1.11.9 Win2008 privé -
Jean le Chauve - 22/01/2014
Je vois que le code html correspondant est celui-ci :
<div id="header" style=" background:url('{headerbackground}') no-repeat top left;">
à remplacer par :
{capture name='image'}{page_image}{/capture}
{if ($smarty.capture.image ne '')}
<div id="header" style="background:url('uploads/images/{page_image}') no-repeat top left;">
{else}<div id="header" style="background:url('uploads/images/rub01.jpg') no-repeat top left;">
{/if}
[Résolu] transfert d'un site CMSms 1.9.2 OVH vers 1.11.9 Win2008 privé -
olafarge - 22/01/2014
merci jean... je ferais le test cette après midi.
En attendant j'ai modifié l'ancienne balise utilisateur pour le titre , avant en 1.9.x:
global $gCms, $smarty;
$hm =& $gCms->GetHierarchyManager();
$pageinfo =& $gCms->variables['pageinfo'];
$pageAlias = $pageinfo->content_alias;
$curpage =& $hm->getNodeByAlias($pageAlias);
$curpagecontent =& $curpage->GetContent();
if ($curpagecontent->HasChildren()) {
$smarty->assign('content_id', $pageinfo->content_id);
$smarty->assign('content_alias', $pageinfo->content_alias);
$smarty->assign('hierarchy', $pageinfo->hierarchy);
$smarty->assign('hierarchy_path', $pageinfo->hierarchy_path);
}
if ($pageinfo->content_titleattribute !="")
{echo $pageinfo->content_titleattribute;}
else
{echo $pageinfo->content_title;}
et l'appel dans le gabarit était:
{if isset($detail_title)}
<title>{sitename} - {$detail_title}</title>
{else}
<title>{supertitle}</title>
{/if}
Maintenant:
$gCms = cmsms();
$contentops = $gCms->GetContentOperations();
$content_obj = $contentops->GetContentObject();
if (!$content_obj)
{
echo '';
}
else
{
$titre = $content_obj ->Name();
echo $titre;
}
et dans le gabarit j'ai maintenant ceci:
{if isset($detail_title)}
<title>{sitename} - {$detail_title}</title>
{else}
<title>{sitename} - {supertitle}</title>
{/if}
Le but étant juste d'avoir le titre du contenu qui s'affiche avec le nom du site dans la barre du navigateur, il y a peut être plus simple, mais comme je l'ai dit, je cherche juste pour le moment fonction par fonction a faire refonctionner le site pour présentation et mutation du dns, après je reprendrais tout ceci à plat sur un sous domaine et une installation vierge et base de données vierge.
[Résolu] transfert d'un site CMSms 1.9.2 OVH vers 1.11.9 Win2008 privé -
Jean le Chauve - 22/01/2014
Jean le Chauve a écrit :Je pense que ton nouveau code n'est pas correct et amènera des bugs :
$content_obj = $contentops->GetContentObject();
if (!$content_obj)
$content_obj peut représenter le nom du fichier image, mais également n'importe quel autre objet.
Idem pour cette udt...
Pour ma part, il semble que ton problème principal, c'est à dire le transfert du site sur le serveur windows, a été résolu.
Il serait bon que tu clôtures ce post avec un [Résolu] dans son titre.
Tu devrais ouvrir un nouveau post dans le
topic "modules, Tags" pour tes problèmes d'udt.
[Résolu] transfert d'un site CMSms 1.9.2 OVH vers 1.11.9 Win2008 privé -
olafarge - 22/01/2014
ok, j'ai créé le sujet ici:
http://www.cmsmadesimple.fr/forum/viewtopic.php?id=5462