• اطلاعیه ها

    • Morteza

      باهم بسازیم: اطلس ووکامرس و وردپرس   14/07/96

      تاپیک ایجاد شده برای بحث در جهت ایجاد یک منبع، ویکی، صفحات توضیحی و یا بخش آموزشی جامع برای وردپرس و متعلقات مختلف آن است. لطفا جهت مشارکت در این بحث، ارائه پیشنهاد و یا انتقاد به تاپیک فوق مراجعه کنید. باهم بسازیم: اطلس ووکامرس و وردپرس
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

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


لینک به پست

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

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

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

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


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

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

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


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

  • مطالب مشابه

    • توسط mrasoul
      با عرض سلام و خسته نباشید ... لطفا این صفحه را ببینید :
      صفحه مورد نظر
      در این صفحه و بعد از ویدئو یک فهرست وجود دارد با آیتمهایی مثلا
      1.Introduction
      2.Brackets Extensions
      و ... که در اصل سرفصل های این آموزش است که شامل یکسری زیر مجموعه هستند ... وقتی روی زیرمجموعه ها کلیک می کنید اون مجموعه را نشان می دهید . به عنوان مثال روی
      1.2The Extension Manager
      کلیک کنید ...
      من اگر بخوام یک پست آموزشی کامل بسازم و تو این پست این سرفصل ها رو تعریف کنم آیا وردپرس امکانی رو داره بدون اینکه برای هر فصل یک پست ساخت همه ی پستها را داخل یک پست نوشت ؟ یعنی یک پست چند صفحه ایی مثلا مقدمه در خود پست و در مقدمه سرفصل ها رو تعریف کنیم حالا همون پست چند صفحه را زیرمجموعه داشته باشد که این صفحه ها همون سرفصل ها باشند .
      چون اگر قرار باشد برای هر فصل یک پست بفرستم طبیعتا کار بسیار مشکل و زمان بری است چرا که در هرکدام از این پستها باید با زمینه دلخواه سرفصل ها را تعریف کنم و هربار که پست جدید بفرستم در داخل بقیه سرفصل های قبل باید بروم و در زمینه دلخوه لینک این سرفصل جدید را تعریف کنم
       
    • توسط lloyd
      سلام دوستان خوبم اگر کسی میتواند پوسته The Voux را در هاست من نصب کند لطفا به من اینجا اطلاع بدهد. خطای نصب: شیوه نامه گم شده است !
       
    • توسط shayan201680
      با سلام
      بنده یک سایت اصلی وردپرسی دارم و قرار شده که در ساب دامینشم از وردپرس استفاده کنم.
      الان میخوام کاری کنم که کاربران اگر در سایت اصلی ثبت نام کردند بتونند با همون مشخصات در ساب دامین نیز لاگین کنند و برعکس!
      ولی نمیدونم باید چکار کنم! 
      ممنون میشم اگر کسی بلده راهنمایی کنه، با تشکر... 
    • توسط dastjerdisf
      با سلام
      در بین اساتید کسی می تونه به من کمک کنه بگه چرا وقتی آدرس سایتم رو می نویسم اتومات این متن رو به اون اضافه می کنه/?i=1
      از مدیریت هاست پرسیدم میگند از کش مرورگر هستش اما چرا سایت های دیگه این جوری نیستند
      آدرس سایتم:http://hushmandyar.ir
    • توسط saeid1872
      سلام دوستان
      تو کمتر از یک ماه سایتم 61 ارور 500 ثبت کرده که در حال زیاد شدن هستش نمیدونم چرا این ارورهارو ثبت میکنه
      لطفا دلیلش رو بگید و اینکه چطور باید رفع کنم
      من خیلی اصلا حرفه ای نیستم فقط خواهشا جوری راهنمایی کنید که بتونم رفعش کنم.