mani261

تغییر نویسنده مطلب به کاربر با نقش مشترک

4 پست در این موضوع قرار دارد

سلام وردپرسی‌های عزیز؛

من قصد دارم برای یک نوع پست سفارشی که کاربران با نقش مشترک ارسال می‌کنند امکان اختصاص نام کاربر به عنوان نویسنده رو بگذارم. وردپرس توی پیشخوان ستون Author نام فرستنده رو درست نشون می‌ده اما در حالت ویرایش فقط نام نویسندگان مدیر سایت دیده می‌شه.

از این سایت کد زیر رو پیدا کردم که با تغییر پارامتر، تمام کاربران رو در بخش ویرایش نشون می‌ده منتها مشکل اینه که به صورت پیش‌فرض، کاربر نویسنده اصلی انتخاب نمی‌شه و با هر بار ویرایش مجدد نام نویسنده به اول فهرست (یا ادمین) تغییر پیدا می‌کنه. چه جوری

post_author

رو انتخاب کنم که هر بار تغییر نکنه؟

 

add_filter('wp_dropdown_users', 'MySwitchUser');
function MySwitchUser($output)
{

    //global $post is available here, hence you can check for the post type here
    $users = get_users();

    $output = "<select id=\"post_author_override\" name=\"post_author_override\" class=\"\">";

    //Leave the admin in the list
    $output .= "<option value=\"1\">Admin</option>";
    foreach($users as $user)
    {
        $sel = ($post->post_author == $user->ID)?"selected='selected'":'';
        $output .= '<option value="'.$user->ID.'"'.$sel.'>'.$user->display_name.'</option>';
    }
    $output .= "</select>";

    return $output;
}

 

0

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


لینک به پست

سلام. یه نگاهی به این لینک بندازید:

https://wordpress.stackexchange.com/questions/59314/how-do-i-change-the-author-of-a-custom-post-type

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

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

 

1

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


لینک به پست

ممنون از پاسخ. در مورد اول پشتیبانی از author در کد داخل لینک وجود دارد. مشکل این است که فقط مدیران سایت رالیست می‌کند نه کاربری که مطلب را ارسال کرده.

در مورد ایراد کد فعلی، متوجه راه‌حلتون نشدم. می‌شه لطفاً کلیدواژه‌ای برای سرچ مثالش بگید که به پاسخ برسم؟

0

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


لینک به پست

ارسال شده در (ویرایش شده)

مشکل با این قطعه کد که کسی در همون لینک اولی پیشنهاد کرده بود حل شد. فقط من آرگومان get_users رو خالی گذاشتم که همهٔ نقش‌های عضو سایت رو بخونه:

add_filter('wp_dropdown_users', 'MySwitchUser');
function MySwitchUser()
{
    global $post; // remove if not needed
    //global $post is available here, hence you can check for the post type here
    $users = get_users();

    echo'<select id="post_author_override" name="post_author_override" class="">';

    echo'<option value="1">Admin</option>';

    foreach($users as $user)
    {
        echo '<option value="'.$user->ID.'"';

        if ($post->post_author == $user->ID){ echo 'selected="selected"'; }

        echo'>';
        echo $user->display_name.'</option>';     
    }
    echo'</select>';

}

دستور شرطی باعث می‌شه کاربر نویسنده رو بفهمه و انتخاب کنه که در کد اول ایراد داشت و درست کار نمی‌کرد.

