pirooz

كد براي نمايش آخرين نويسنده‌هاي سايت در صفحه اصلي

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

با سلام

من احتياج به كدي دارم كه با اون يك اسلايدر ايجاد كنم با اين شرط كه نام نويسنده‌ي آخرين مطلب ارسال شده در سايت به اضافه لينك 3 تا پست از همون نويسنده را نمايش دهد. بعد از اون نويسنده مطلب بعدي را و همين‌طور تا آخر... تمام نويسنده‌ها را فهرست كند.

در ضمن اين كد تحت تأثير پيجينگ صفحه قرار نگيرد. يعني اگر به صفحه دوم رفتيم، مجدداً همان نويسنده‌اي را اول نمايش دهد كه در صفحه اول نمايش مي‌داد.

تا اونجايي كه از اين طرف و اون طرف خوندم، يك همچين چيزي قرار دادم:


<?php
$count_post = 0;
if (have_posts()) : while ($count_post < count(get_users('role=author'))) : the_post(); $count_post++ ;
?>
<ul>
<?php $recentposts = get_posts('numberposts=3&author='.get_the_author_ID() );
foreach ($recentposts as $post) : setup_postdata($post); ?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php endforeach; ?>
</ul>
<?php
endwhile;
wp_reset_query();
endif;
?>

اما اين كد چند تا اشكال داره:

1- نام نويسنده را نمي‌دونم چطور بايد توي اين ليست بيارم.

2- تحت تأثير پيجينگ صفحه قرار مي‌گيره و وقتي به صفحه دوم مي‌ريم، مقالات مربوط به نويسنده‌هاي صفحه دوم را فهرست مي‌كنه

3- با وجود اينكه كد ريست كوئري را در آخرش آوردم، اما پست‌ها را در صفحه اول نمايش نمي‌دهد.

با تشكر

0

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


لینک به پست

1 - نمایش نام با the_author

http://codex.wordpress.org/Function_Reference/the_author

2- تابع wp_reset_postdata و wp_reset_query را قبل از کوئری قرار دهید

3- دو تابع قبل را بعد از حلقه قرار دهید

5

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


لینک به پست

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

ميشه خواهش كنم كد را به صورت صحيح بازنويسي كنيد؟ خيلي متوجه نشدم.

با اين كدي كه نوشتم، كاربر ادمين را هم مياره و يكي از دسته‌ها هم بدون نام هست و يكي از نويسندگان هم دو بار تكرار ميشه. اين مشكل را بعد از اضافه كردن كد the_author متوجه شدم.

user1

  • This is a Test
  • Star Wars: The Clone Wars
  • Kicked In The Nuts World Record Holder

user8

  • Inkheart Movie
  • Funny Animation
  • 4th Goal Comedy Brisbane Roar v Perth Glory

user9

  • The Twilight Saga Eclipse Official Full Trailer (HD)
  • Funny Hugh Laurie & Stephen Fry comedy sketch! Your name, sir? – BBC comedy
  • The future for Paramotors

user10

  • Vanessa Hudgens Say Ok Music Video (Official with Zac Efron)
  • Star Wars: Retold (by someone who hasnt seen it)
  • FOOTBALL MADE IN AFRICA

user1

  • This is a Test
  • Star Wars: The Clone Wars
  • Kicked In The Nuts World Record Holder

user2

  • Transformers 2 Revenge of the Fallen Official Movie Trailer
  • Huge Rugby Hits!

admin

  • Selena Gomez & The Scene – Round & Round
  • Funny Video
  • Mr Bean – Teddy reads a book

user4

  • When I Look At You
  • COMEDY: Achmed The Dead Terrorist (ventriloquist)
  • Comedy Football

user6

  • Miley Cyrus – Cant Be Tamed
  • Ash Makes Fun Of Akshays Wig

  • This is a Test
  • Inkheart Movie
  • The Twilight Saga Eclipse Official Full Trailer (HD)

ویرایش شده در توسط pirooz
0

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


لینک به پست

مشكل ديگه اينه كه اگر يك نويسنده پستي نداشته باشه، به ازاي اون هم يك بار اين دسته‌ها درست مي‌شه فكر كنم اين قسمت را كه در بالا سبز كردم به خاطر همين باشه.

ولي نمي‌دونم ديگه چرا ادمين را ليست مي‌كنه اون كه رولش Administrator هست.؟!

0

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


لینک به پست

تابع get_the_author_ID که در کد استفاده می کنید از وردپرس 2.8 حذف شده. شاید چون خروجی نداره همه رول ها رو نمایش میده.

اگر هم تعداد مدیرها ثابت هست میتونید در تابع get_users اونها رو با خاصیت exclude نادیده بگیرید:

http://codex.wordpress.org/Function_Reference/get_users

در مورد اونهایی که پست ندارن باید قبل از foreach شرط بزارید که $recentposts مقداری داره یا خیر. یا اون رو count کنید و بعد foreach رو اجرا کنید.

3

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


لینک به پست

متشكرم از پاسختون

اما تعداد نويسنده‌ها ثابت نيستند. مي‌فرماييد چه كار كنم؟

0

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


لینک به پست

ضمناً مشكل پيجينگ صفحه و عدم نمايش پست‌ها حل نشده

0

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


لینک به پست

مسئله صفحه بندی را میتوانید با تابع wp_reset_postdata و wp_reset_query حل کنید

برای لیست نویسنده ها

http://codex.wordpress.org/Function_Reference/wp_list_authors

3

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


لینک به پست

متشكرم از پاسختون

اما تعداد نويسنده‌ها ثابت نيستند. مي‌فرماييد چه كار كنم؟

میتونید از طریق سلکت به دیتابیس رول های مدیریت رو پیدا و کاربران رو توی آرایه بریزید و بعد exclude کنید. فقط بحث نمایش ندادن مدیر هست درسته؟

2

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


لینک به پست

دوستان من حرفه‌ای نیستم و با این توضیحات نتونستنم کاری بکنم. متأسفانه با کدنویسی php و تابع‌های وردپرس آشنا نیستم.

به هر حال من این درخواست را در پونیشا به عنوان یک پروژه ثبت کردم. دوستانی که مایل هستند این کار را انجام دهند خواهش می‌کنم پیشنهادهای خودشون اینجا ارسال کنند.

متشکر می‌شم کمک کنید. مخصوصا از آقا مرتضی کمک می‌خوام.

0

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


لینک به پست

شما دقیقا موارد و مشکلاتتون رو لیست وارد همینجا بنویسید. من کد رو براتون آماده کنم(در اوغات بیکاریم ;)).

1

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


لینک به پست

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

مهربانا...!

خيلي لطف داريد.

خواسته من دقيقاً همون چيزي هست كه در پست اول در موردش كمك خواستم.

در واقع يك اسلايدر از نويسندگان سايت كه با jquery امكان نمايش بقيه اونها فراهم ميشه.

اگر شما زحمت بكشيد، فقط بخش استخراج نويسنده‌ها به همراه لينك سه تا از نوشته‌هاشون.

تعداد نويسنده‌ها هم مشخص نيست.

البته با توجه به فعاليتي كه از شما در اينجا و اونجا مشاهده مي‌شه، بعيد مي‌دونم حالا حالا نوبت به ما برسه شما وقت فراغتي پيدا كنيد.

البته شما در اين زمينه خيلي كمك كرديد ولي چه كار كنم كه من خيلي وارد نيستم :blink:

ویرایش شده در توسط pirooz
0

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


لینک به پست

من روی این بخش کار میکنم.

پ.ن:

اونجا خیلی وقت هست فعالیتی نداریم ;)

1

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


لینک به پست

اگر زحمت می‌کشید و دو سه روزه این کار دست ما رو میگره لطف کنید خبر بدید که پروژه رو توی پونیشا لغو کنم.

البته من دوست داشتم زحمت شما بدون اجر نباشه.

خیلی لطف دارید.

0

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


لینک به پست

شما اونجا رو میتونید لغو کنید. یا من یا یکی از دوستان کمکتون میکنه.

1

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


لینک به پست

بي‌نهايت از لطفتون متشكرم.

بي‌صبرانه منتظرم.

0

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


لینک به پست

:wacko: :wacko: :wacko:

اگر بدونم كاري انجام شده يا نه خيلي خوب مي‌شه.

0

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


لینک به پست

بله در حال اجرا هست.

تکمیل شد در تاپیک قرار میدم.

1

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


لینک به پست

این کد رو تست کنید:

<?php
$exclude = '1';
$all_admins = get_users('role=administrator');
foreach ($all_admins as $admins) {
$exclude .= ','.$admins->ID;
}
$users = get_users("exclude=$exclude");
foreach ($users as $user) {
$author_id = $user->ID;
$author_name = get_userdata($author_id)->display_name;

echo $author_name;
query_posts("showposts=3&author=$author_id");
while (have_posts()) : the_post();
?>
<ul>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
</ul>
<?php
endwhile;
wp_reset_query();

}//end foreach
?>

0

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


لینک به پست

آقا خيلي سالاري

فقط يه مشكل هست.

اين كد نويسندگان را بر اساس نام نويسنده مرتب مي‌كنه.

user1

post 3 from user 1

post 2 from user 1

post 1 from user 1

user2

user3

user4

آنچه من مي‌خوام مرتب‌سازي نويسنده‌ها بر اساس آخرين ارسال است.

user 4

post 3 from user 4

post 2 from user 4

post 1 from user 4

user2

user5

user1

به نظرم، دوتا حلقه بايد توي هم باشه. يكي براي استخراج نويسنده‌ها بر اساس آخرين نوشته‌ها

و ديگري استخراج نوشته‌هاي هر نويسنده.

خيلي ممنونم.

0

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


لینک به پست

الان لیست درست هست و فقط نیاز به مرتب سازی نویسندگان براساس تاریخ ارسال آخرشون دارید؟

1

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


لینک به پست

توی مثال نمونه‌اش را ذکر کردم.

الان کاربرها بر اساس نام کاربری مرتب شده‌اند.

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

به همین ترتیب پست بعدی. اگر مربوط به کاربر اول بود که نامش ذکر شده است (و بالتبع عنوان پست هم جزء مطالب آن نویسنده آمده است) این پست نادیده گرفته می‌شود و اگر مربوط به نویسنده جدید هست، نام نویسنده و سه تا از نوشته‌های او ذکر می‌شود.

در نتیجه همیشه در قسمت بالای لیست، نویسنده‌ای قرار می‌گیرد که آخرین پست را ارسال کرده است.

بابا شب زنده‌دار.... ;)

خیلی متشکرم.

0

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


لینک به پست

حقیقتش کمی گنگ شد برام!

شما یک عکس شماتیک از موردتون بکشید و اینجا قرار بدید تا براتون تکمیل کنم.

1

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


لینک به پست

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

آقا مرتضي خيلي لطف داريد. بفرماييد. اين هم تصوير صفحه اول

post-1440-0-04086700-1360517613_thumb.pn

توجه بفرماييد كه

1 - من 10 تا نويسنده را مي‌خواهم فهرست كنم كه در اينجا شش‌تا را براي مثال آورده‌ام

2 - نويسنده‌هاي شماره 3، 4، 5 و 6 هركدام چند پست دارند كه در صفحه اول نيامده ولي در كل، مطالبي را به سايت ارسال كرده‌اند. پس بايد در ليست نوشته‌هاشون درج بشود.

نمي‌دونم چرا ايميل آگاه‌سازي پاسخ‌ها براي من نيومده. دو روز هست كه منتظر جواب هستم. فكر كردم كسي به فكر من نيست. اين را هم كه ديدم، به صورت اتفاقي دنبال چيز ديگه‌اي اومده بودم توي سايت كه ديدم مطلب جديد هست. :( فكر كنم چون عجله دارم اين بلاها سرم مياد. ;)

ویرایش شده در توسط pirooz
0

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


لینک به پست
1 - من 10 تا نويسنده را مي‌خواهم فهرست كنم كه در اينجا شش‌تا را براي مثال آورده‌ام

این مهم نیست. میشه محدودش کرد.

2 - نويسنده‌هاي شماره 3، 4، 5 و 6 هركدام چند پست دارند كه در صفحه اول نيامده ولي در كل، مطالبي را به سايت ارسال كرده‌اند. پس بايد در ليست نوشته‌هاشون درج بشود.

خوب اینهم لحاظ شده.اسمشون میاد و فقط براساس پست هایی که خودشون دادن در بالا لیست میشن.

اما من متوجه نشدم الان مشکلی که در کد مونده چی هست؟!

میخواین لیست نویسنده ها براساس تاریخ پستشون جابجا بشه یا اینکه پست هاشون براساس تاریخ لیست بشن؟

1

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


لینک به پست

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

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

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

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


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

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

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


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

  • مطالب مشابه

    • توسط naderi
      سلام .. برای توسعه یک وب سایت با قالب Eduma وردپرس میخوایم یه سری قابلیت ها رو بهش اضافه کنیم .. از دوستان کسی هست که بتونه به ما کمک کنه؟
    • توسط Hamid_92
      سلام خسته نباشید 
      من در یک وبسایت خارجی که خدمات هاست و دامنه رایگان میداد یک هاست و دامنه رایگان ساختم و میخواستم که وردپرس رو در file manager آپلود کنم و نصبش کنم و با توجه به آموزش های داخل اینترنتی باید اون فایل وردپرس رو در فایل public_html آپلود می کردم اما به محض اینکه از داخل CPanel وارد file manager هاست شدم با تصویر زیر برخورد کردم

      و پوشه ای به نام Public_html تعریف نشده بود تا فایل وردپرس رو بارگذاری کنم ممنون میشم راهنماییم کنید
      * ضمنا در داخل فایل htdocs فایلی به نام files for your website should be uploaded here! ذخیره شده بود به صورت زیر

    • توسط helen94
      سلام دوستان. من دنبال افزونه یا ابزارکی می گردم که باهاش در صفحه اصلی سایتم یه باکسی ایجاد کنم که در اون آخرین پست های سایت رو نشون بده. به این شکل که جدیدترین پست رو به همراه تصویر شاخصش در قسمت بالا به شکل بزرگتر نشون بده و در قسمت زیرش پست های قبل تر رو نشون بده. تصویر افزونه ی موردنظرم رو ضمیمه کردم به این پست.
      قالبی هم که ازش استفاده میکنم قالب استادیار هست.
      من قبلا موارد این چنینی رو در خیلی سایت ها دیدم، اما اسم افزونه یا ابزاری که باهاش این کار رو کردن نمیدونم.
      ممنون میشم راهنماییم کنید.


    • توسط 3pd
      با سلام خدمت دوستان
      ممنون میشم راهنمایی کنید که با چه افزونه ای این امکان وجود داره که بدون ایجاد برگه برای گالری ها ، بتونیم با استفاده از تصویر شاخص چندین گالری رو مثلا در صفحه اصلی سایت نمایش بدیم؟ افزونه ای میخوام باشه که برای گالری ها بشه دسته بندی ایجاد کرد.
      من با استفاده از افزونه ی foogallery، چند گالری ایجاد کردم و طرح شبکه بندی رو هم انجام دادم. با استفاده از ویژوال کامپوزر ردیف ایجاد کردم و از المان شبکه بندی استفاده کردم، در قسمت تنظیمات شبکه بندی نمایش گالری رو انتخاب کردم اما نمیشه انتخاب کرد که کدوم گالری! و صرفا میشه انتخاب کرد که چندتا از جدیدترین ها یا قدیمی ترین ها رو نمایش بده..
    • توسط hamasehyaran
      سلام 
      روزبخیر
      من یه تازه وارد وردپرسی هستم ، حدود 9 ماهه با وردپرس مشغولم .
      کدنویسی هم در حد html و css بلدم. php نمیدونم
      الان هم دارم روی سایت برای انتشارات کتاب کار میکنم.
      یه کاری می خوام انجام بدم که مدت ها درگیرشم.
      میخوام توی صفحه محصولاتم، نویسنده کتاب به صورت لینک شده بیاد و شخص با کلیک کردن روی اون به صفحه نویسنده هدایت بشه.(مثل عکس پیوست)
      چند تا کار انجام دادم ، مثلا با taxonomy ها کار  کردم ولی بلد نبودم ازشون استفاده کنم.
       
      لطفا در این مورد رهنماییم کنید.