কাস্টম পোস্ট টাইপ একক পৃষ্ঠা 404 ত্রুটি প্রদান করে


17

আমার কাছে কাস্টম পোস্ট টাইপ রয়েছে slide। এটিতে সামগ্রী এবং কিছু কাস্টম ক্ষেত্র রয়েছে। আমি চাই ডাব্লু দেখানোর জন্য single.phpথিম বা single-slide.phpযখন ব্যবহারকারী স্লাইড একক পৃষ্ঠার লিঙ্ক ক্লিক থিম। আমার সমস্যাটি হ'ল ডাব্লুপি 404 ত্রুটি ছুড়ে দেয়, যখন আমি একক স্লাইড পৃষ্ঠাটি দেখতে চাই।

এখানে আমার কোডটি রয়েছে functions.php:

function create_slide_post_type() {
    $labels = array(
        'name'               => _x( 'اسلایدها', 'i2sa' ),
        'singular_name'      => _x( 'اسلاید', 'i2sa' ),
        'menu_name'          => _x( 'اسلایدها', 'i2sa' ),
        'name_admin_bar'     => _x( 'اسلاید', 'i2sa' ),
        'add_new'            => _x( 'افزودن', 'i2sa' ),
        'add_new_item'       => __( 'افزودن اسلاید جدید', 'i2sa' ),
        'new_item'           => __( 'اسلاید جدید', 'i2sa' ),
        'edit_item'          => __( 'ویرایش اسلاید', 'i2sa' ),
        'view_item'          => __( 'نمایش اسلاید', 'i2sa' ),
        'all_items'          => __( 'همه اسلایدها', 'i2sa' ),
        'search_items'       => __( 'جستجوی اسلایدها', 'i2sa' ),
        'parent_item_colon'  => __( 'اسلایدهای مادر:', 'i2sa' ),
        'not_found'          => __( 'اسلایدی پیدا نشد.', 'i2sa' ),
        'not_found_in_trash' => __( 'اسلایدی در زباله دان پیدا نشد.', 'i2sa' )
    );

    $args = array(
        'labels'             => $labels,
        'description'        => "اسلایدهای شرکت i2sa",
        'public'             => true,
        'exclude_from_search'=> true,
        'publicly_queryable' => false,
        'show_in_nav_menus'  => false,
        'menu_icon'          => 'dashicons-images-alt2',
        'show_ui'            => true,
        'show_in_menu'       => true,
        'query_var'          => true,
        'rewrite'            => array( 'slug' => 'slide' ),
        'capability_type'    => 'post',
        'has_archive'        => true,
        'hierarchical'       => false,
        'menu_position'      => null,
        'supports'           => array( 'title', 'editor', 'thumbnail', 'excerpt' ),
    );
    register_post_type( 'slide', $args );
    flush_rewrite_rules();
}
add_action( 'init', 'create_slide_post_type' );

উত্তর:


41

আপনার কাস্টম পোস্টের ধরণটি নিবন্ধ publicly_queryableকরার trueসময় আপনার যুক্তিটি সেট করা উচিত ।

নোট করুন : flush_rewrite_rules()পৃষ্ঠাটি একবার বা দু'বার যোগ করুন , রিফ্রেশ করুন এবং এটি তাত্ক্ষণিকভাবে সরান EM flush_rewrite_rules()কোডেক্সের মতো বিধানগুলির অধীনে আপনি রাখবেন না ।

এটি একটি ব্যয়বহুল অপারেশন তাই এটি কেবলমাত্র যখন প্রয়োজন তখনই ব্যবহার করা উচিত


1
ওহ বাহ, এখানেও কাজ করেছে। এটি সম্পূর্ণ অপ্রকাশিত ছিল। ধন্যবাদ!
টবি দেশানে

আমার জন্য কাজ! ধন্যবাদ!
জেমসহক্স

হ্যাঁ! শেষ পর্যন্ত উভয় কাজ করার পরে এটি কাজ করে।
এরিক

16

ড্যাশবোর্ড -> সেটিংস-> পারমালিঙ্ক পৃষ্ঠা থেকে পুনর্লিখনের নিয়মটি ফ্লাশ করুন। সেভ বোতামে ক্লিক করুন এবং তারপরে আপনার স্লাইডের বিশদ পৃষ্ঠাটি পরীক্ষা করুন। এটি এখন কাজ করবে। অন্যথায় আপনি flush_rewrite_rules()আপনার create_slide_post_type()ফাংশনে এই কোডটি লিখতে পারেন । কোডেক্স দেখুন


2
পারমলিংকের সেভ বোতামে ক্লিক করা আমার পক্ষে কাজ করেছিল। আমি সাইটটি একটি প্রোডাকশন সার্ভারে স্থানান্তরিত করার পরে, সমস্ত কাস্টম পোস্ট ধরণের লিঙ্কগুলি ভেঙে গিয়েছিল। এটি এটি স্থির করে। ধন্যবাদ!
cbloss793

+1 কেবলমাত্র পারমালিক্সে সেভ ক্লিক করে আমার জন্য কাজ করেছিল।
মার্সএন্ডব্যাক

পারমালিঙ্কস সংরক্ষণ কাজ করে। তবে দয়া করে উত্পাদন কোডে কল করার flush_rewrite_rules()পরে যুক্ত না করে register_post_type()(অর্থাত্ ভিতরে create_slide_post_type) inside আপনি কোনও নতুন পোস্ট টাইপ যুক্ত করেছেন তা নির্ধারণ করতে প্লাগ-অ্যাক্টিভেশন হুক বা একটি বিকল্প মান ব্যবহার করুন
ফিলিপ

6

আপনার পারমলিক্স রিফ্রেশ অ্যাডমিন-> সেটিংস-> পারমালিঙ্কস এ যান এবং সেভ করুন hit এটি আপনার পারমিলিকগুলি রিফ্রেশ করে এবং সহায়তা করা উচিত, বিশেষত যদি আপনি পুনর্লিখন ('পুনর্লিখন' => অ্যারে ('স্লাগ' => 'স্লাইড')) পরিবর্তন করছেন


1

আপনার ভার্চুয়ালহোস্ট অ্যাপাচে আপনার নিম্নলিখিতটি সেট করা উচিত:

    <Directory /var/www/html/wordpress>
            AllowOverride All
    </Directory>

তারপরে, আপনার পারমালিঙ্কগুলি রিফ্রেশ করুন: ডাব্লুপি-প্রশাসক-> সেটিংস-> পারমলিংক। এটা আমার জন্য কাজ।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.