نمایش نتایج: از شماره 1 تا 6 , از مجموع 6

موضوع: تغییر پیوندهای یکتا پیش فرض سایت وردپرس در فانکشن

  1. #1
    عضو انجمن
    تاریخ عضویت
    Sep 2017
    محل سکونت
    تهران
    نوشته ها
    144
    تشکر تشکر کرده 
    38
    تشکر تشکر شده 
    30
    تشکر شده در
    29 پست

    پیش فرض تغییر پیوندهای یکتا پیش فرض سایت وردپرس در فانکشن

    سلام دوستان

    ببنید میخواستم وقتی برای یک برگه، parent مشخص میکنم. ادرس parent توی یو ار ال نیاد.


    بذارید مثال بزنم: مثلا برگهC زیر مجموعه برگه A هست. حالا آدرس url برگه C به این صورت میشه. www.example.com/A/C

    و من نمیخوام این اتفاق بیفته میخوام ادرس یو ار ال برگه C به این صورت باشه -------> www.example.com/C

    ولی برادکرامپ C به این صورت نمایش داده بشه : Home > A > C

    حالا باید توی فانکشن چه کدی بنویسم که یوارال برگه هایی مثل برگه c به این صورت باشه: www.example.com/C

    نمیدونم دیگه باید چه طور توضیح بدم.

  2. # ADS




     

  3. #2
    عضو جدید SIBHost آواتار ها
    تاریخ عضویت
    Nov 2018
    محل سکونت
    تهران
    نوشته ها
    97
    تشکر تشکر کرده 
    23
    تشکر تشکر شده 
    49
    تشکر شده در
    44 پست

    پیش فرض پاسخ : تغییر پیوندهای یکتا پیش فرض سایت وردپرس در فانکشن

    درود بر شما

    میتونید از این افزونه استفاده کنید.

    موفق و پیروز باشید
    مفتخر به کسب 100% رضایتمندی مشتریان در سال 1397
    500%
    افزایش سرعت وردپرس با هاست وردپرس

  4. #3
    عضو انجمن
    تاریخ عضویت
    Sep 2017
    محل سکونت
    تهران
    نوشته ها
    144
    تشکر تشکر کرده 
    38
    تشکر تشکر شده 
    30
    تشکر شده در
    29 پست

    پیش فرض پاسخ : تغییر پیوندهای یکتا پیش فرض سایت وردپرس در فانکشن

    نه اصلا نمیخوام از افزونه استفاده کنم و ادرس ریدایرکت بشه

  5. #4
    عضو جدید SIBHost آواتار ها
    تاریخ عضویت
    Nov 2018
    محل سکونت
    تهران
    نوشته ها
    97
    تشکر تشکر کرده 
    23
    تشکر تشکر شده 
    49
    تشکر شده در
    44 پست

    پیش فرض پاسخ : تغییر پیوندهای یکتا پیش فرض سایت وردپرس در فانکشن

    میتونید از این تکه کد استفاده کنید

    موفق باشید
    مفتخر به کسب 100% رضایتمندی مشتریان در سال 1397
    500%
    افزایش سرعت وردپرس با هاست وردپرس

  6. تعداد تشکر ها از SIBHost به دلیل پست مفید


  7. #5
    عضو انجمن
    تاریخ عضویت
    Sep 2017
    محل سکونت
    تهران
    نوشته ها
    144
    تشکر تشکر کرده 
    38
    تشکر تشکر شده 
    30
    تشکر شده در
    29 پست

    پیش فرض پاسخ : تغییر پیوندهای یکتا پیش فرض سایت وردپرس در فانکشن

    نمیدونم چرا این کد رو میذارم عمل نمیکنه فقط میخوام روی برگه ها عمل کنه نه پست تایپ ها

    کد PHP:

    function wpse_101072_flatten_hierarchies$page_link$post ) {    if  (  $post->post_type != 'page')        return $page_link;
        
    $uri '';    foreach ( $post->ancestors as $parent ) {        $uri get_post$parent )->post_name "/" $uri;    }
        return 
    str_replace$uri''$page_link );}add_filter'page_link''wpse_101072_flatten_hierarchies'10); 

  8. #6
    عضو دائم T.Toosi آواتار ها
    تاریخ عضویت
    Jun 2015
    نوشته ها
    1,071
    تشکر تشکر کرده 
    278
    تشکر تشکر شده 
    2,936
    تشکر شده در
    1,329 پست

    پیش فرض پاسخ : تغییر پیوندهای یکتا پیش فرض سایت وردپرس در فانکشن

    نقل قول نوشته اصلی توسط elan نمایش پست ها
    نمیدونم چرا این کد رو میذارم عمل نمیکنه فقط میخوام روی برگه ها عمل کنه نه پست تایپ ها

    کد PHP:

    function wpse_101072_flatten_hierarchies$page_link$post ) {    if  (   $post->post_type != 'page')        return $page_link;
        
    $uri '';    foreach ( $post->ancestors as $parent ) {         $uri get_post$parent )->post_name "/" $uri;    }
        return 
    str_replace$uri''$page_link );}add_filter'page_link''wpse_101072_flatten_hierarchies'10); 
    باسلام، برگه ها یک پست تایپ هستند. کد های بالا تنها آدرس ها را برای نمایش عوض می کنند (***** های page_link، post_type_link و ..). اگر با این ***** ها آدرس ها به صورت example.com/C در سایت نمایش دهید کار شما تمام نخواهد شد، در صورتی که وارد این آدرس ها شوید وردپرس 404 خواهد داد به دلیل آنکه داخل پست ها دنبال پستی با اسم C می گردد (با توجه به ساختار آدرس هاتون ممکن است نتیجه متفاوت باشد)، شما باید یک rewrite rule هم اضافه کنید که به برگه ها هدایت شود و دنبال C بگردد :

    کد:
    function myinit() {
      global $wp,$wp_rewrite;
      $wp_rewrite->add_rule('(.*)','index.php?post_type=page&name=$matches[1]', 'top');
    }
    add_action('init','myinit');

    پس از قرار دادن کد بالا باید rule ها یک بار flush شود. در کل پیشنهاد نمی کنم دستی این کار را انجام دهید مگر بدهید یک برنامه نویس انجام دهد و در آخر بهتر است با افزونه های موجود کار کنید.

  9. تعداد تشکر ها ازT.Toosi به دلیل پست مفید


اطلاعات موضوع

کاربرانی که در حال مشاهده این موضوع هستند

در حال حاضر 1 کاربر در حال مشاهده این موضوع است. (0 کاربران و 1 مهمان ها)

موضوعات مشابه

  1. پاسخ ها: 5
    آخرين نوشته: September 18th, 2017, 17:12
  2. پاسخ ها: 3
    آخرين نوشته: October 18th, 2016, 09:14
  3. تغییر صفحه فیل تر ینگ پیوندها
    توسط ho3yn_sha2 در انجمن مباحث دیگر
    پاسخ ها: 2
    آخرين نوشته: December 31st, 2013, 18:11
  4. تغییر نکردن پیوند یکتا!!!
    توسط armin1376 در انجمن Wordpress
    پاسخ ها: 4
    آخرين نوشته: November 29th, 2012, 00:19
  5. تغییر دیزاین سایت پیوندها
    توسط vps-baran.ir در انجمن مباحث دیگر
    پاسخ ها: 19
    آخرين نوشته: March 24th, 2012, 13:05

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •