Ovidiu Eftimie

Cartierul General

Menu Close

Cum să: butoane de share simple, fără scripturi sau alte măgării (WordPress)

Salut bloagherilor și tuturor celor interesați de această chestiune de super-nișă. Salut și vouă, cei care ați cerut buton de share pe blogul ăsta. Problema cu care ne confruntăm era următoarea: voiam niște butoane de share, dar nu voiam să umplem site-ul cu scripturi sau codurile alea perverse de la Facebook, cu care te pândește de leșini. Așa că uite soluție simplă, învățată de la un băiat de pe internet, să-i trăiască familia.

Deschizi function.php (și-o idee bună e să-l deschizi pe ăla din child-theme, google-uiește asta dacă n-ai făcut-o) și torni codul de mai jos în ea. Dai update și gata.

function share_social_sharing_buttons($content) {
	global $post;
	if(is_singular() || is_home()){
	
		// Get current page URL 
		$shareURL = urlencode(get_permalink());
 
		// Get current page title
		$shareTitle = htmlspecialchars(urlencode(html_entity_decode(get_the_title(), ENT_COMPAT, 'UTF-8')), ENT_COMPAT, 'UTF-8');
		// $shareTitle = str_replace( ' ', '%20', get_the_title());
 
		// Construct sharing URL without using any script
		$twitterURL = 'https://twitter.com/intent/tweet?text='.$shareTitle.'&url='.$shareURL.'&via=share';
		$facebookURL = 'https://www.facebook.com/sharer/sharer.php?u='.$shareURL;
 
		// Add sharing button at the end of page/page content

		$content .= '<div class="post-meta-top">';
		$content .= '<i>Share links:</i> <a class="share-link share-twitter" href="'. $twitterURL .'" target="_blank">Twitter</a>';
		$content .= ' | ';
		$content .= '<a class="share-link share-facebook" href="'.$facebookURL.'" target="_blank">Facebook</a>';
		$content .= '</div>';
		
		return $content;
	}else{
		// if not a post/page then don't include sharing button
		return $content;
	}
};
add_filter( 'the_content', 'share_social_sharing_buttons');

Mă rog, îl mai aranjați și voi să nu arate ca naiba. Și încă câteva precizări, poate vă sunt de folos.

if(is_singular() || is_home())

Dacă nu vreți să apară și pe pagina principală asta, ștergeți partea cu „|| is_home()”, ala o să apară doar pe postări.

$twitterURL = 'https://twitter.com/intent/tweet?text='.$shareTitle.'&url='.$shareURL.'&via=share';

Acolo, la „via=share”, înlocuiți „share” cu userul vostru de twitter. Gen, dacă ești Vasile de la UB, scrii în loc de „share” „utopicbalcanic”.

$content .= ' | ';

Ăsta e un separator, puteți pune ce gârlic vreți acolo în loc de |. Sau doar o pauză.

Pentru mai multe opțiuni de share, butoane, design puteți să vizitați pe băiatul ăsta, care are o chestie mult mai complexă.

Share links: |

© 2019 Ovidiu Eftimie. All rights reserved.

Theme by Anders Norén.