Skip to main content Help Control Panel

 

support «   Besoin d'aide «  

Encapsuler une page web dans son serveur YACS.

PreviousNextIndex

Est-il possible de "wrapper", dans le sens d'encapsuler, une page web externe dans son site YACS?

WorkflowSupport request
StatusProblem has been recorded
  • Submission on Oct. 1 2007 by LeToto
OwnerBelmond
Progress0%

    Bonjour.

    J'aimerais savoir si c'est possible d'encapsuler, d'intégrer une page web (un site web si on veut) dans son "yacssite".

    j'aimerais par exemple pouvoir créer une section qui "pointerait" sur un serveur de gestion de messagerie tel que Horde IMP ou Squirrel mail. Celà aurait l'avantage de permettre la gestion "interne" de la messagerie pour les personnes inscrites.

    Merci.

    PS: Si YACS permet de gérer des comptes pop, merci de m'indiquer comment faire, car j'ai cherché pareille fonction en vain.

Comments

Bernard - on Oct. 2 2007
YACS gère des comptes de messagerie, mais pour son propre usage, par exemple pour envoyer des messages d'alerte, ou pour transformer des messages reçus en pages web. Donc pas de fonction webmail à ce jour.

Pour l'inclusion de pages externes l'une des options est d'utiliser la balise IFRAME et de la faire pointer sur l'adresse de votre choix. Ceci requière d'être associé, pour avoir le droit de taper une balise HTML dans une page.
LeToto - on Oct. 3 2007

    Bonjour.

    Merci pour ta réponse, Bernard.

    J'ai pu voir comment fonctionne la balise grâce à cet article : Wrapper (iFrame-Content): Embedding content.

    Pour que ça fonctionne, j'ai du fixer une hauteur de la page wrappée, le paramètre height:100% tronquant la page (en mettant le paramètre scrolling à "yes" ou "auto", il affichait les ascenseurs pour faire défiler la page, ce qui n'était pas à mon goût).

    J'aimerais savoir comment  faire pour :

  • permettre une mise en page automatique en hauteur


  • supprimer les boîtes extra sur le côté, ainsi que les menus en haut de la page (pas la barre de menu du site)

    Pour apperçu du résultat, consulter : kampux .

    Merci.

 


LeToto - on Nov. 26 2007

    Bonjour.

    Mon souci actuel est de parvenir à maintenir le code ainsi édité à partir de la source.

    En effet, une fois le bout de code inséré dans le code source de la page, si on cherche à mettre à jour l'article, le code "disparaît" et la page ainsi wrappée n'est plus.

    Que faire?


Moi-meme - on Dec. 2 2007

Bonjour,

sans te donner d'indication technique précise malheureusement, je te livre cet article dans lequel il en est question (de l'intégration d'applications dans yacs). Je me suis aussi posé la question il y a un an et demi.




Je ne m'attarde pas, j'ai mon yacs en double file...

Yacs on my blog | Suivez le blog Yacs | Yacs Showroom | Plugin Firefox de recherche dans Yetanoz |
LeToto - on Mar. 10 2008

    Jusqu'à ce jour, je n'ai toujours pas obtenu de solution, et aimerais vraiment pouvoir wrapper une page en éliminant les barres de côté, mais en conservant juste la barre de menu en haut.


Bernard - on Mar. 12 2008
LeToto: Le mieux dans ce cas, c'est de préparer un gabarit adapté, en copiant le fichier template.php du skin utilisé, par exemple en template_simple.php. Puis modifier le fichier template_simple.php pour retirer l'appel des fonctions qui ajoutent les boîtes de côté, Page::extra_panel() et Page::side(). Ensuite, pour activer ce gabarit dans la page-qui-encapsule-autre-chose, ajouter l'option variant_simple, ceci devrait suffire. Bien sûr, si un autre nom est choisi, comme par exemple template_truc.php, alors il faudrait prendre l'option variant_truc, etc.
LeToto - on Mar. 15 2008

    Ok.

    Merci pour les précisions, je vais les tester.

    @+


LeToto - on Mar. 23 2008

    Bernard : Je ne parviens pas à voir comment activer l'option variant.

    J'aimerais par exemple utiliser le skin skeleton sans la barre de menu de gauche, ceci pour la section conçernée. Le but c'est qu'à l'accès de la page via les onglets de menu du panneau de menu en haut, il n'y ait pas de sidebar.

    J'ai pour celà, comme tu l'as indiqué, modifié l'appel à la fonction Page::Side dans un template_simple.php, et ai passé le paramètre à FALSE.

    Alors soit je ne sais pas où mettre le paramètre variant, soit j'ai mal modifié...

    Qu'est-ce qui cloche?

   


