محدودسازی تعداد نمایش کلمات با تابع limitwords

limitwords-php-functions-wpmen

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

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

// show limit words
function limitwords($text, $limit) {
	$text = preg_replace("/\< *[img][^\>]*[.]*\>/i","",$text,1);
	$word_arr = explode(" ", $text);

	if (count($word_arr) > $limit) {
		$words = implode(" ", array_slice($word_arr , 0, $limit) ) . ' ...';
		return $words;
	}

	return $text;
}

این تابع دو تا ورودی میگیره و یک خروجی رو برمیگردونه که شما باید اون رو با دستور echo  نمایش بدید، وردودی اول $text هستش که اون جمله ای رو که میخواید براتون محدود سازی بشه رو بهش میدید ، ورودی دوم هم تعداد کلمه ای هست که می خواید توی خروجی چاپ بشه.

اما خط دوم فلن بمونه تا بریم خط سوم، خط سوم میاد این جمله ای رو که گرفته رو تبدیل به آرایه می کنه و با فاصله این جمله رو در حقیقت قسمت قسمت می کنه.

اما هسته اصلی کار ما در شرطی که قرار دادیم در این شرط اومدیم گفتیم اگر تعداد کلمه هایی که ما جدا جدا کردیم بیشتر از تعداد دلخواهمون بود بیا از خونه صفر آرایه که میشه اولین کلمه تا تعدادی که مشخص کردیم برو جلو و این کلمه هارو با یک فاصله به هم بچسبون و در نهایت آخرش یک '…' هم اضافه کن، در غیر این صورت ینی اگر تعداد کلمات کمتر از حد تعیین شده بود همون جمله رو برگردون و هیچ تغییری درش اعمال نکن.

من در زیر نحوه استفاده از این تابع رو برای نمایش تعداد مشخصی از متن اصلی پست ها در وردپرس می نویسم:

echo limitWords(get_the_content() ,14);

به این صورت شما متن اصلی پست رو می گیرید و میفرستید به این تابع و میخواید که تعداد ۱۴ عدد از کلمات اول این متن رو برگردونه و براتون چاپ کنه.

اما خطی که در بالا توضیح ندادم در حقیقت خط دوم تابع بود که کاری که می کنه اینه که میاد میگه اگر در همه چیز رو بگیر به جز تگ عکس اگر عکسی در این متغیر باشه رو رد می کنه و میره سراغ قسمت های بعدی که بسیار کاربرد داره .

امیدوارم از این آموزش استفاده کرده باشید، چنانچه سوال یا نظری داشتید می تونید در قسمت نظر ها با ما در میان بذارید.

منبع :‌ مردان وردپرس

تاریخ آخرین بروزرسانی : ۶ بهمن ۱۳۹۴
صادق مهدی لو

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

ارسال نظر

آدرس الکترونیکی شما نمایش داده نمی شود *

Time limit is exhausted. Please reload CAPTCHA.