Armin Rahmati
3 سال پیش توسط Armin Rahmati مطرح شد
1 پاسخ

نمایش قسمتی از متن مقاله

سلام دوستان.
زمانی که میخوام یه مقاله ثبت کنم از ckeditor استفاده میکنم، فرض کنید کاربر در ابتدا یه عکس قرار داده و بعد از اون عکس اومده متن رو نوشته.
حالا در صفحه اصلی سایت وقتی میخوام مقالات رو نشون بدم، نمیخوام تمام متن مقاله قرار داده بشه و مثلا 50 کاراکتر اون فقط نمایش داده بشه ولی از اونجایی که ممکنه محتوای یه مقاله به جای اینکه با متن شروع بشه با عکس شروع بشه، دستور زیر رو نوشتم:

@if(\Illuminate\Support\Str::startsWith($article->content, '<p><img alt'))
   <p>{!! \Illuminate\Support\Str::after(\Illuminate\Support\Str::limit($article->content, 50), '/></p>') !!}</p>
@else
   <p>{!! \Illuminate\Support\Str::limit($article->content, 50) !!}</p>
@endif

ولی اون 50 کاراکتر رو نمایش نمیده در واقع هیچ چیزی نمایش نمیده و تگ p خالی است.
نحوه ذخیره در دیتابیس در فیلد content به صورت زیر است:

<p><img alt="" src="http://localhost:8000/images/Articles/0_Original_473449ac-2a08-4c15-8135-7d441d55ec9d_1622878172.jpg" style="height:188px; width:300px" /></p>

<p>اگر بررسی&zwnj;های زومیت را دنبال می&zwnj;کنید، حتما می&zwnj;دانید که اکثر&nbsp;<a href="https://www.zoomit.ir/product/list/mobile/xiaomi/" target="_blank">گوشی&zwnj;های شیائومی</a>&nbsp;عملکرد بهتر و امکانات بیشتری را در مقایسه با رقیب&zwnj;های هم&zwnj;قیمت خود ارائه می&zwnj;دهند. اکنون میزبان مدل Enhanced Edition از لپ&zwnj;تاپ&zwnj;های حرفه&zwnj;ای می نوت&zwnj;بوک هستیم تا ببینیم آیا این لپ&zwnj;تاپ هم امضای شیائومی را دارد یا خیر.&nbsp;<a href="https://www.zoomit.ir/product/xiaomi-mi-notebook-pro-15-enhanced-edition-core-i5-10210u-mx250-8gb-1tb/" target="_blank">می نوت &zwnj;بوک 15 Enhanced Edition</a>&nbsp;پرچم&zwnj;دار کامپیوترهای قابل&zwnj;حمل شیائومی به&zwnj;حساب می&zwnj;آید؛ مدلی که طبق ادعای شرکت سازنده، &laquo;ابزاری قدرتمند، مخصوص حرفه&zwnj;ای&zwnj;ها است و با عملکرد سریع و نمایشگر عالی، تجربه کاملی از یک کامپیوتر شخصی را ارائه می&zwnj;دهد&raquo;.&nbsp;</p>

<p>می نوت بوک پرو 15 Enhanced Edition که یکی از طولانی&zwnj;ترین نام&zwnj;ها را در بین لپ&zwnj;تاپ&zwnj;ها دارد، یکی از برترین لپ&zwnj;تاپ&zwnj;های شیائومی محسوب می&zwnj;شود و طبق انتظارمان با جدیدترین سخت&zwnj;افزار به&zwnj;فروش می&zwnj;رسد. مدلی که مهمان زومیت بود، از پردازنده&zwnj;ی نسل دهم&nbsp;<a href="https://www.zoomit.ir/product/list/cpu/intel/" target="_blank">اینتل Core i7</a>&nbsp;درکنار ۱۶ گیگابایت رم، یک ترابایت حافظه&zwnj;ی&nbsp;<a href="https://www.zoomit.ir/product/list/ssd/" target="_blank">SSD</a>&nbsp;پرسرعت NVMe PCIe و تراشه&zwnj;ی گرافیکی MX250 انویدیا بهره می&zwnj;برد که در ادامه به&zwnj;طور کامل عملکرد آن را بررسی می&zwnj;کنیم.&nbsp;<a href="https://www.zoomit.ir/product/list/laptop/" target="_blank">قیمت لپ&zwnj;تاپ</a>&nbsp;شیائومی می نوت بوک در محدود ۳۵ میلیون تومانی قرار دارد. با زومیت در بررسی&nbsp;<a href="https://www.zoomit.ir/product/list/laptop/xiaomi/" target="_blank">لپ &zwnj;تاپ شیائومی</a>&nbsp;می نوت بوک پرو 15 Enhanced Edition همراه شوید.</p>

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


ثبت پرسش جدید
سبحان مولایی
تخصص : برنامه‌نویس وب: Python ::...
@websaz 3 سال پیش آپدیت شد
0

سلام می توانی از تابع striptags استفاده کنید. مانند:

<p>{!! \Illuminate\Support\Str::limit(strip_tags($article->content,['img']), 50) !!}</p>

@arminrahmati999


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام