رفتن به مطلب

نمایش گزینه های share از طریق تنظیمات


پست های پیشنهاد شده

داخل قالبی که دارم کد می کنم یک قسمت تنظیمات تعریف کردم که داخل قسمت تنظیمات بخشی برای انتخاب شبکه های اجتماعی جهت انتشار مطلب در نظر گرفتم که با انتخاب هر گزینه دکمه مخصوص اون زیر پست ها نمایش داده بشه:

151153205080091.png

کد زیر رو نوشتم:

function siebte_share_this () {

	if( is_single() ){
		$options = get_option( 'post_share' );
		$share = array( 'twitter', 'facebook', 'google', 'telegram', 'pinterest' );
		$output = array();
		foreach ( $share as $icon ) {
			$output[] = ( @$options[$icon] == 1 ? $icon : '' );
		}
		if( !empty( $options[$icon] ) ) {
			// add_theme_support( 'post_share', $output );
		

			$content = '<div class="siebte-share"><span class="share-icon fa fa-share-alt"></span>';

		    $title = get_the_title();
		    $permalink = get_permalink();

		    $twitterHandler = ( get_option('twitter_handler') ? '&amp;via='.esc_attr( get_option('twitter_handler') ) : '' );

		    $twitter = 'https://twitter.com/intent/tweet?text=' .$title .'&amp;url=' . $permalink . $twitterHandler .'';
		    $facebook = 'https://www.facebook.com/sharer/sharer.php?u=' . $permalink;
		    $google = 'https://plus.google.com/share?url=' . $permalink;
		    $telegram = 'https://telegram.me/share/url?url=' . $permalink;
		    $pinterest = 'https://www.pinterest.com/pin/create/button/?url=' . $permalink;

		    $content = array($twitter, $facebook, $google, $telegram, $pinterest);
		    $out = '';

		 
			foreach ($content as $social) {
				$out  .= '<ul class="share-icon-single-post"><li><a href="' . $social . '" rel="nofollow" target="_blank"><span class="fa fa-twitter"></a></li></ul></div>';
			}

			return $out;
		}
		
	} else {
		return $out;
	}

}

اما در حال حاضر زمانی که همه گزینه ها تیک زده بشه، کل بخش (آیکن ها) رو زیر پست نمایش می ده و اگر یک گزینه تیک نخورده باشه کلا نمایش نمی ده!

اگر داخل کد زیر:

if( !empty( $options[$icon] ) ) 

$icon رو پاک کنم، این بار اگر حتی یک گزینه انتخاب شده باشه کل بخش رو نمایش می ده، و اگر همه گزینه ها انتخاب نشده باشند، کل بخش رو نمایش نمی ده!

 

اما می خوام هر گزینه ای که تیک خورد همون گزینه رو نمایش بده!

برای اینکار باید چه تغییری داخل کد بالا بدم و یا اگر راه دیگه ای هست ممنون می شم راهنمایی کنید.

لینک به ارسال
  • 2 هفته بعد...
  • 5 ماه بعد...

اگر سایتتون ورد پرسی هستش از میتونید با نصب پلاگین یواست هرکدوم از شبکه های اجتماعی رو خواستید فعال کنید و در بخش تنظیمات هم گزینه share رو برای هر قسمت دلخواه فعال کنید .

لینک به ارسال

لطفا برای ارسال دیدگاه وارد شوید

شما بعد از اینکه وارد حساب کاربری خود شدید می توانید دیدگاهی ارسال کنید



ورود به حساب کاربری
×
×
  • اضافه کردن...