همانطور که 100% در جریان هستید slug یا همان نامک آدرس مطالب در وردپرس دارای محدودیت کارکتری هست و این باعث میشه که یک تعداد مشخص از کارکترهای اول عنوان را به عنوان نامک انتخاب کند اما ممکن است کلمه اصلی این مطلب در آخر باشد و در اول از حروف کوتاه مثل : از , به , با استفاده کرده باشید . خب این کلمات کوتاه حجم کارکتر های آدرس را میگیرد .
خب امروز میخواهیم کدی به شما معرفی کنیم که این حروف کوتاه رو از نامک سایتتون حذف میکنه .
بذارید برای بار آخر و فهم بیشتر یک مثال از مطالب سایت خودمون (یا خودتون) بزنیم . مثلا در یک مطلب عنوان “انتخاب Gravatar به عنوان favicon” است و مثلا آدرس بصورت “انتخاب-Gravatar-به-عنوان” میشود و مثلا کلمه favicon بخاطر محدودیت حذف شده اما بعد از اینکه از این کد استفاده کردید کلمه “به” حذف میشود و آدرس بصورت “انتخاب-Gravatar-عنوان-favicon” میشود !
برای ایتسافده از این کار کد زیر را در functions.php قالب خود قرار دهید :
<?php add_filter('sanitize_title', 'remove_short_words'); function remove_short_words($slug) { if (!is_admin()) return $slug; $slug = explode('-', $slug); foreach ($slug as $k => $word) { if (strlen($word) < 3) { unset($slug[$k]); } } return implode('-', $slug); } ?>
روند کار این کد اینطوری هست که در خط هفتم نوشته کلمات کمتر از 3 کارکتر از نامک حذف شود . توجه کنید ممکن است برای کلمات فارسی حذف نشود و شما باید روی 4 قرار دهید.
این هم از منبع نوشته بنده : deluxeblogtips
موفق و بهینه باشید : )