سلام
من در دیتابیس خود در یک جدول یک فیلد دارم به نام note
می خواهم زمانیکه کاربر صفحه محصول را می بیند، فقط متنی به حداکثر طول 20 کلمه را ببیند و در صورتی که روی محصول کلیک کرد متن به صور کامل نمایش داده بشود، راهکار چیست؟
اگر در همون صفحه متن میخواین اینطوری نمایش داده بشه که اونو باس با جاوا اسکریپت انجام بدید اما اگر میخواین متی رو از از متن اصلی بگیرید و بعد از اینکه کلیک کرد رفت صفحه مطلب نمایش داد
از تابع str_limit در لاراول برای محدود کردن متن میتونید استفاده کنید
من در پروژه های خودم ۲ تا فیلد ازکاربر مگیرم برای اینکه اگر با php خلاصه بگیریم هم اینکه امکان داره یک جمله یا کلمه رو خراب کنه و گاهی وقتا خلاصه امکان داره از ابتدا نباشه برای همین به انتخاب کاربر ازش متن خلاصه رو میگیرم
سلام
طبق پاسخ دوستمون اگه تابعی داخل لاراول هست بهتره از همون استفاده کنین .
با php هم میشه از این تابع استفاده کرد :
function sub_content($char){
$content = 'متن';
$content = mb_substr($content,0,$char);
if(mb_strlen($content)<$char){
$dotstree = "";
}else{
$dotstree = "...";
}
echo $content,$dotstree;
}
که ورودی تابع تعداد کاراکتر هست و $content خود متن که میشه از تابع هم گرفتش و اگه طول رشته از مقدار وارد شده بیشتر باشه سه نقطه رو اضافه میکنه و اگه کمتر باشه اضافه نمیکنه .
برای نمایش کل متن بعد از کلیک هم میتونین از آزاکس استفاده کنین ک کل متن رو بگیره .
یا دوتا div بذارید و داخل یکیش متن کوتاه و یکیش متن بلند ، ک متن بلند hide باشه و بعد از کلیک اولی رو hide کنه و دومی رو نمایش بده . ولی زیاد جالب نیست این روش .
با css هم میشه به صورت ویژوال ، متن رو خلاصه کرد به همراه سه نقطه ، ولی فقط تو یک خط متن نمایش داده میشه و المنت parent هم باید overflow hidden باشه .
من از {{ substr(striptags($product->content), 0, 150) }} استفاده کردم جواب داد که متن از 0 تا 150 تا کاراکتر میاره
آیا مایل به ارسال نوتیفیکیشن و اخبار از طرف راکت هستید ؟