رفتن به مطلب

اشتباه بودن لینک


AmiRoo

پست های پیشنهاد شده

درود ,دوستان من از افزونه ارسال اتوماتیک پست به تلگرام استفاده می کنم

روی چند تا سایت استفاده می کنم مشکلی نداره ,خوده اتوماتیک لینک کوتاه می کنه و در تلگرام ارسال می کنه.

ولی یکی از سایت هام(فقط یکی),لینکی که کوتاه میشه و ارسال می کنه اشتباه هست و ارور 404 میده ,تنظیمات همه هم یکسان هست

با پشتیبان صحبت کردم گفت مشکل از سایته(البته احتمالا درسته چون روی بقیه  سایت ها بدون مشکل کار می کنه)

چه کار باید کنم؟

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

درود.

لینک کوتاه شده از سرویس های خارجی مثل گوگل یا adf.ly و ... هستند یا از قابلیت کوتاه کردن لینک داخلی وردپرس استفاده میشه؟

تنظیمات پیوندیکتای وردپرس رو هم چک کنید.

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

در 2 ساعت قبل، Masih گفته است :

درود.

لینک کوتاه شده از سرویس های خارجی مثل گوگل یا adf.ly و ... هستند یا از قابلیت کوتاه کردن لینک داخلی وردپرس استفاده میشه؟

تنظیمات پیوندیکتای وردپرس رو هم چک کنید.

بله چک کردم,چند بار هم عوض کردم اما نشد

