بهمن
1 سال پیش توسط بهمن مطرح شد
3 پاسخ

افزودن یک آیتم یا یک فیلد به تنظیمات صفحه برای جستجو و نمایش

وقت بخیر
در بخش داخلی (پنل مدیریت) و در بخش آیتم‌ها، گزینه‌های محدودی برای نمایش وجود دارد. تصمیم دارم یک فیلد دیگر به این بخش اضافه کنم. چطور امکان پذیر است؟
در حال حاضر: نوع - قیمت - تاریخ - شناسه و عنوان فایل قابل رویت یا جستجو است.
 تصویر


ثبت پرسش جدید
oss_vahid
تخصص : wp developer
@ossvahid 1 سال پیش مطرح شد
0

سلام ارادت
باید به یک اکشن و یک فیلتر منتصل بشید
یک فیلتر داریم بنام
manage_{POST_TYPE}_postscolumns
از فیلتر بالا برای افزودن یک ردیف جدید به ستون بالایی جدول استفاده میشه
manage
{POST_TYPE}_posts_custom_column
از اکشن بالا برای افزودن داده به ردیف های ستونی که با فیلتر بالا ایجاد کردید استفاده میشه

مثال

add_filter( 'manage_book_posts_columns', 'set_custom_edit_book_columns' );
function set_custom_edit_book_columns($columns) {
    unset( $columns['author'] );
    $columns['book_author'] = __( 'Author', 'your_text_domain' );
    $columns['publisher'] = __( 'Publisher', 'your_text_domain' );

    return $columns;
}

👆🏻
در کد بالا از طریق فیلتر ستون به پست تایپ بوک اضافه میکنیم

add_action( 'manage_book_posts_custom_column' , 'custom_book_column', 10, 2 );
function custom_book_column( $column, $post_id ) {
    switch ( $column ) {

        case 'book_author' :
            $terms = get_the_term_list( $post_id , 'book_author' , '' , ',' , '' );
            if ( is_string( $terms ) )
                echo $terms;
            else
                _e( 'Unable to get author(s)', 'your_text_domain' );
            break;

        case 'publisher' :
            echo get_post_meta( $post_id , 'publisher' , true ); 
            break;

    }
}

👆🏻
در کد بالا به اشکت متصل میشیم و از طریق switch نام ستون رو میگیرم سپس به هر ستونی که بخوایم میتونیم داده اضافه کنیم
ارگومان اول نام ستون رو برمیگردونه ارگومان دوم post_id


بهمن
تخصص : junior web developer
@b.fallahi 1 سال پیش مطرح شد
1

وقت بخیر
صمیمانه متشکرم. چون تسلط بالایی بر توسعه ندارم تلاش می‌کنم جزئیات رو دقیق مرور کنم تا بتونم اجراش کنم.
سپاس از راهنمایی


بهمن
تخصص : junior web developer
@b.fallahi 1 سال پیش مطرح شد
1

مشکل از طریق نصب یک افزونه برطرف شد.
از طریق سرنخ @ossvahid که در بالا اشاره شد: manage{POST_TYPE}_posts_custom_column شروع به جستجو کردم.
در نهایت افزونه Admin Columns رو نصب کردم و تونستم مشکل اضافه کردن و سفارشی کردن ستون های مدیریت وردپرس رو برطرف کنم.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام