توابع مهم و پرکاربرد وردپرس برای طراحی سایت : توابع مهمی که برای طراحی قالب وردپرس مورد استفاده قرار میگردد.
تمامی توابع زیر دارای آرگومان های بسیار زیادی می باشند که باعث اضافه شدن امکانات توابع میشوند . در زیر صورت پیش فرض توابع قرار گرفته است . بدیهی است برای داشتن لیست کامل هر تابع , تابع مورد نظر را در گوگل سرچ کرده و یقیناً اولین وب سایت مشاهده شده , وب سایت مرجع codex وردپرس می باشد که با ورود به آن به تمامی آرگومان ها دسترسی پیدا خواهید کرد.
توابع ضروری و با قابلیت نمایش ( ترکیبی )
<?php bloginfo('name'); ?> نمایش عنوان وب سایت <?php bloginfo('description');?> ( نمایش معرفی کوتاه سایت شما ( شرح سایت <?php bloginfo('admin_email');?> نمایش آدرس ایمیل مدیر <?php bloginfo('url');?> نمایش آدرس وب سایت <?php bloginfo('wpurl');?> نمایش آدرس سایت وردپرس <?php bloginfo('stylesheet_url');?> نمایش آدرس فایل سی اس اس موجود در پوشه ی پوسته فعال <?php bloginfo('template_directory'); ?> نمایش آدرس پوشه ی پوسته فعال <?php bloginfo('atom_url'); ?> نمایش آدرس فید اتم سایت <?php bloginfo('rss_url'); ?> نمایش آدرس آر اس اس وب سایت <?php bloginfo('rss2_url'); ?> نمایش آدرس آر اس اس 2 وب سایت <?php bloginfo('rdf_url'); ?> نمایش آدرس آر دی اف سایت <?php bloginfo('charset'); ?> نمایش یونیکد استفاده شده در وب سایت شما <?php bloginfo('language'); ?> نمایش زبان فعال استفاده شده در وب سایت شما <?php bloginfo('text_direction');?> نمایش دایرکشن استفاده شده در وب سایت شما <?php bloginfo('version'); ?> نمایش ورژن وردپرس وب سایت شما <?php wp_title(); ?> نمایش عنوان صفحه ی در حال نمایش <?php get_search_form() ?> نمایش فرم جستجو در سایت <?php the_search_query() ?> نمایش متن جستجو شده , پس از جستجو در سایت <?php wp_tag_cloud(); ?> نمایش لیست کامل تگ های استفاده شده در وب سایت <?php echo tag_description(id); ?> نمایش توضیحات یک تگ خاص - به جای آی دی , شناسه تگ را وارد نمایید <?php single_tag_title(); ?> نمایش نام تگی که بر روی آن کلیک کرده و وارد صفحه ی تگ شده ایم <?php single_post_title(); ?> نمایش نام نوشته ای که بر روی آن کلیک کرده و وارد صفحه شده ایم <?php single_cat_title(); ?> نمایش نام دسته بندی که بر روی آن کلیک کرده و وارد صفحه ی آن شده ایم <?php the_permalink(); ?> نمایش پیوند یکتا <?php get_calendar(); ?> نمایش تقویم در وب سایت
لیست ها و منو های افتادنی :
<?php wp_dropdown_categories(); ?> نمایش موضوعات در قالب منو افتادنی <?php wp_dropdown_pages(); ?> نمایش صفحات در قالب منو افتادنی <?php wp_dropdown_users(); ?> نمایش کاربران در قالب منو افتادنی <?php wp_get_archives(); ?> نمایش لیست آرشیو وب سایت <?php wp_list_authors(); ?> نمایش لیست نویسندگان وب سایت <?php wp_list_bookmarks(); ?> نمایش لیست پیوند های وب سایت **************************** نکته : به صورت پیشفرض امکان درج لینک در وردپرس غیر فعال است که برای فعال کردن این امکان , باید کد زیر را در فایل فانکشن پوسته ی خود اضافه کنید add_filter( 'pre_option_link_manager_enabled', '__return_true' ); **************************** <?php wp_list_categories(); ?> نمایش لیست موضوعات وب سایت <?php wp_list_comments(); ?> نمایش لیست کامنت های وب سایت <?php wp_list_pages(); ?> نمایش لیست برگه های وب سایت <?php wp_page_menu(); ?> نمایش لیست صفحات وب سایت
توابع ورود و خروج :
<?php wp_login_form(); ?> نمایش فرم ورود به وب سایت <?php echo wp_login_url(); ?> نمایش آدرس قسمت ورود به سایت <?php echo wp_logout_url(); ?> نمایش آدرس خروج از وب سایت <?php echo wp_lostpassword_url(); ?> نمایش آدرس قسمت فراموشی رمز عبور وب سایت <?php echo wp_registration_url(); ?> نمایش آدرس قسمت ثبت نام در وب سایت <?php wp_loginout(); ?> نمایش لینک ورود/خروج به صورت اتوماتیک در وب سایت ********************************************** تابع شرطی برای دو شرط ورود به صورت مهمان و یا ورود با نام کاربری <?php if ( is_user_logged_in() ) { امکانات در صورتی که اگر کاربر وارد شده بود } else { امکانات در صورتی که اگر کاربر مهمان بود } ?>
توابع نوشته ها :
توجه : توابع زیر باید در حلقه وردپرس قرار گیرند …
منظور از حلقه ( loop ) تگ های شرطی می باشد که حتما باید پست های یک سایت وردپرسی , در داخل آن قرار گیرد , در غیر این صورت پست ها قابل نمایش نیست .
<?php if ( have_posts() ) { while ( have_posts() ) { the_post(); ?>
توابع بین حلقه:
<?php posts_nav_link(); ?> نمایش راهنما برای رفتن به صفحه ی بعد و قبل <?php previous_post_link(); ?> نمایش لینک به پست قبلی <?php next_post_link(); ?> نمایش لینک به پست بعدی <?php the_category(); ?> نمایش لیست موضوعات مربوط به پست در حال نمایش <?php the_permalink(); ?> نمایش لینک پیوند یکتای صفحه ی مورد نظر <?php the_title(); ?> نمایش عنوان پست در حال نمایش <?php the_content(); ?> نمایش محتویات پست در حال نمایش <?php the_excerpt(); ?> نمایش مختصری از محتویات پست در حال نمایش <?php the_time(); ?> نمایش زمان درج پست در حال نمایش <?php the_date('y/m/d'); ?> نمایش تاریج درج پست در حال نمایش <?php the_ID(); ?> نمایش شناسه پست در حال نمایش <?php the_author_posts(); ?> نمایش تعداد پست های نویسنده ی پست مورد نظر <?php the_shortlink(); ?> نمایش لینک ورود به صفحه ی یکتای پست در حال نمایش <?php the_tags(); ?> نمایش برچسب های پست در حال نمایش <?php comments_number(); ?> نمایش تعداد نظرات داده شده پست در حال نمایش <?php comments_template(); ?> single.php نمایش قسمت نظرات - حتما داخل فایل <?php the_title_attribute(); ?> نمایش مقدار اتربیوت تایتل پست در حال نمایش
انتهای حلقه و شرط :
<?php endwhile; ?> <?php endif; ?>
توابع بند انگشتی :
توجه : برای استفاده از توابع زیر , باید حتما از قبل , تابع زیر را در فایل functions.php اضافه نمایید .
echo add_theme_support( 'post-thumbnails' );
<?php the_post_thumbnail('thumbnail'); ?> نمایش تصویر بندانگشتی مربوط به هر پست یا برگه - اندازه پیش فرض 150*150 <?php the_post_thumbnail('medium'); ?> نمایش تصویر بندانگشتی مربوط به هر پست یا برگه - اندازه پیش فرض 300*300 <?php the_post_thumbnail('large'); ?> نمایش تصویر بندانگشتی مربوط به هر پست یا برگه - اندازه پیش فرض 640*640 <?php the_post_thumbnail('full'); ?> نمایش تصویر بندانگشتی مربوط به هر پست یا برگه در سایز اصلی ضمنا 4 تابع بالا برای نمایش در سایز های استاندارد می باشند . برای بریدن عکس آپلود شده و نمایش آن در وب سایت , باید به روش زیر عمل کنید . 1- اضافه کردن کد زیر در فایل فانکشن ************************ if (function_exists('add_image_size')): add_image_size('your-name',width,height,true); endif; ************************ 2 - قرار دادن کد زیر برای نمایش تصویر بند انگشتی <?php the_post_thumbnail('your-name'); ?>
توجه : در بالا به جای your-name , نام انتخابی خود و به جای width , height پهنا و ارتفاع عکسی که میخواهید برش داده شود را به عدد وارد نمایید .
توابع فهرست و منو ها :
نمایش فهرست های وب سایت <?php wp_nav_menu( array( 'theme_location' => 'p30vel-Nav', 'menu_class' => 'navbar' ) ); ?> توجه : این امکان به صورت پیشفرض غیر فعال می باشد که جهت فعال نمودن آن باید تابع زیر را در فایل فانکشن قرار دهید function register_my_menu() { register_nav_menu('p30vel-Nav',__( 'p30vel-Nav' )); } add_action( 'init', 'register_my_menu' );
توجه : برای دیزاین فهرست , باید در css , کلاسی به نام navbar ساخته و شروع به ساخت دیزاین کنید .
توابع جایگذاری و گنجاندن :
<?php get_header(); ?> گنجاندن هیدر <?php get_footer(); ?> گنجاندن فوتر <?php get_sidebar(); ?> گنجاندن سایدبار <?php get_template_part('p30vel'); ?> گنجاندن فایلی با نام دلخواه در پوشه پوسته مورد نظر
برخی نمونه کدهایی که در اکثر قالبها از آن استفاده میشود (به صورت کلی و درهم) :
نشان دادن تازه ترین نوشته ها <?php wp_get_archives('type=postbypost&limit=5'); ?> یا <?php $recentposts = get_posts('numberposts=12&category=4'); foreach ($recentposts as $post) : setup_postdata($post); ?> <li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li> <?php endforeach; ?> ------------------------- نشان دادن موضوعات <h2>Categories</h2> <ul> <?php wp_list_cats('sort_column=name'); ?> </ul> ------------------------- نشان دادن بایگانی <h2>Archives</h2> <ul> <?php wp_get_archives('type=monthly'); ?> </ul> ------------------------- نشان دادن ابرچسب ها <?php wp_tag_cloud('smallest=8&largest=36&'); ?> ------------------------- نشان دادن پیوندها <ul> <?php wp_list_bookmarks('title_li=&categorize=0'); ?> </ul> ------------------------- نشان دادن تگ های وردپرس <?php the_tags(); ?> ------------------------- نشان دادن صفحات <h2>Pages</h2> <ul> <?php wp_list_pages('title_li='); ?> </ul> ------------------------- نشان دادن دیدگاههای تازه <?php global $wpdb; $sql = "SELECT DISTINCT ID, post_title, post_password, comment_ID, comment_post_ID, comment_author, comment_date_gmt, comment_approved, comment_type,comment_author_url, SUBSTRING(comment_content,1,30) AS com_excerpt FROM $wpdb->comments LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID = $wpdb->posts.ID) WHERE comment_approved = '1' AND comment_type = '' AND post_password = '' ORDER BY comment_date_gmt DESC LIMIT 10"; $comments = $wpdb->get_results($sql); $output = $pre_HTML; $output .= "\n<ul>"; foreach ($comments as $comment) { $output .= "\n<li>".strip_tags($comment->comment_author) .":" . "<a href=\"" . get_permalink($comment->ID) . "#comment-" . $comment->comment_ID . "\" title=\"on " . $comment->post_title . "\">" . strip_tags($comment->com_excerpt) ."</a></li>"; } $output .= "\n</ul>"; $output .= $post_HTML; echo $output;?> ------------------------- نشان دادن اطلاعات (ورود، خروج) <ul> <?php wp_register(); ?> <li><?php wp_loginout(); ?></li> <li><a href="http://www.wordpress.org/">WordPress</a></li> <?php wp_meta(); ?> <li><a href="http://validator.w3.org/check?uri=referer">XHTML</a></li> </ul> ------------------------- نشان دادن بهترین نظرات <?php $result = $wpdb->get_results("SELECT comment_count,ID,post_title FROM $wpdb->posts ORDER BY comment_count DESC LIMIT 0 , 10"); foreach ($result as $topten) { $postid = $topten->ID; $title = $topten->post_title; $commentcount = $topten->comment_count; if ($commentcount != 0) { ?> <li><a href="<?php echo get_permalink($postid); ?>" title="<?php echo $title ?>"><?php echo $title ?></a></li> <?php } } ?>
ممنون از این مطلبی که گذاشتین . من خودم برای وردپرس کد می نویسم. تقریبا همه چی توی مطلب اومده بود فقط یه سری کدهای دیگه هم هست که پرکاربرده. البته همینا هم خیلی به درد می خورد. بازهم تشکر