خیر از کوتاه کننده خاصی استفاده نمیکنم ,فکر کنم برای خوده وردپرس هست(البته من درباره این موضوع تو هیج کدوم از سایت ها دست نزدم,اتوماتیک انجام میشه ظاهرا,

(( پیوند لینک ,ساده )) ظاهرا این مدل انتخاب میشه و ارسال میشه ,اما من روی نام نوشته  گذاشتم ,گزینه های دیگه هم تست کردم

---------

روی نوشته که میزارم درست کار می کنه,من از پرتفلیو ارسال می کنم ظاهرا اونو قبول نمیکنه و لینک میگه اشتباه هست

 

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

درود مجدد.

قابلیت کوتاه سازی لینک ها فقط و فقط برای پست تایپ " نوشته ها " یا همون post انجام میشه. برای پست تایپ های سفارشی مثل پرتفلیو باید این امکان رو به قالب اضافه کنید. عموما این ویژگی رو خود طراح به قالب ها و افزونه هایی که پست تایپ سفارشی اضافه میکنه، روی قالب سوار میکنه ولی به هر حال اگه لینک های کوتاه برای اون پست تایپ کار نمیکنه، از کد زیر استفاده کنید:

کد رو در فایل functions.php استفاده کنید:

function masih_shortlinks_for_portfolio( $shortlink, $id, $context ) {
    $post_id = 0;
 
    if ( 'query' == $context && is_singular( 'portfolio' ) ) {
        $post_id = get_queried_object_id();
 
    }
    elseif ( 'post' == $context ) {
        $post_id = $id;
 
    }
    if ( 'portfolio' == get_post_type( $post_id ) ) {
        $shortlink = home_url( '?p=' . $post_id );
    }
 
    return $shortlink;
}
add_filter( 'pre_get_shortlink', 'masih_shortlinks_for_portfolio', 10, 3 );

اول از طریق پیشخوان و مشاهده لینک پست تایپ مورد نظرتون، نام پست تایپ رو پیدا کنید (چون هر طراحی ممکنه یه نام دلخواه استفاده کرده باشه) و اونو در کد بالا بجای portfolio (که 2 بار استفاده شده) وارد کنید و ذخیره کنید.

با اینکار الان زمانی که لینکی مثل

http://site.ltd/?p=1234

رو برای یک پست تایپ وارد کنید، قطعا باید به پست مربوط به خودش ریدایرکت بشه.

 

موفق باشید.

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

در 7 ساعت قبل، Masih گفته است :

درود مجدد.

قابلیت کوتاه سازی لینک ها فقط و فقط برای پست تایپ " نوشته ها " یا همون post انجام میشه. برای پست تایپ های سفارشی مثل پرتفلیو باید این امکان رو به قالب اضافه کنید. عموما این ویژگی رو خود طراح به قالب ها و افزونه هایی که پست تایپ سفارشی اضافه میکنه، روی قالب سوار میکنه ولی به هر حال اگه لینک های کوتاه برای اون پست تایپ کار نمیکنه، از کد زیر استفاده کنید:

کد رو در فایل functions.php استفاده کنید:


function masih_shortlinks_for_portfolio( $shortlink, $id, $context ) {
    $post_id = 0;
 
    if ( 'query' == $context && is_singular( 'portfolio' ) ) {
        $post_id = get_queried_object_id();
 
    }
    elseif ( 'post' == $context ) {
        $post_id = $id;
 
    }
    if ( 'portfolio' == get_post_type( $post_id ) ) {
        $shortlink = home_url( '?p=' . $post_id );
    }
 
    return $shortlink;
}
add_filter( 'pre_get_shortlink', 'masih_shortlinks_for_portfolio', 10, 3 );

اول از طریق پیشخوان و مشاهده لینک پست تایپ مورد نظرتون، نام پست تایپ رو پیدا کنید (چون هر طراحی ممکنه یه نام دلخواه استفاده کرده باشه) و اونو در کد بالا بجای portfolio (که 2 بار استفاده شده) وارد کنید و ذخیره کنید.

با اینکار الان زمانی که لینکی مثل


http://site.ltd/?p=1234

رو برای یک پست تایپ وارد کنید، قطعا باید به پست مربوط به خودش ریدایرکت بشه.

 

موفق باشید.

من وارد کردم و به این صورت هست ,

function masih_shortlinks_for_portfolio( $shortlink, $id, $context ) {
    $post_id = 0;
 
    if ( 'query' == $context && is_singular( 'la_portfolio' ) ) {
        $post_id = get_queried_object_id();
 
    }
    elseif ( 'post' == $context ) {
        $post_id = $id;
 
    }
    if ( 'la_portfolio' == get_post_type( $post_id ) ) {
        $shortlink = home_url( '?p=' . $post_id );
    }
 
    return $shortlink;
}
add_filter( 'pre_get_shortlink', 'masih_shortlinks_for_portfolio', 10, 3 );

 

نام قالب : Negan

اما متاسفانه همچنان ارور 404 میده

پیوند یکتا فرقی نمیکنه روی چی باشه؟

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

تنظیمات پیوندیکتا رو یک بار بدون تغییرات ذخیره کنید.

در ضمن برای امتحان اول روی حالت پیش فرض قرار بدید پیوندیکتا رو تست کنید. اگر مشکل رفع شد روی حالت "نام نوشته" قرارش بدید.

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

مشکل حل نشد !اما فکر کنم فهمیدم مشکل از کججاست....

ظاهرا پیوند یکتا  لینک هارا عوض می کنم ,لینک نوشته و برگه تغییر می کنه اما برای potfolio تغییر نمیکنه ...

احتمال خیلی زیاد مشکل همینه 

اگر توانستید که راهنمایی کنید اگر نه که تا همینجا خیلی لطف کردید ♥

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

درود.

ذخیره کردن پیوندیکتا در واقع مشکل خطای 404 رو برای همه صفحات رفع میکنه. در اکثر موارد که پست تایپ جدیدی به سایت اضافه می کنیم، ممکنه خطای 404 دریافت بشه. ذخیره کردن پیوندیکتا باعث میشه آدرس صفحات مربوط به پست تایپ جدید آپدیت بشه و مشکل 404 رفع بشه. لزوما این نیست که بتونید حتما ساختار پیوندهای اون پست تایپ رو از بخش تنظیمات پیوندیکتا تغییر بدید. همین که اطلاعات پیوندیکتای کل وردپرس بروزرسانی بشه کافیه.

 

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

داخل سایت های خارجی بگردید بلکه راهی پیدا کردید.

موفق باشید.

لینک به دیدگاه
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

مهمان
این موضوع برای عدم ارسال قفل گردیده است.
×
×
  • اضافه کردن...