Dev plugin : intégrer lien externe dans article avec métadonnées Open graph

Réduire
Ce sujet est fermé.
X
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] Dev plugin : intégrer lien externe dans article avec métadonnées Open graph

    Bonjour,

    Je cherche désespérément une extension qui me permettrai d'intégrer des liens dans des articles à la manière de FB (style Open Graph).
    Merci pour vos idées!
    Dernière édition par milantuvic à 17/05/2015, 18h49

  • #2
    Re : Affichage lien dans article Open graphe like

    Je ne comprends pas. Tu veux:
    - intégrer des publications FB dans un article ?
    - exporter tes articles sur FB ( voir plugin Phoca Open Graph pour ça ) ?
    Ariane - webmaster
    Informatologue - 10 années d'expériences et toujours débutante

    Commentaire


    • #3
      Re : Affichage lien dans article Open graphe like

      Salut,
      En fait, je voudrai partager des liens sur mon site joomla de la même manière que je le faisais sur FB.
      Actuellement, lorsque j'intègre un lien dans un article sur joomla, il n'apparaît que le lien (ou le texte de remplacement si je l'indique).
      Or, je voudrai que soit chargé à la place de ce lien "sec" des infos principales de la page de destination, une image...de la même manière que le fait le moteur Open Graph de FB.
      Merci!!
      Cliquez sur l'image pour l'afficher en taille normale

Nom : Capture d’écran 2015-05-02 à 05.48.06.jpg 
Affichages : 1 
Taille : 9,3 Ko 
ID : 1804240

      Commentaire


      • #4
        Re : Affichage lien dans article Open graphe like

        Avec un cck comme flexicontent c'est possible de configuré chaque champs
        Après c'est peut être surdimensionner pour ton besoins
        Société : http://www.com3elles.com
        Bénévole : http://www.flexicontent.org

        Commentaire


        • #5
          Re : Affichage lien dans article Open graphe like

          Merci pour la réponse. J'ai essayé Flexicontent, c'est un peu surdimensionnés en effet.
          Je suis toujours à la recherche d'une solution simple..;

          Commentaire


          • #6
            Re : Affichage lien dans article Open graphe like

            J'ai trouvé une piste ici https://zunostudios.com/blog/develop...graph-metadata
            Puis j'ai construit un plugins autour de ce bout de code...mais que je n'arrive pas à faire fonctionner!!!

            JOOMLA ver3.4/Installation OK/Config plugins OK mais pas de récupération des infos OpenGraph ni intégration dans article...
            Voici le code du plugins...merci pour votre aide!

            Fichier d'install XML / weblink.xml
            Code:
            <?xml version="1.0" encoding="utf-8"?>
            <extension version="3.2" type="plugin" group="content" method="upgrade">
            	<name>plg_content_weblink</name>
            	<author>EB</author>
            	<creationDate>May 2015</creationDate>
            	<copyright>Copyright (C) 2005 - 2013 Open Source Matters. All rights reserved.</copyright>
            	<license>GNU General Public License version 2 or later; see LICENSE.txt</license>
            	<authorEmail>admin@joomla.org</authorEmail>
            	<authorUrl>www.joomla.org</authorUrl>
            	<version>3.1.0</version>
            	<description>PLG_CONTENT_WEBLINK_XML_DESCRIPTION</description>
            	<files>
            		<filename plugin="weblink">weblink.php</filename>
            	</files>
            
            	<config>
            		<fields name="params">
            			<fieldset name="basic">
            			
            				<field name="cats"
            				type="category"
            				extension="com_content"
            				label="Categories"
            				description="Categories to include plugin"
            				multiple="true" />
            				
            			</fieldset>
             
            		</fields>
            	</config>
            </extension>

            Code du plugins / weblink.php :
            Code PHP:
            <?php
            /**
             * @copyright   Copyright (C) 2005 - 2015 Open Source Matters, Inc. All rights reserved.
             * @license     GNU General Public License version 2 or later; see LICENSE.txt
             */

            defined('_JEXEC') or die;


            class 
            plgContentWeblink extends JPlugin 
            {

                    public function 
            onContentBeforeSave($context, &$article$isNew)
                    {
                        
                        
            //Turn on all error reporting so we can see what's wrong
                        
            error_reporting(E_ALL);
                        
                        
            //Grab all the categories we've selected in our plugin
                        
            $cats $this->params->def('cats', array());
                        
                        
            //If the current article is in one of those categories
                        //Let's grab the Open Graph metadata
                        
            if( in_array($article->catid$cats) ){
                            
                            
            //JSON Decode the images and urls of the article
                            
            $images json_decode($article->images);
                            
            $urls json_decode($article->urls);
                            
                            
            //If either the are empty, let's get the tags
                            //OR if the introtext is empty, let's get the tags
                            
            if( !empty($urls->urla) && (empty($images->image_intro) || empty($article->introtext)) ){
                                
                                
            //Get Open Graph Meta Data
                                
            $data file_get_contents($urls->urla);
                                
            $dom = new DomDocument;
                                @
            $dom->loadHTML($data);
                                
                                
            $xpath = new DOMXPath($dom);
                                
            # query metatags with og prefix
                                
            $metas $xpath->query('//*/meta[starts-with(@property, \'og:\')]');
                            
                                
            $og = array();
                                
                                
            //Loop through all of the tags to add to $og variable
                                
            foreach($metas as $meta){
                                
                                    
            # get property name without og: prefix
                                    
            $property str_replace('og:'''$meta->getAttribute('property'));
                                    
                                    
            # get content
                                    
            $content $meta->getAttribute('content');
                                    
            $og[$property] = $content;
                                
                                }
                                
                                
            //If the image_intro is empty, and we have an Open Graph image
                                //Let's set the article's image_intro
                                
            if( empty($images->image_intro) && isset($og['image']) ){
                                    
            $images->image_intro $og['image'];
                                    
            $article->images json_encode($images);
                                }
                                
                                
            //If the introtext is empty and we have an Open Graph description
                                //Let's set the article's introtext—wrapping it with paragraph tags
                                
            if( empty($article->introtext) && isset($og['description']) ){
                                    
            $article->introtext '<p>'.$og['description'].'</p>';   
                                }
                                
                                return 
            true;
                                    
                            }
                                        
                        }
                    
                    }
            }
            Dernière édition par milantuvic à 07/05/2015, 18h00

            Commentaire


            • #7
              Re : Dev plugin : intégrer lien externe dans article avec métadonnées Open graph

              Ok j'ai trouvé
              Erreur apache :
              Code:
              PHP Warning:  Parameter 2 to plgContentWeblink::onContentBeforeSave() expected to be a reference
              Il fallait enlever & dans la ligne :
              Code PHP:
              public function onContentBeforeSave($context, &$article$isNew
              ça marche impec!

              Commentaire

              Annonce

              Réduire
              1 sur 2 < >

              C'est [Réglé] et on n'en parle plus ?

              A quoi ça sert ?
              La mention [Réglé] permet aux visiteurs d'identifier rapidement les messages qui ont trouvé une solution.

              Merci donc d'utiliser cette fonctionnalité afin de faciliter la navigation et la recherche d'informations de tous sur le forum.

              Si vous deviez oublier de porter cette mention, nous nous permettrons de le faire à votre place... mais seulement une fois
              Comment ajouter la mention [Réglé] à votre discussion ?
              1 - Aller sur votre discussion et éditer votre premier message :


              2 - Cliquer sur la liste déroulante Préfixe.

              3 - Choisir le préfixe [Réglé].


              4 - Et voilà… votre discussion est désormais identifiée comme réglée.

              2 sur 2 < >

              Assistance au forum - Outil de publication d'infos de votre site

              Compatibilité: PHP 4.1,PHP4, 5, 6DEV MySQL 3.2 - 5.5 MySQLi from 4.1 ( @ >=PHP 4.4.9)

              Support Version de Joomla! : | J!3.0 | J!2.5.xx | J!1.7.xx | J!1.6.xx | J1.5.xx | J!1.0.xx |

              Version française (FR) D'autres versions sont disponibles depuis la version originale de FPA

              UTILISER À VOS PROPRES RISQUES :
              L'exactitude et l'exhaustivité de ce script ainsi que la documentation ne sont pas garanties et aucune responsabilité ne sera acceptée pour tout dommage, questions ou confusion provoquée par l'utilisation de ce script.

              Problèmes connus :
              FPA n'est actuellement pas compatible avec des sites Joomla qui ont eu leur fichier configuration.php déplacé en dehors du répertoire public_html.

              Installation :

              1. Téléchargez l'archive souhaitée : http://afuj.github.io/FPA/

              Archive zip : https://github.com/AFUJ/FPA/zipball/master

              2. Décompressez le fichier de package téléchargé sur votre propre ordinateur (à l'aide de WinZip ou d'un outil de décompression natif).

              3. Lisez le fichier LISEZMOI inclus pour toutes les notes de versions spécifiques.

              4. LIRE le fichier de documentation inclus pour obtenir des instructions d'utilisation détaillées.

              5. Téléchargez le script fpa-fr.php à la racine de votre site Joomla!. C'est l'endroit que vous avez installé Joomla et ce n'est pas la racine principale de votre serveur. Voir les exemples ci-dessous.

              6. Exécutez le script via votre navigateur en tapant: http:// www. votresite .com/ fpa-fr.php
              et remplacer www. votresite .com par votre nom de domaine


              Exemples:
              Joomla! est installé dans votre répertoire web et vous avez installé la version française du fichier FPA:
              Télécharger le script fpa-fr.php dans: /public_html/
              Pour executer le script: http://www..com/fpa-fr.php

              Joomla! est installé dans un sous-répertoire nommé "cms" et vous avez installé la version française du fichier FPA:
              Télécharger le script fpa-fr.php dans: /public_html/cms/
              Pour executer le script: http://www..com/cms/fpa-fr.php

              En raison de la nature très sensible de l'information affichée par le script FPA, il doit être retiré immédiatement du serveur après son utilisation.

              Pour supprimer le script de votre site, utilisez le lien de script de suppression fourni en haut de la page du script. Si le lien de suppression échoue pour supprimer le script, utilisez votre programme FTP pour le supprimer manuellement ou changer le nom une fois que le script a généré les données du site et le message publié sur le forum. Si le script est toujours présent sur le site, il peut être utilisé pour recueillir suffisamment d'informations pour pirater votre site. Le retrait du script empêche des étrangers de l'utiliser pour jeter un oeil à la façon dont votre site est structuré et de détecter les défauts qui peuvent être utilisé à vos dépends.
              Voir plus
              Voir moins

              Partenaire de l'association

              Réduire

              Hébergeur Web PlanetHoster
              Travaille ...
              X