ویرایش شده در توسط mani261
1

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


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط logomaster
      سلام 
      دوستان ؛
      بنده و مدیر وبسایت گاها پست منتشر میکنیم ، اما به یک نویسنده ثابت که حداقل در روز یک پست منتشر کنه نیاز داریم . (درحال حاضر برای دریافت بازخورد ، فقط یک نویسنده)
      حقوق نویسنده :
      به صورت ماهانه پرداخت میشود و به ازای هر پست با شرایط زیر (3000 تومان)
      شرایط نویسنده :
      1- فعالیت وبسایت در زمینه طراحی برند ، هویت بصری و گرافیک هست ، بنابراین برای کیفیت پست های ارسالی قاعدتا باید به طراحی و گرافیک تا حدودی تسلط داشته باشید
      2- آشنایی کافی با نرم افزار فتوشاپ . (جهت ویرایش ساده و جزئی تصاویر پست ها) .
      3- تسلط کافی به زبان انگلیسی (جهت ترجمه مطالب از وبسایت ها خارجی)
      شرایط پست های ارسالی :
      1- تعداد کلمات بین 350 تا 500 یا بیشتر . (از ، با ، در ، به ، جز کلمات محسوب نمی شود)
      2- هرگز از بیان محاوره ای استفاده نشود . به عنوان مثال به جای (نظرتون در مورد این مطلب چیه ؟) از (نظر شما درمورد این مطلب چیست؟) استفاده شود.
      3- تصویر شاخص پست ها رو خود ما بعد از انتشار اضافه میکنیم (ما بروزرسانی میکنیم). اما در ابتدای هر پست قبل از شروع مطلب ، باید از تصاویر مرتبط با موضوع پست استفاده کنید (تصاویر هرگز کپی نباشد و در زیر هر تصویر ترجیحا نام logomaster.ir قرار داده شود) . همچنین در بین پاراگراف ها در صورت امکان و ترجیحا از تصاویر مرتبط استفاده شود. یک نمونه از پست با کیفیت قابل قبول از نظر تصاویر و نگارش goo.gl/KteWjA
      4- مطالب باید کاملا اختصاصی ، دارای محتوای خوب و مناسب باشد . حتی یک خط کپی برداری (پایان همکاری) .  
      5- مطالب یا کاملا اختصاصی و از دانش شخصی شما باشد و یا ترجمه از وبسایت های خارجی
      6- بیان روان و قابل فهم. (جمله بندی صحیح)
      7- پاراگراف بندی مناسب که باعث خستگی چشم نشود 
      8- حدود 70 پست در سایت منتشر شده که تقریبا 20 پست آن آموزشی ست . پست های ارسالی شما نباید مشابه پست های قبل باشد
      9- برچسب ها باید کاملا مرتبط و حداکثر 7 برچسب برای هر پست باشد.
      10- عناوین باید بصورت بولد (ضخیم) و با تگ h3 باشد
      تصاویری که در پست ها استفاده میکنید نیاز به هیچ افکت و تغییر خاصی ندارد و فقط به یک تغییرات ساده و جزئی نیاز داره (مانند لینکی که در بالا میبینید) بنابراین کار سختی پیش رو ندارید و انتشار "یک پست" در روز نیز برای ما قابل پذیرش خواهد بود.
      لطفا جهت همکاری فقط و فقط با اطلاعات تماس زیر در ارتباط باشید (نه پاسخ به این تیکت و ارسال پیام خصوصی)
      ***
    • توسط Zahramz
      سلام. وردپرس افزونه ای برای مدیریت نویسنده های سایت مثل سایتهای زومیت یا خوگر  داره؟ 
       

       
    • توسط mjrajaei
      سلام
      دنبال چند نویسنده حرفه ای هستم
      اگر میتونید جوری مطلب بزنید که از گوگل مطالبتون ورودی بگیره  پس به من پیام بدید
      ماه اول تست تا بدونیم چند مرده حلاجید !
      ماه دوم در صورت تایید از 500 هزار تومن تا 1 میلیون تومن ثابت و ماهیانه پرداخت میشه
      مهم نیست روزانه 100 تا ملب ارسال میکنید یا 5 تا ! مهم ورودی گرفتن مطالب از گوگل هست
      لطفا نمونه داشته باشید
      تماس و یا پیام در تلگرام https://telegram.me/mim_R
      09127473633
    • توسط mjrajaei
      سلام دوستان عزیز
      به دنبال نویسنده هستم برای سایت وردپرسی
      نویسنده معمولی زیاد داشتم که فقط کپی میکردن و رنک و بازدید سایت ر کاهش دادن به جای افزایش !!
      اگر کسی هست که به کارش مطمئن هستش و مطالب واقعا حرفه ای میذاره ( هر زمینه ای )  پیام بده در تلگرام تا صحبت کنیم    https://telegram.me/mim_R
      درواقع نویسنده ای که هر مطلبش توی گوگل ورودی بیاره برای سایت  -پس  لطفا کپی کارها پیام ندن و وقت خودشون و بنده ر هم نگیرن
      البته ماه اول فقط 50 تومن پرداخت میکنم و بعد از یک ماه اگر کارآمدی نویسنده ثابت شد بهم تا 1 میلیون تومان هم ماهیانه پرداخت میکنیم
    • توسط DariushGreat
      سلام
      آیا راهی هست که یک نقش کاربری - چه از backend و چه از frontend - محدود بشه و نتونه بیشتر از یک سقف معین ارسال داشته باشه؟
      ممنون