آموزش ساخت دکمه مطلب اتفاقی در وردپرس

با سلام.

بعضی اوقات دیده اید که در برخی سایت ها مطالب تصادفی تیتر وار وجود دارد

امروز میخوایم آموزشی رو به شما بدیم که کمی با این قضیه فرق داره..

در این روش شما یک دکمه ای تعریف میکنید که کاربر با کلیک روی اون دکمه یکی از مطالب بصورت تصادفی به کاربر نمایش داده میشه

این آموزش کاربرد خاصی نداره ولی خب چون آموزش خاصی هست ما اون رو آموزش میدیم…

اگه خواستید مطالب تصادفی بصورت تیتر وار نمایش داده بشه هم میتونید بصورت کد و هم بصورت افزونه استفاده کنید(بعدا این مورد رو اموزش میدم)ولی این آموزش چون زیاد کاربرد زیادی نداره فقط با کد میشه این کار رو کرد و افزونه ای براش وجود نداره(حداقل من تا الان ندیدم)

خب برای این کار کافیه کد زیر رو درون فانکشن قالبتون قرار بدید

 

<?php add_action('init','random_add_rewrite'); function random_add_rewrite(){ global $wp; $wp->add_query_var('random'); add_rewrite_rule('random/?$', 'index.php?random=1', 'top');} add_action('template_redirect','random_template'); function random_template(){ if (get_query_var('random') == 1){ $posts = get_posts('post_type=post&orderby=rand&numberposts=1'); foreach($posts as $post) {$link = get_permalink($post);} wp_redirect($link,307);exit;}} ?

وقتی کد بالا رو درون فایل فانکشن قرار دادید کافیه کد زیر رو هر جا نیاز داشتید قرار بدید

<a href="<?php bloginfo('url'); ?>/index.php?random=1">random</a>

کد بالا بصورت لینک میباشد ولی میتونید اگه کمی کدنویسی بلد باشید بصورت دکمه هم در بیاریدش…اگه خواستید متن لینک رو عوض کنید کافیه عبارت random رو حذف و لغت خودتون رو جایگزینش کنید….

خب تا الان همه چیز درسته و به خوبی عمل میکنه(اگه با کد یا افزونه ای تداخل نداشته باشه) ولی یه مشکل وجود داره اونم اینکه در صورتی که افزونه ی کش استفاده کنید این دکمه یا لینک کش میشه و دیگه یه مطلب ثابت رو به کاربر نمایش میده…برای حل این مشکل هم باید کد زیر رو در لیست خروج قرار بدید

/random/
/index.php?random=1

موفق باشید

اگه سوالی داشتید در قسمت نظرات مطرح کنید

درباره MR2C2R

موارد جالب

معرفی و آموزش افزونه WP-PostRatings قسمت دوم

سلام در قسمت قبلی ما به توضیحات اولیه این افزونه پرداختیم و آن را توضیح ...

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *