WordPress BuddyPress et Deezer

  • WordPress :4.9.8
  • Statut : hors support
Affichage de 1 message (sur 1 au total)
  • Auteur
    Messages
  • #2206311
    franck
    Participant
    Initié WordPress
    22 contributions

    Bonjour,
    Ma configuration WP actuelle :

    • – Version de WordPress : 4.9.8
    • – Version de PHP/MySQL : 5.6.37 / 5.5.60
    • – Thème utilisé : one-page-express Child
    • – Thème URI : http://www.zikadonf.fr/
    • – Extensions en place : Better WordPress Minify (1.3.3), BuddyDrive (2.1.1), buddydrive-player (1.0), BuddyPress (3.1.0), BuddyPress Edit Activity (1.0.9), BuddyPress Group Email Subscription (3.8.2), BuddyPress Like (0.3.0), embed bpactivity media image and video (1.0), Forum_wordpress_fr (4.1), MediaPress (1.4.1), One Page Express Companion (1.3.1), Rendez Vous (1.4.3), Responsive Lightbox & Gallery (2.0.5), Smush (2.8.1), TDLC Birthdays (1.0.0), The Events Calendar (4.6.22.1), WordPress All In One Admin Bar (1.1), WP-Optimize (2.2.4), WP Super Cache (1.6.4)
    • – Adresse du site : http://www.zikadonf.fr/
    • – Nom de l’hébergeur : Apache

    Pour mon travail j’utilise beaucoup deezer (échange de lien et d’écoute sur ordi), avec wordpress pas de plugin mais deezer propose une exportation j’ai donc codé avec l’aide (à l’époque) de bp-fr.fr site dédié à buddypress france. bref le site est fermé et tout notre partage avec. Ne sachant plus ou poster ou bien poser mes questions je reviens à la source! Pas de buddypress sans wordpress donc me re-voilà 🙂

     

    Donc mon code fonctionne dans le plugin embed bpactivity media image and video, je ne suis pas codeur, je fais ça pour me marrer cependant le plugin tourne correctement et Deezer est méchant puisqu’il met à jour son exportation donc ce qui suit est plein d’historique et merci de ne pas rire 🙂

    ###################################
    ####   DEEZER HTTP://  ############
    ###################################
    wp_embed_register_handler( 'album_deezer', '#http://www.deezer.com/album/([\d-]+)(.*?)#i', 'wp_embed_handler_album_deezer' ); 
    // on declare le lien deezer
    
    	function wp_embed_handler_album_deezer( $matches, $attr, $url, $rawattr ) { 
    	// on ouvre la fonction de dégagement de l'ID via url
    		$url = str_replace("http://www.deezer.com/album/", "", "$url"); // l'ID est ce qui reste
    			if ( preg_match( "/\?/", $url, $matches ) )	{$url = substr($url, 0, strpos($url, "?"));  	}// l'ID est ce qui reste
    			$embed = sprintf(		
    
    				'<iframe scrolling="no" frameborder="0" allowTransparency="true" src="http://www.deezer.com/fr/plugins/player?autoplay=false&playlist=true&width=500&height=240&scover=true&type=album&id='.$url.'&title=&app_id=undefined" width="500" height="240"></iframe>',
    			esc_attr($matches[0])
    			);
    		$embed = apply_filters( 'oembed_deezer', $embed, $matches, $attr, $url, $rawattr );
    	return apply_filters( 'oembed_result_deezer', $embed, $url, '' );
    	}	
    
    wp_embed_register_handler( 'deezer', '#http://www.deezer.com/track/([\d-]+)(.*?)#i', 'wp_embed_handler_track_deezer' ); 
    // on declare le lien deezer
    
    	function wp_embed_handler_track_deezer( $matches, $attr, $url, $rawattr ) { 
    	// on ouvre la fonction de dégagement de l'ID via url
    		$url = str_replace("http://www.deezer.com/track/", "", "$url"); // l'ID est ce qui reste
    			if ( preg_match( "/\?/", $url, $matches ) )	{$url = substr($url, 0, strpos($url, "?"));  	}// l'ID est ce qui reste
    
    			$embed = sprintf(		
    
    				'<iframe scrolling="no" frameborder="0" allowTransparency="true" src="http://www.deezer.com/plugins/player?autoplay=false&playlist=false&width=400&height=80&cover=false&type=tracks&id='.$url.'&title=&app_id=undefined" width="400" height="80"></iframe>	',
    			esc_attr($matches[0])
    			);
    		$embed = apply_filters( 'oembed_deezer', $embed, $matches, $attr, $url, $rawattr );
    	return apply_filters( 'oembed_result_deezer', $embed, $url, '' );
    	}	
    
    wp_embed_register_handler( 'playlist_deezer', '#http://www.deezer.com/playlist/([\d-]+)(.*?)#i', 'wp_embed_handler_playlist_track_deezer' ); 
    // on declare le lien deezer
    
    	function wp_embed_handler_playlist_track_deezer( $matches, $attr, $url, $rawattr ) { 
    	// on ouvre la fonction de dégagement de l'ID via url
    		$url = str_replace("http://www.deezer.com/playlist/", "", "$url"); // l'ID est ce qui reste
    			if ( preg_match( "/\?/", $url, $matches ) )	{$url = substr($url, 0, strpos($url, "?"));  	}// l'ID est ce qui reste
    
    			$embed = sprintf(		
    
    				'<iframe scrolling="no" frameborder="0" allowTransparency="true" src="http://www.deezer.com/plugins/player?autoplay=false&playlist=true&width=500&height=242&cover=true&type=playlist&id='.$url.'&title=" width="500" height="242"></iframe>	',
    			esc_attr($matches[0])
    			);
    		$embed = apply_filters( 'oembed_deezer', $embed, $matches, $attr, $url, $rawattr );
    	return apply_filters( 'oembed_result_deezer', $embed, $url, '' );
    	}
    ###################################
    ####   DEEZER HTTPs:// ############
    ###################################
    
    wp_embed_register_handler( 'album_deezers', '#https://www.deezer.com/album/([\d-]+)(.*?)#i', 'wp_embed_handler_album_deezers' ); 
    // on declare le lien deezer
    
    	function wp_embed_handler_album_deezers( $matches, $attr, $url, $rawattr ) { 
    	// on ouvre la fonction de dégagement de l'ID via url
    		$url = str_replace("https://www.deezer.com/album/", "", "$url"); // l'ID est ce qui reste
    			if ( preg_match( "/\?/", $url, $matches ) )	{$url = substr($url, 0, strpos($url, "?"));  	}// l'ID est ce qui reste
    			$embed = sprintf(		
    
    				'<iframe scrolling="no" frameborder="0" allowTransparency="true" src="http://www.deezer.com/fr/plugins/player?autoplay=false&playlist=true&width=500&height=240&scover=true&type=album&id='.$url.'&title=&app_id=undefined" width="500" height="240"></iframe>',
    			esc_attr($matches[0])
    			);
    		$embed = apply_filters( 'oembed_deezer', $embed, $matches, $attr, $url, $rawattr );
    	return apply_filters( 'oembed_result_deezer', $embed, $url, '' );
    	}	
    
    wp_embed_register_handler( 'deezers', '#https://www.deezer.com/track/([\d-]+)(.*?)#i', 'wp_embed_handler_track_deezers' ); 
    // on declare le lien deezer
    
    	function wp_embed_handler_track_deezers( $matches, $attr, $url, $rawattr ) { 
    	// on ouvre la fonction de dégagement de l'ID via url
    		$url = str_replace("https://www.deezer.com/track/", "", "$url"); // l'ID est ce qui reste
    			if ( preg_match( "/\?/", $url, $matches ) )	{$url = substr($url, 0, strpos($url, "?"));  	}// l'ID est ce qui reste
    
    			$embed = sprintf(		
    
    				'<iframe scrolling="no" frameborder="0" allowTransparency="true" src="http://www.deezer.com/plugins/player?autoplay=false&playlist=false&width=400&height=80&cover=false&type=tracks&id='.$url.'&title=&app_id=undefined" width="400" height="80"></iframe>	',
    			esc_attr($matches[0])
    			);
    		$embed = apply_filters( 'oembed_deezer', $embed, $matches, $attr, $url, $rawattr );
    	return apply_filters( 'oembed_result_deezer', $embed, $url, '' );
    	}	
    
    wp_embed_register_handler( 'playlist_deezers', '#https://www.deezer.com/playlist/([\d-]+)(.*?)#i', 'wp_embed_handler_playlist_track_deezers' ); 
    // on declare le lien deezer
    
    	function wp_embed_handler_playlist_track_deezers( $matches, $attr, $url, $rawattr ) { 
    	// on ouvre la fonction de dégagement de l'ID via url
    		$url = str_replace("https://www.deezer.com/playlist/", "", "$url"); // l'ID est ce qui reste
    			if ( preg_match( "/\?/", $url, $matches ) )	{$url = substr($url, 0, strpos($url, "?"));  	}// l'ID est ce qui reste
    
    			$embed = sprintf(		
    
    				'<iframe scrolling="no" frameborder="0" allowTransparency="true" src="http://www.deezer.com/plugins/player?autoplay=false&playlist=true&width=500&height=242&cover=true&type=playlist&id='.$url.'&title=" width="500" height="242"></iframe>	',
    			esc_attr($matches[0])
    			);
    		$embed = apply_filters( 'oembed_deezer', $embed, $matches, $attr, $url, $rawattr );
    	return apply_filters( 'oembed_result_deezer', $embed, $url, '' );
    	}
    
    ###################################
    ####   DEEZER HTTPs:// FR #########
    ###################################
    	
    wp_embed_register_handler( 'album_deezers_fr', '#https://www.deezer.com/fr/album/([\d-]+)(.*?)#i', 'wp_embed_handler_album_deezers_fr' ); 
    // on declare le lien deezer
    
    	function wp_embed_handler_album_deezers_fr( $matches, $attr, $url, $rawattr ) { 
    	// on ouvre la fonction de dégagement de l'ID via url
    		$url = str_replace("https://www.deezer.com/fr/album/", "", "$url"); // l'ID est ce qui reste
    			if ( preg_match( "/\?/", $url, $matches ) )	{$url = substr($url, 0, strpos($url, "?"));  	}// l'ID est ce qui reste
    			$embed = sprintf(		
    
    				'<iframe scrolling="no" frameborder="0" allowTransparency="true" src="http://www.deezer.com/fr/plugins/player?autoplay=false&playlist=true&width=500&height=240&scover=true&type=album&id='.$url.'&title=&app_id=undefined" width="500" height="240"></iframe>',
    			esc_attr($matches[0])
    			);
    		$embed = apply_filters( 'oembed_deezer', $embed, $matches, $attr, $url, $rawattr );
    	return apply_filters( 'oembed_result_deezer', $embed, $url, '' );
    	}	
    
    wp_embed_register_handler( 'deezers_fr', '#https://www.deezer.com/fr/track/([\d-]+)(.*?)#i', 'wp_embed_handler_track_deezers_fr' ); 
    // on declare le lien deezer
    
    	function wp_embed_handler_track_deezers_fr( $matches, $attr, $url, $rawattr ) { 
    	// on ouvre la fonction de dégagement de l'ID via url
    		$url = str_replace("https://www.deezer.com/fr/track/", "", "$url"); // l'ID est ce qui reste
    			if ( preg_match( "/\?/", $url, $matches ) )	{$url = substr($url, 0, strpos($url, "?"));  	}// l'ID est ce qui reste
    
    			$embed = sprintf(		
    
    				'<iframe scrolling="no" frameborder="0" allowTransparency="true" src="http://www.deezer.com/plugins/player?autoplay=false&playlist=false&width=400&height=80&cover=false&type=tracks&id='.$url.'&title=&app_id=undefined" width="400" height="80"></iframe>	',
    			esc_attr($matches[0])
    			);
    		$embed = apply_filters( 'oembed_deezer', $embed, $matches, $attr, $url, $rawattr );
    	return apply_filters( 'oembed_result_deezer', $embed, $url, '' );
    	}	
    
    wp_embed_register_handler( 'playlist_deezers_fr', '#https://www.deezer.com/fr/playlist/([\d-]+)(.*?)#i', 'wp_embed_handler_playlist_track_deezers_fr' ); 
    // on declare le lien deezer
    
    	function wp_embed_handler_playlist_track_deezers_fr( $matches, $attr, $url, $rawattr ) { 
    	// on ouvre la fonction de dégagement de l'ID via url
    		$url = str_replace("https://www.deezer.com/fr/playlist/", "", "$url"); // l'ID est ce qui reste
    			if ( preg_match( "/\?/", $url, $matches ) )	{$url = substr($url, 0, strpos($url, "?"));  	}// l'ID est ce qui reste
    
    			$embed = sprintf(		
    
    				'<iframe scrolling="no" frameborder="0" allowTransparency="true" src="http://www.deezer.com/plugins/player?autoplay=false&playlist=true&width=500&height=242&cover=true&type=playlist&id='.$url.'&title=" width="500" height="242"></iframe>	',
    			esc_attr($matches[0])
    			);
    		$embed = apply_filters( 'oembed_deezer', $embed, $matches, $attr, $url, $rawattr );
    	return apply_filters( 'oembed_result_deezer', $embed, $url, '' );
    	}
    inclure un lien deezer dans une publication

    Son utilisation, dans votre post, à la ligne, vous ajoutez l’url de votre track/album/playlist ou bien dans l’option « partager » de deezer copier/coller toujours sur une ligne unique.

    Je suis persuadé que le code est largement améliorable 🙂

    En tout cas si ça peut être utile, voilà.

    Bons codes à tous.

    • Ce sujet a été modifié le il y a 6 months et 1 week par  franck.
    • Ce sujet a été modifié le il y a 6 months et 1 week par  franck.
Affichage de 1 message (sur 1 au total)
  • Vous devez être connecté pour répondre à ce sujet.