کد وردپرس : نمایش تصادفی مطالب در قالب سایت بدون افزونه
یکی از روش های نمایش پست های قدیمی سایت ها, نمایش تصادفی مطالب می باشد. به این صورت که در هر بار باز شدن صفحه در مرورگر کاربر یک سری مطلب به صورت تصادفی به نمایش در می آیند. نمایش مطالب به این صورت می تواند شانس دیده شدن آن مطالب را توسط کاربران به مراتب افزایش دهد.
در وردپرس افزونه های متعددی برای افزودن قابلیت پست های تصادفی به سایت وجود دارد اما در این مطلب از سری مطالب هک و کدهای وردپرس می خواهیم بدون استفاده از افزونه ها, تنها با یک حلقه ساده, مطالب را به صورت تصادفی در قالب سایت به نمایش در آوریم.
<li><h2>مطالب تصادفی</h2> <ul> <?php $posts = get_posts('orderby=rand&numberposts=5'); foreach($posts as $post) { ?> <li><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a> </li> <?php } ?> </ul> </li>
خوب تنها کافی است تا کد بالا را در جای مناسبی از فایل های قالب قرار دهید. مثلا اگر بخواهید لینک این مطالب در نوار کناری قالب دیده شود باید کدهای معرفی شده در بالا را در فایل sidebar.php قرار دهید. اگر کمی با کد های وردپرس و همچنین css آشنا باشید می توانید قابلیت های مختلفی مثل نمایش تصاویر شاخص هر مطلب یا تاریخ ارسال مطالب و همچنین افکت های مختلفی را نیز به آنها اضافه کنید.
دستتون درد نکنه، واقعا بدون افزونه و خیلی راحت می شه بسیاری از کارهارو انجام داد
بسیار ممنون بابت وقتی که قرار دادید آموزش بسیار مفیدی بود
سلام
من یه سوال دارم اما مطلبی که در خصوص سوال من باشه ندیدم اینجا میپرسم امیدوارم مشکلی نداشته باشه و راهنمایی کنید
الان در قالب شما وقتی وارد homepage یا ادرس سایت صفحه اول میشیم با صفحه اصلی روبرو هستیم که مثلا یه اسلایدر بالا داره و یکی دو تا از مطالب شما هم در صفحه نخست هستند
و بعد یک منو هست بنام وبلاگ که مقالاتی که مینویسید در اون منو و صفحه قرار میگیرند
ایا برای ساخت منوی وبلاگ یک صفحه page ساختید و اونو بعنوان منو قرار دادید یا یک category بنام وبلاگ ساختید
اگر من بخوام یک پیج با نام وبلاگ بسازم و مقالات را در اون قرار بدم و همین پیج را بعنوان منو هم انتخاب کنم چطور میتونم بهش بگم که فقط مقالات در این صفحه قرار بگیرن و مثلا اگر اموزش نوشتم باز بره توی یه پیج بنام اموزش که بشه منوی بعدی من
نمیدونم اما امیدوارم تونسته باشم منظورم را برسونم
فقط میخوام بدونم که شما برای منوی وبلاگ از یک پیج در ساخت این منو استفاده کردید یا یک category
و اگر پیج هست الان چطور میتونید مقالاتتون را به فقط به پیج وبلاگ هدایت کنید و وقتی یک مطلب جدید مینویسید بدون اینکه به صفحه اصلی homepage بیاد فقط در پیج وبلاگ بره
ممنونم و امیدوارم تونسته باشم برسونم منظورم را
و امید که راهنمایی کنید
با سپاس ازز شما
اول اینکه برای ساخت منو در وردپرس به راحتی می تونید از فهرست های وردپرس استفاده کنید ( آموزش گام به گام ساخت منو کشویی برای وردپرس). در روکش برای ساخت بخش وبلاگ ما از دسته بندی های خود وردپرس استتفاده کردیم با این تفاوت که عبارت category را از مبنای دسته بندی ها حذف کردیم. شما می تونید به این شکل عمل کنید یا اینکه یک قالب برگه بسازید و داخل اون مطالب یک دسته خاص را فراخوانی کنید (نمایش نوشته های اخیر یک دسته خاص در وردپرس). بعد یک برگه بسازید و قالب اون را همین قالبی که درست کردید تنظیم کنید.
ببینید من میخوام یک پیج سازم
وبعد اون پیج را بعنوان منو قرار بدم
تا اینجا مشکلی ندارم – یک پیج جدید میسازم و اون پیج را در منو بعنوان یکی از منو هام قرار میدم
اما حالا میخوام وقتی کاربر وارد سایت من میشه و روزی منو وبلاگ مثلا کلیک میکنه وارد صفحه ای بشه که تمام مقالات من در اون قرار داره
و من هم هر مقاله جدیدی که مینویسم بره به همین صفحه وبلاگ
و در homepage اخرین مطالب را در یکی از سایدبار هام نشون بدم ( برای نشون دادم اخرین مطالب در ساید بار هم مشکلی ندارم )
حالا فقط مشکل من اینه
در اون پیجی که بنام وبلاگ میسازم و بعنوان منوی وبلاگ هم انتخابش میکنم چطور و چکار باید انجام بدم که همشه تا یک مقاله جدید مینویسم بره و حالا یه بصورت از اول به اخر یا از اخر به اول در اون پیج وبلاگ قرار بگیره
در اون پیج وبلاگ چه دستوری را باید بکار ببرم تا بتونه دسته مقالات من را همیشه فراخوانی کنه
ممنون میشم یکم واضح تر بفرمایید و راهنمایی کنید
یا بزبان ساده تر من چه چیزی در اون پیج وبلاگ قرار بدم همیشه دسته ( category ) مقالات منو فراخوانی کنه
با سپاس از شما
خوب همونطور که گفتم شما می تونید یک قالب برگه جدید درست کنید (به زودی یک آموزش در این مورد در سایت منتشر خواهد شد) و بعد مقالات منتشر شده در دسته مورد نظرتون را درون این قالب برگه فراخوانی کنید.
سلام استاد شعبانی
ببخشید یک سوال داشتم ما چطوری میتونیم از مثلا یک پلاگینی مانند پلاگین نظرات استفاده کنیم بدون انکه ان را نصب کنیم یعنی توی قالب بزاریم و وقتی که قالب نصب میشه اونم همراهش نصب بشه و نیازی به نصب جدا نداشته باشه
باتشکر
اگر بتونید کدهای موجود در فایل های افزونه را به درستی در فایل فانکشن قالب قرار بدید در زمان فعال شدن قالب افزونه هم فعال خواهد شد
مرسی واقعا نیاز داشتم به این کار خیلی خوب بود
با سلام
من میخوام فال حافظ برای سایتم به صورت اختصاصی ایجاد کنم.میخوام همه ابیات رو که بصورت عکس است رو در هر پست ارسال کنم.
بعد یه دکمه ایجاد کنم که رندم پست انتخاب کنه.و با هربار زدن این دکمه تصادفی یکی از ابیات رو نشون بده میشه بگید چوری اینکارو بکنم؟
با تشکر
به شکل های مختلفی می تونید چنین چیزی را درست کنید ولی یکی از روش هایی که به نظر من جالبتر و همچنین انعطاف تر از همه هست, استفاده از پست سفارشی وردپرس می باشد. به این شکل که شما یک پست سفارشی برای فال حافظ درست کنید و درون این پست سفارشی عکس ها را قرار بدید بعد با استفاده از این آموزش یک دکمه ایجاد کنید که هر دفعه یکی از این پست ها را به صورت تصادفی باز کنه.
سلام استاد شعبانی
ببخشید من می خوام تمام لینکهای سایت در تب جدید باز بشه .. انواع افزونه رو هم امتحان کردم ولی کار نمی کنن .. میشه منو راهنمایی کنید ؟
مورد بعد هم قالبی که خریم نمیشه ای دی هاش رو جایگزین کرد مثلا وقتی جایگزین می کنیم منوهای از پیش تعریف شده دوباره مثل پیش فرض سازنده میاد و نه طبق دسته بندی من و اینکه ایا میشه اون شکلکهای کناری منوها رو که سازنده ساخته تغییر داد ؟ .. میشه زحمت بکشید برام درستش کنید ؟
با تشکر
۱- شما برای باز شدن لینک ها در صفحه جدید باید به تگ a صفت target با مقدار _blank را بدید. برای این کار می تونید ابتدا همه لینک های موجود در قالب را به این شکل تغییر بدید و در مطالب هم از این خاصیت استفاده کنید.
۲- منظورتون از id چی هست؟ در اکثر قالب ها منو ها رو می تونید از طریق بخش فهرست ها مدریت کنید ولی برای اینکه مشکلاتی که با قالب دارید رفع بشه بهتر هست با طراح اصلی قالب تماس بگیرید.
سلام خداقوت ببخشید من یه مشکلی در وردپرسم دارم ممنون میشم کمکم کنید
میخام یه پست ثابت اوله همه ی صفحاتم داشته باشم که ظاهرش با بقیه پستام فرق داشته باشه! راهی هست؟
ممنون از سایت خوبتون
اگر فقط می خواهید ظاهر اولین پست با بقیه فرق کنه می تونید از first-child در css استفاده کنید.
ممنون مقاله مفیدی بود.
اما یه سوال :
توی دستور زیر چطوری بگیم تصادفی نمایش بده :
لطفا سوالتون را در انجمن های روکش مطرح بفرمایید.
سلام
چطور میشه در دسته ای یا دسته هایی فقط تصادفی نشون بده؟
یعنی یکی دو دسته رو نشون نده؟
ممنون
برای این کار می تونید در تابع get_posts از
استفاده کنید. جای ۱ و ۴ می تونید آیدی دسته هایی که میخواهید مطالب اون دسته ها به صورت تصادفی نشان داده شوند را وارد کنید.
بخوام خود مطالب سایت بصورت تصادفی نمایش داده بشن چی؟
یعنی جابجا بشن مطالب با هربار اجرا شدن سایت
لطفا یک افزونهای چیزی معرفی کنید
در انجمن پاسخ داده شد : افزونه نمایش تصادفی مطالب سایت بصورت خودکار