انجمن


برداشتن محدویت و اندازه آدرس یک مطلب  (۵ نوشته)

  • jafar1374

    آفلاین
    عضو
    تعداد نوشته‌ها: ۳۶
    تشکر شده: ۲ بار
    # نوشته شده: ۶ سال پیش
    ۴ اسفند ۱۳۹۱ - ۱۳:۱۴

    سلام
    معمولا وقتی عنوان یک مطلب در وردپرس طولانی می شود آدرس نوشته همه عنوان را نشان نمی دهد!
    برای رفع این محدودیت چه یابد کرد ؟
    مثلا
    عنوان مطلب : افزونه دیکشنری و مترجم آبادیس برای مرورگر فایرفاکس Abadis Dictionary Addon

    آدرس : /افزونه-دیکشنری-و-مترجم-آبادیس-برای-مرو/نام سایت

    همونطور ک می بینید ادرس ناقص می باشد.

    سپاس

  • ایران وردپرس

    آفلاین
    عضو
    تعداد نوشته‌ها: ۱۷۲۹
    تشکر شده: ۹۵۲ بار
    # نوشته شده: ۶ سال پیش
    ۴ اسفند ۱۳۹۱ - ۱۳:۳۸

    درود.

    این کد را در آخر function.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);
    }
    ?>

    با این ترتیب نامک کامل میشه . همچنین در بخشی از کد :
    if (strlen($word) < 3) {

    به سیستم میگه که کلمات کمتر از 3حرفی را حذف کنه . البته ممکنه برای فارسی عمل نکنه که میتونید برای درست کار کردنش از عدد 4 هم استفاده کنید .

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    jafar1374
  • jafar1374

    آفلاین
    عضو
    تعداد نوشته‌ها: ۳۶
    تشکر شده: ۲ بار
    # نوشته شده: ۶ سال پیش
    ۴ اسفند ۱۳۹۱ - ۱۶:۳۷

    IMDe گفت:
    درود.

    این کد را در آخر function.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);
    }
    ?>

    با این ترتیب نامک کامل میشه . همچنین در بخشی از کد :
    if (strlen($word) < 3) {

    به سیستم میگه که کلمات کمتر از 3حرفی را حذف کنه . البته ممکنه برای فارسی عمل نکنه که میتونید برای درست کار کردنش از عدد 4 هم استفاده کنید .

    سلام

    کد کار نمی کنه و جالب این که اون عددی که گفتید به آدرس اضافه میشه !

    if (strlen($word) < 3)
  • ایران وردپرس

    آفلاین
    عضو
    تعداد نوشته‌ها: ۱۷۲۹
    تشکر شده: ۹۵۲ بار
    # نوشته شده: ۶ سال پیش
    ۴ اسفند ۱۳۹۱ - ۱۷:۱۸

    درود . این کد توسط وردپرس 98 معرفی شده بود و همانطور که در سایتشون ذکر شده بود بنده عرض کردم خدمتتون :)

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    jafar1374
  • jafar1374

    آفلاین
    عضو
    تعداد نوشته‌ها: ۳۶
    تشکر شده: ۲ بار
    # نوشته شده: ۶ سال پیش
    ۵ اسفند ۱۳۹۱ - ۲۰:۱۴

    IMDe گفت:
    درود . این کد توسط وردپرس 98 معرفی شده بود و همانطور که در سایتشون ذکر شده بود بنده عرض کردم خدمتتون :)

    سلام
    من قبلا که بادی پرس داشتم از طریق دستکاری کدهای فایل formatting.php محدیت ها رو بر می داشتم (مثلا مطالب ایندکس رو از 50 کاراکتر به 300 تا افزایش می دادم)

    الان هم با راهنمایی بچه ها این کارو تو formatting.php و post انجام دادم الیته تو لوکال. آدرس کامل شد ولی هنگام نمایش پست رو لوکال که ارور داد ! شاید تو هاست جواب بده

    ولی ی کار بهتر می کینم تو آدرس url کلمات کلیدی رو می زنیم - بهنظرم این برای سئو هم بهتره (و حروف بی اهمیت مثل "به ، از ، و .... رو حذف می کنیم)

    کاربران زیر به‌خاطر این نوشته تشکر کرده‌اند:
    ایران وردپرس

درباره‌ی این موضوع



برچسب‌ها

هیچ برچسبی نیست.