Agnès - on Mar. 23 2008
LeToto : À moins d'avoir mal compris et la question et la réponse, voici ce que je ferai à ta place :
  • création d'une section dédiée à cette page contenant une autre page encapsulée.
  • c'est dans les options de la section que ça se passe : options pour la page d'index > options de rendu : écrire "variant_simple" si ton template remanié s'appelle "template_simple.php". Enregistrer la section.
Là tu as deux options : soit tu as besoin d'une seule page, et tu mets ton code dans la description même de la section, soit tu crées une page dans cette section avec ton code - et donc tu peux aussi en créer d'autres, des pages, toutes basées sur ton template_simple.php.

Pour le code, tu dois obligatoirement être associé pour avoir le droit d'utiliser le html et autres codes. Un membre qui édite cette page annule immédiatement tout code qu'il n'aurait pas le droit, en temps normal, d'envoyer.


Agnès
Il n'y a pas de problèmes, que des solutions.
LeToto - on Mar. 26 2008

Agnès: J'ai fait comme tu l'as dit, (ou presque), mais ça ne marche pas.

    J'ai créé une section dont le contenu est une page encapsulée (pas une page de la section, car le but est d'afficher la page encapsulée directement par l'onglet de menu de navigation).

    Le template modifié est template_simple.php, l'option pour le contenu de la section a bien été mis à variant_simple. Le template a été modifié comme indiqué dans mon dernier post.

    Merci.

    @+


Moi-meme - on Apr. 15 2008

Si tu veux que ce soit l'index de la section lui-même qui embarque ta page à afficher, ce n'est pas dans les options de contenu que tu dois renseigner variant_simple mais dans options pour la page d'index > options de rendu > [ ... ]

Pour récapituler :

  1. copier template.php de ton skin, le renommer template_tontien.php
  2. ouvrir template_tontien.php et supprimer Page::extra_panel();. Eventuellement supprimer aussi Page::side(); mais là tu n'auras même plus de menu latéral. Enregistrer
  3. Ouvrir une section ou aller dans les modification de l'une et renseigner variant_tontien dans les options de rendu pour la page d'index.

Ensuite tu mets ton iframe embarqué dans le corps de la section et tu devrais avoir toute la place que tu souhaites Si tu n'aimes pas le scroll tu renseignes dans ton iframe scrolling="no"

Ca risque de finir dans la doc cette histoire :D

-----

Plugin Firefox : Search (new)  
Nouvelles fonctions suggérées <- centralisation perso
l'atelier ordinaire des innovations




Je ne m'attarde pas, j'ai mon yacs en double file...

Yacs on my blog | Suivez le blog Yacs | Yacs Showroom | Plugin Firefox de recherche dans Yetanoz |
LeToto - on Apr. 15 2008

    C'est bon, ça fonctionne.

    Néanmoins, je ne parviens ps à exploiter l'espace des colonnes ainsi libérées (J'utilise un skin à 3 colonnes) : le contenu des colonnes a bien disparu, mais c'est comme si elles existaient encore.

    Quel paramètre modifier dans le templat pour pouvoir utilise ces espaces?

    Merci.


Lasares - on Apr. 16 2008
À mon avis, après le template, il te faudra te pencher sur la feuille de style. Consulte ton_skin.css et cherche les règles qui utilisent #main_panel , #side_panel et #extra_panel. C'est là que tu trouveras les largeurs, paramétrées avec soit width , soit margin.

Mais auparavant, fais un essai : au lieu de fixer son paramètre à FALSE, supprime carrément la fonction Page::Side . Si ça fonctionne (ce dont je doute), tu t'épargnes du travail.

Note qu'il peut être difficile de paramétrer les CSS pour obtenir ce que tu veux (telle largeur dans un cas, telle autre dans un autre cas).

Une solution alternative à ce qui t'a été proposé ci-dessus, qui faisait appel à variant , consisterait à utiliser carrément un autre skin pour ta section. Par exemple tu dérives un skin complet nommé mail_skin et tu peux alors modifier à la fois son template.php et mail_skin.css à ta convenance, sans affecter le reste du site.

Pour activer ce style sur ta section, tu utilises skin_mail_skin là où tu as inscrit variant_tontien . C'est plus lourd mais plus flexible.


