![تعداد-کاراکتر](https://zarinhost.com/wp-content/uploads/2023/12/تعداد-کاراکتر.jpg)
شما در سیستم مدیریت محتوای وردپرس قادر خواهید بود تا هر تغییری را در این سیستم مدیریت محتوای متن باز ایجاد کنید و تمامی نیازهای خود را برای ایجاد و راهاندازی سایت مورد نظر خود برطرف سازید. محدود کردن تعداد کاراکترها در عناوین و نوشتههای ورپرس یکی از نیازهایی است که برای نظم بخشیدن به ظاهر پوسته برای نمایش تعداد کاراکترها مشخص شده است در هر نوشته، محدود کردن کاراکترهای نوشته و غیره نیاز است بررسی بیشتری بر روی تعداد کاراکترهای متن در وردپرس داشت که این محدودیت مستقیما با هسته وردپرس رابطه دارد.
در این مقاله با ما همراه باشید تا نحوه محدود کردن تعداد کاراکترها در وردپرس بررسی نماییم.
تعیین تعداد کاراکتر در عنوان نوشتههای وردپرس
یکی از دلایلی که به محدود کردن کاراکترهای عناوین در وردپرس نیاز دارید این است که در برخی از نوشتهها عناوین طولانی باعث میشود تا ظاهر سایت شما از حالت اصلی خود خارج شده و سایت شما را نامنظم نشان دهد.
پس برای رفع این مشکل کافیست تا تعداد کاراکترهای عناوین را در وردپرس محدود کنید؛ تا به این مشکل برنخورید.
برای محدود کردن تعداد کاراکترهای عناوین، در ادامه با ما همراه باشید:
قبل از هر تغییر مهمی در سایت خود ابتدا یک نسخه پشتیبان از هاست خود تهیه کنید تا در صورت بروز هرگونه خطای احتمالی نسخه پشتیبان خود را بازگردانی کنید.
راه اول برای کسانی است که این عمل را فقط در قسمت خاصی از سایت خود نیاز دارند و این محدودیت را برای قسمت خاصی از سایت خود نیاز دارند.
پس میتوانند از دستور زیر برای محدود کردن تعداد کاراکترهای عناوین استفاده نمایند:
<?php echo mb_substr(the_title('', '', FALSE), 0, 30); ?>
در قطعه کد بالا برای تعداد کاراکترها در هر نوشته بر روی 30 کاراکتر محدود شده است. میتوانید این مقدار را باتوجه به پوسته سایت خود کمتر یا بیشتر کنید. با این کار ممکن است کاربران با نشان دادن خلاصهای از عنوان سردرگم شده و متوجه عنوان مربوطه نشوند؛ پس میتوانیم از (…) استفاده کنیم تا کاربران راحت درک کنند و برای این کار قطعه کد بالا به این قطعه کد زیر تغییر می کند:
<?php if (strlen($post->post_title) > 30) { echo mb_substr(the_title($before = ”, $after = ”, FALSE), 0, 30) . ‘…’; } else { the_title(); } ?>
تعیین تعداد کاراکتر در پوسته قالب
راه دوم هم برای کسانی است که در پوسته خود نیاز دارند. که این عمل را به تعداد بیشتر تکرار کنند و قطعه کد بالا باعث زیاد شدن کار آنها میشود. برای رفع این مورد نیز کافیست تا وارد هاست وردپرس خود شده و قطعه کد زیر را به فایل function.php پوسته فعال وردپرس خود اضافه نمایند:
function limit_title($title, $n){ if ( strlen ($title) > $n ) { echo mb_substr(the_title($before = '', $after = '', FALSE), 0, $n) . '...'; } else { the_title(); } }
و برای نمایش خروجی آن در فایلهای پوسته از تابع زیر استفاده نمایند:
<?php limit_title($post->post_title, 30); ?>
در قطعه کد بالا تعداد کاراکترها به 30 محدود شدهاست که شما میتوانید باتوجه به نیاز خود این مقدار را کاهش یا افزایش دهید.
تعیین تعداد کاراکترهای نوشته در وردپرس
تعیین تعداد کلمات برای نوشتههای وردپرس باعث نظم پیدا کردن پوسته شما میشود و به دلیل یکسان بودن تعداد کاراکترهای نوشتهها، شما زیبایی خاصی را به سایت خود القا میکنید. تعداد کاراکترهای نامشخص، باعث بینظمی در اسلایدر پوسته شما میشود.
در ادامه به دو راه برای تعیین تعداد کاراکترهای نوشتهها در وردپرس میپردازیم.
اگر قصد دارید تا در یک قسمت از سایت خود تعداد کاراکترهای نوشته را مشخص کنید؛ کافیست تا قطعه کد زیر را به فایل function.php پوسته فعال خود اضافه کنید:
function excerpt($length) { return 30; } function more($more) { return ' ...'; } add_filter('excerpt_more', 'more'); add_filter('excerpt_length', 'excerpt');
برای صحیح عملکردن این فانکشن باید در حلقه خود تابع
<?php the_content();?>
را به تابع
<?php the_excerpt();?>
تغییر بدهید و پس از تغییر خواهید دید که تعداد کاراکترها به مقدار موردنظر شما تغییر یافته است. این تعداد در قطعه کد بالا 30 تعیین شده است که میتوانید آن را کاهش یا افزایش دهید.
راه دوم مناسب افرادی است که در پوسته خود تعداد حلقه زیادی دارند. تمایل دارند بر روی کاراکترهای خروجی متن، این حلقه کنترل بیشتری داشته باشند.
برای انجام این کار کافیست دستورات زیر به فایل فانکشن پوسته خود اضافه نمایید:
function the_content_limit($max_char, $more_link_text = 'ادامه ...', $stripteaser = 0, $more_file = '') { $content = get_the_content($more_link_text, $stripteaser, $more_file); $content = apply_filters('the_content', $content); $content = str_replace(']]>', ']]>', $content); $content = strip_tags($content,''); if (strlen($_GET['p']) > 0) { echo "<p>"; echo $content; echo " <a href='"; the_permalink(); echo "'>"."ادامه مطلب →</a>"; echo "</p>"; } else if ((strlen($content)>$max_char) && ($espacio = strpos($content, " ", $max_char ))) { $content = mb_substr($content, 0, $espacio); $content = $content; echo "<p>"; echo $content; echo "..."; echo " <a href='"; the_permalink(); echo "'>".$more_link_text."</a>"; echo "</p>"; } else { echo "<p>"; echo $content; echo " <a href='"; the_permalink();
برای خروجی آن در پوسته وردپرس خود از تابع زیر استفاده نمایید و مقدار آن که در این قطعه کد 30 است را به مقدار مورد نظر خود تغییر دهید.