Construire lien partenaire amazon

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par Bacteries, 25 Octobre 2008.

  1. Bacteries
    Bacteries WRInaute passionné
    Inscrit:
    27 Mai 2004
    Messages:
    1 253
    J'aime reçus:
    0
    Petite question savoir si vous avez un lien sympa. Je cherche une méthode qui prenne en entrée un lien amazon (fr) et qui retourne ce lien avec mon ID partenaire.
    Et si possible quand c'est une page d'un produit direct me créé le lien produit direct (qui rapporte plus).

    J'ai déjà une méthode qui prends un lien et me le retourne avec mon tagId partenaire mais j'aimerais qqchose de plus poussé.

    Si quelqu'un à ça sous le coude je prends! :)

    Merci.
     
  2. Bacteries
    Bacteries WRInaute passionné
    Inscrit:
    27 Mai 2004
    Messages:
    1 253
    J'aime reçus:
    0
    N'ayant rien trouvé j'ai fait une petite classe, première version tout chaude donc à tester plus en profondeur. Hésitez pas à faire des retours.
    Ce genre de classe peut être ajoutée à un forum pour remplacer les liens postés par les utilisateurs.

    Niveau cas : j'ai testé sur plusieurs pages mais tout ce qui pourrait être page https ou des cas auxquels je n'ai pas pensé ne sont pas géré.

    Code:
    LienPartenaire{
    	
    	public static $className = 'LienPartenaire';	
    	
    	public static $amazonId = 'metalorgie-21';
    
           public static $urlSite = 'URL_DE_VOTRE_SITE';
    	
    	
    	/**
    	 * Remplace les liens vers des partenaire par le lien avec ID partenaire
    	 *
    	 * @param string $p_text
    	 * @param boolean $p_amazon	 
    	 */
    	public static function putPartenerLink($p_text, $p_amazon = true) {
    		$out = array();
    		$motif='#<a href="(.*?)"(.*?)>#is';
    		preg_match_all($motif, $p_text, $out, PREG_PATTERN_ORDER);		
    		foreach ($out[1] as $link) {			
    			if (!utils_String::startswith($link,self::$urlSite)) {				
    				// AMAZON			
    	  			if (utils_String::startswith($link,"http://www.amazon.fr") ) {	  				
    	  				$partnerLink = self::getAmazonPartnerLink($link);	  					  				
    	  				$p_text = str_replace($link,$partnerLink,$p_text);	  				
    	  			} 
    			}			
    		}
    		return $p_text;
    	}
    	
    	
    	/**
    	 * Retourne un lien amazon avec l'ID partenaire ajouté
    	 *
    	 * @param string $p_link
    	 * @return string
    	 */
    	public static function getAmazonPartnerLink($p_link) {
    		$retour = $p_link;
    		// ID partenaire déjà présent?
    		if (strpos($p_link, self::$amazonId) === false) {				
    			// Lien produit ou autre?
    			$posSep = strpos($p_link, "/dp/");
    			if ($posSep !== false) {				
    				// Récupère ID du produit
    				$asin = substr($p_link,$posSep + 4);				
    				$retour = 'http://www.amazon.fr/gp/product/' . $asin . '?ie=UTF8&tag=' . self::$amazonId;
    			} else {				
    				$retour = 'http://www.amazon.fr/gp/redirect.html?ie=UTF8&location=' . urlencode($p_link) . '&tag=' . self::$amazonId;
    			}			
    		}
    		return $retour;
    	}
    }
    
    Et le bout de code utilisé pour les startwith :
    Code:
    class utils_String {
    			
    	public static function startswith($hay, $needle) {
    		return $needle === $hay or strpos($hay, $needle) === 0;
    	}
    
    	public static function endswith($hay, $needle) {
    	    return $needle === $hay or strpos(strrev($hay), strrev($needle)) === 0;
    	}
    }
     
Chargement...
Similar Threads - Construire lien partenaire Forum Date
Construire Lexique URL unique par définition sous Wordpress Problèmes de référencement spécifiques à vos sites 17 Novembre 2012
Ces gens nous proposent de construire notre site pour 3500€ ou 15000€ . Développement d'un site Web ou d'une appli mobile 20 Janvier 2012
construire une liste déroulante en cascade Développement d'un site Web ou d'une appli mobile 14 Décembre 2010
Construire un site dynamique (php) avec des URLs propres? Administration d'un site Web 26 Février 2009
Comment reconstruire une date à partir d'un int ? Administration d'un site Web 20 Août 2008
Je dois construire un nouveau site web Développement d'un site Web ou d'une appli mobile 2 Avril 2008
Construire un MCD Administration d'un site Web 5 Juin 2007
reconstruire l'adresse d'un site web URL Rewriting et .htaccess 26 Mars 2007
qui peut m'aider à construire mon forum ? Débuter en référencement 4 Octobre 2005
Proximité d'un lien à coté d'un lien spam, influence? Débuter en référencement 21 Novembre 2022
Search Console Temps de prise en compte par Google de la disparition de liens Netlinking, backlinks, liens et redirections 9 Novembre 2022
WordPress SEO et lien vers fichiers médias Problèmes de référencement spécifiques à vos sites 8 Novembre 2022
Liens de références Netlinking, backlinks, liens et redirections 7 Novembre 2022
Lien vers le formulaire de contact Débuter en référencement 1 Novembre 2022
Dilution du jus de lien : combien de lien maximum par page ? Netlinking, backlinks, liens et redirections 26 Octobre 2022
Intégrer un lien interne vers le même article ? Rédaction web et référencement 26 Octobre 2022
Comment résoudre un lien non visible ? Développement d'un site Web ou d'une appli mobile 15 Octobre 2022
Lien d'affiliation autorisé sur le bouton d'action d'une page FB ? Facebook 8 Octobre 2022
Lien sur une image, même poids SEO que pour un lien sur une ancre de texte ? Rédaction web et référencement 24 Septembre 2022
Avis client et SEO Débuter en référencement 6 Septembre 2022