miraziz

افزودن تصویر به دسته های وردپرس

36 پست در این موضوع قرار دارد

ارسال شده در (ویرایش شده)

در در 2/27/2019 at 20:37، mehran-b گفته است :

یعنی عکسه رو واقعا به عنوان تصویر شاخص برای پست انتخاب کنه؟

بله. یعنی تو قالب همان شکل قبلی نشون بده ولی برای موتور جستجو به عنوان تصویر شاخص معرفی کنه. فکر کنم باید درون کدهای قسمت تصویر شاخص، که نمایش مربوط به اون افزونه را که شما نوشته بودید را قرار دهیم. یعنی کد زیر که تو فایل content.php قرار دارد.

	<?php echo mehran_get_post_last_child_image(get_the_ID()); ?>

 

ویرایش شده در توسط miraziz
0

به اشتراک گذاری این پست


لینک به پست

@miraziz

 

کد زیر رو به انتهای فایل functions.php قالب فعال سایتتون اضافه کنید.

add_filter('get_post_metadata', function($value, $object_id, $meta_key, $single) {
	
	if($meta_key !== '_thumbnail_id')
		
		return $value;
	
	$cats = get_the_category($object_id);
	
	if(empty($cats))
		
		return $value;
	
	$childs = array();
	
	foreach($cats as $cat) {
		
		if($cat->category_parent !== 0)
			
			$childs[] = $cat->cat_ID;
		
	}
	
	if($childs === array())
		
		return $value;
	
	$last_child = max($childs);
	
	$images = get_option('taxonomy_image_plugin');
	
	if(!isset($images[$last_child]))
		
		return $value;
		
	return $images[$last_child];
	
}, 999, 4);

بعد از اضافه کردن کد فوق، از هر کدوم از توابع تصاویر شاخص برای پست ها استفاده کنید تصویر دسته اون ارسال میشه برای پست مربوطه.

0

به اشتراک گذاری این پست


لینک به پست

@mehran-b

سلام. آقا مهران دستتان درد نکنه. من کدی که دادید را قرار دادم و نتیجه ی نهایی به صورت تصویر که پیوست کردم شد.
یعنی تصویر بندانگشتی به بالای مطلب اضافه شد. کمی در موردش فکر کردم و دیدم که در این صورت باید تصویر مربوط به دسته را از قالب حذف کنم و تنها تصویر شاخص باقی بماند. فقط یک مشکل کوچیک بود. الان اگر بر روی تصویر دسته (عکس کوچک) کلیک کنیم به صفحه آن دسته هدایت می‌شود. ولی وقتی بر روی تصویر شاخص(عکس بزرگتر) کلیک میکنم به ادامه‌ی مطلب می‌رود. نمی شود کاری کرد که وقتی بر روی تصویر شاخص کلیک می‌شود به صفحه‌یِ دسته‌یِ آن مطلب برود؟

5c79075784190_Screenshot(166).png.43e47fc4e20c3c4316d51011868c4532.png

0

به اشتراک گذاری این پست


لینک به پست

@miraziz

 

لینک اصلا نباید روی تصویر شاخص باشه.

حتما توی کدهای قالب روش لینک گذاشته شده.

0

به اشتراک گذاری این پست


لینک به پست

@mehran-b
اینا کدهای مربوط به contetn.php است که فکر کنم تصویر شاخص را از همینجا فراخوانی میکنه. اینجا میشه به تصویر شاخص لینک فرزندترین دسته اش را داد.

	<?php if ( has_post_thumbnail() ) : ?>
	
			<div class="featured-media">
			
				<a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title_attribute(); ?>">
				
					<?php the_post_thumbnail('post-image'); ?>
					
					<?php if ( !empty(get_post(get_post_thumbnail_id())->post_excerpt) ) : ?>
									
						<div class="media-caption-container">
						
							<p class="media-caption"><?php echo get_post(get_post_thumbnail_id())->post_excerpt; ?></p>
							
						</div>
						
					<?php endif; ?>
					
				</a>
						
			</div> <!-- /featured-media -->
				
		<?php endif; ?>

	<?php echo mehran_get_post_last_child_image(get_the_ID()); ?>

 

0

به اشتراک گذاری این پست


لینک به پست

@miraziz

 

تابع زیر آخر functions.php

function the_last_child_cat_link($post_id) {
	
	$post = get_post($post_id);
	
	if(!$post)
		
		return;
		
	$cats = get_the_category($post->ID);
	
	if(empty($cats))
		
		return $value;
	
	$childs = array();
	
	foreach($cats as $cat) {
		
		if($cat->category_parent !== 0)
			
			$childs[] = $cat->cat_ID;
		
	}
	
	if($childs === array())
		
		return;
	
	$last_child = max($childs);
	
	echo esc_url(get_category_link($last_child));
	
}

توی کدی هم که دادید جای

<?php the_permalink(); ?>

بذارید

<?php the_last_child_cat_link(get_the_ID()); ?>

 

2

به اشتراک گذاری این پست


لینک به پست

@mehran-b خیلی خیلی ممنونم آقا مهران. کاملا درست کار کرد. سپاسگذارم 

0

به اشتراک گذاری این پست