On a si peu d'idée de ce qui est possible...
Moi-meme - on Apr. 16 2008
" Par exemple tu dérives un skin complet nommé mail_skin et tu peux alors modifier à la fois son template.php et mail_skin.css à ta convenance, sans affecter le reste du site "

Pourquoi un skin complet ? Il suffirait de créer variant_tontien.php , puis de copier tonskin.css en le renommant variant_tontin.css et de faire pointer le template php sur cette feuille de style remodelée au niveau des largeurs voulues.

Le reste, images, icônes et compagnies, sont les mêmes.




Je ne m'attarde pas, j'ai mon yacs en double file...

Yacs on my blog | Suivez le blog Yacs | Yacs Showroom | Plugin Firefox de recherche dans Yetanoz |
Lasares - on Apr. 17 2008
Bien oui ! Moi-même a tout à fait raison. Je n'y avais jamais pensé !

Merci, Moi-même, mes sites viennent de s'alléger enfin, les prochains du moins).


On a si peu d'idée de ce qui est possible...
Moi-meme - on Apr. 18 2008

Pour tout te dire, j'ai compris et essayé tout ça en local grâce à la bafouille de Bernard. Preuve, il en faut, que l'intervention d'un développeur qui connaît bien le code permet de progresser à pas de géant. Parfois, j'aimerais en lire plus, car ça permet de devenir soi-même un relai futur pour les demandes d'autrui.

Je vais en profiter pour faire une fiche dans la doc.

-----

Plugin Firefox : Search (new)  
Nouvelles fonctions suggérées <- centralisation perso
l'atelier ordinaire des innovations




Je ne m'attarde pas, j'ai mon yacs en double file...

Yacs on my blog | Suivez le blog Yacs | Yacs Showroom | Plugin Firefox de recherche dans Yetanoz |
Moi-meme - on Apr. 24 2008

Voilà : Embarquer une page externe dans YACs Si vous avez des suggestions ...

-----

Plugin Firefox : Search (new)  
Nouvelles fonctions suggérées <- centralisation perso
l'atelier ordinaire des innovations




Je ne m'attarde pas, j'ai mon yacs en double file...

Yacs on my blog | Suivez le blog Yacs | Yacs Showroom | Plugin Firefox de recherche dans Yetanoz |
Oxalagu - on Apr. 25 2008
A voir aussi: "Wrapper" (iFrame) Overlay
Moi-meme - on Apr. 30 2008

LeToto : un exemple : http://benejim.info/sections/v...ecridelamouette avec un template dédié et une feuille de style. Le reste colle avec le skin original.

Dans certains skin il n'y a pas de largeur prédéfinie (comme dans digital), tout est fait avec les marges des #extra_panel et compagnie.

On peut définir quand même une marge en largeur à #main_panel, plus ou moins de la valeur de l'iframe minimum (width:xxxpx;). Pas sûr que ça passe correctement sur tous les navigateurs.

-----

Plugin Firefox : Search (new)  
Nouvelles fonctions suggérées <- centralisation perso
l'atelier ordinaire des innovations




Je ne m'attarde pas, j'ai mon yacs en double file...

Yacs on my blog | Suivez le blog Yacs | Yacs Showroom | Plugin Firefox de recherche dans Yetanoz |
LeToto - on May 1 2008

    Merci pour toutes ces réactions, je vais les explorer.


Belmond - on Feb. 25 2009

Bonjour.

Afin de pouvoir exploiter l'esppace ainsi laissé les panneaux de côté, j'ai dû suivre un peu un mix des solutions proposées plus haut, chacune ne fonctionnant pas dans mon cas seule.

  • Créer/dériver un nouveau template par Copier/Coller celui qu'on utilise, et l'appeller template_nouveau.php par exemple
  • Copier/Coller le fichier CSS du skin correspondant pour en créer un nouveau sur lequel on va porter les modifications voulues, et le nommer (nom_du_skin est le nom du skin utilisé, et qui correspond au fichier nom_du_skin.css) nom_du_skin_nouveau.css par exemple.
  • Afin de ne pas dénaturer la structure du skin de base utilisé, modifier juste les largeurs de colonnes de side_panel et extra_panel en les mettant à des valeurs nulles par exemple, puis adapter ainsi la taille de main_panel afin qu'elle récupère l'espace ainsi libéré.
  • Aller dans template_nouveau.php et chercher la ligne commençant par
    echo "\t".'<link rel="stylesheet"
    et lier le fichier CSS nom_du_skin_nouveau.css en indiquant son nom
  • Vérifier qu'il n'y a pas d'erreur

ça devrait marcher.

@+


PreviousNextIndex