لینک به پست
در هم اکنون، miraziz گفته است :

خیلی خیلی ممنونم آقا مهران. کاملا درست کار کرد. سپاسگذارم 

خواهش میکنم.

موفق باشید

1

به اشتراک گذاری این پست


لینک به پست
در در 3/1/2019 at 14:23، mehran-b گفته است :

خواهش میکنم.

موفق باشید

سلام. آقا مهران یادتان است که یک هفته پیش کدها را به نحوی تغییر دادید که تصویر هر دسته به عنوان تصویر شاخص اون مطلب نشون داده شود. یک سوالی داشتم. تو شبکه های اجتماعی برخی از از لینک هایی که به اشتراک می گذاریم تصویر ساخص اون را هم برمی داره. مثل عکس زیر5c8f880512088_Screenshot(169).png.3f6a60856efadf2fdc8385786c33a599.png

 

ولی برای لینک های سایت من این اتفاق نمی افتد. دلیلش از چی میتونه باشه؟ (مانند عکس زیر از سایت خودم)
5c8f8830d04c1_Screenshot(169)-Copy.png.688d4c493bec2c9201a7767b2f7a2843.png

 

0

به اشتراک گذاری این پست


لینک به پست

@mehran-b

سلام آقا مهران. شرمنده اگر دوباره مزاحمتان می شوم. اون مشکل را فهمیدم از کجا بود. مربوط به کدهای open graph است که هر شبکه ی اجتماعی مخصوص خود را دارد و از آن رو حل شد.
فقط یادتان هست در کد آخر تصویر دسته به جای تصویر شاخص مطلب استفاده می شود. وقتی موس را روی تصویر نگه می دارم به عناون خصوصیت Alt عنوان نوشته را نشان می‌دهد. نمیشه alt تصویر همان عنوان دسته باشد؟

0

به اشتراک گذاری این پست


لینک به پست

@miraziz

 

کد زیر رو توی functions.php قالب بذارید.

add_filter('get_post_metadata', function($value, $object_id, $meta_key, $single) {
	
	if($meta_key !== '_wp_attachment_image_alt')
		
		return $value;
		
	$parent = get_post_ancestors($object_id);
	
	$cats = get_the_category($parent[0]);
	
	if(empty($cats))
		
		return $value;
	
	$childs = array();
	
	foreach($cats as $cat) {
		
		if($cat->category_parent !== 0)
			
			$childs[] = $cat->cat_ID;
		
	}
	
	if($childs === array())
		
		return $value;
	
	$last_child = max($childs);
	
	return get_cat_name($last_child);
	
}, 999, 4);

 

2

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط noorian
      سلام دوستان
      من درحال طراحی یک افزونه هستم ، و افزونه با فایل استایل با پسوند css سازگار نیست (style.css) پس مجبور شدم فایل استایل رو با پسوند php ایجاد کرده و در فایل اصلی افزونه فراخوانی کنم (include style.php)
       
      اما وقتی افزونه رو نصب میکنم ارور زیر رو میده :
      این افزونه 2405 حرف از خروجی غیرمنتظره در طول فعال‌سازی تولید کرد. اگر پیام اخطار “headers already sent” ، مشکلات مربوط به خوراک‌های پیوند یا مسائل دیگر را دریافت کردید، این افزونه را غیرفعال یا حذف کنید.
      چطوری این مشکل رو رفع کنم؟

    • توسط robeka
      سلام دوستان.بیشتر وقتا وردپرس ایمیل میزنه وردپرس سایت شما مشکل داره مال چی میتونه باشه؟ کسی به این موضوع برخورده یا نه؟
    • توسط htrwd
      سلام کاری که من می خوام انجام بدم هاست سی پنل دارم که وردپرس روش هاست دانلود دایرکت ادمین دارم که هم ساب دامین ساختم روش هم اکانت اف تی پی ساب دامین که رو هاست دانلود از طریق A recorde وصل کردم به هاست وردپرسم     حالا می خوام وقتی فایلی رو پیوست اتچ یا کلا آپلود می کنم مستقیم بره تو پوشه مشخص شده در هاست دانلودم   یعنی نمی خوام دیگه فایلهایی آپلودی که از سایت انجام می دم داخل هاست وردپرسم باشند در ضمن خیلی جستجو کردم ولی فعلا موفقیت آمیز نبوده ممنون  
    • توسط pasha
      سلام و وقت همگی به خیر
      من جدیدا با ی مشکلی مواجه شدم که وقتی یک صفحه رو آپدیت می کنم به جای بروز رسانی به صفحه ای که اتچ می کنم ریدایرکت میشه .
      ممنون میشم منو راهنمایی بکنید. 

    • توسط lord00mmdy
      سلام دوستان
      یک افزونه که کاربرا بتونن بعنوان بازاریاب ثبت نام کنند و یک کد تخفیف (یا همون کوپن) بگیرند. و هر کس با این کد تخفیف خرید کرد یک مبلغ سود به حساب کیف پولش واریز بشه.
      مثل : AffiliateWP (اما با لینک بازاریابی میکنه) یا Ultimate Affiliate Pro (که باز هم با لینک )
      ممنون از همه