وبلاگ

آموزش سفارشی سازی ترتیب بندی پست ها در وردپرس

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

آموزش سفارشی سازی ترتیب بندی پست ها در وردپرس

با عرض سلام و احترام خدمت همراهان همیشگی وب مستر 98

در این بخش از آموزش وردپرس قصد داریم شما را با روش هایی برای سفارشی کردن ترتیب بندی پست ها در وردپرس آشنا کنیم. در واقع ممکن است بسیاری از طراحان سایت تمایل داشته باشند، مطالب خود را طبق ترتیب و اصول خاصی برای کابران نمایش دهند. در وردرپرس به صورت پیش فرض پست ها براساس تاریخ انتشار در سایت نشان داده می شوند. یک روش ساده و ابتدایی تغییر تاریخ و زمان پست ها برای عوض کردن ترتیب نمایش پست ها است، اما به طور کلی دو روش برای ترتیب بندی پست ها وجود دارد:

  1. ترتیب بندی با استفاده از کد
  2. ترتیب بندی با استفاده از افزونه

در ادامه همین مطلب این دو روش را به طور کامل توضیح می دهیم.

ترتیب بندی نمایش مطالب با استفاده از کد

در این روش همانطور که مشخص است نیاز به کدنویسی داریم بنابراین باید تا حدی با کدنویسی آشنایی داشته باشید. روش کار به این صورت است که می خواهیم یک فیلد سفارشی به پست ها اضافه کنیم که به وسیله آن ترتیب پست ها را مشخص کنیم. در ابتدا باید افزونه ای تولید کنیم، پس یک پوشه در فولدر مربوط به افزونه ها درست می کنیم.

چطور یک فیلد سفارشی ایجاد کنیم؟

یک متاباکس به صورت زیر به صفحه ویرایش پست اضافه می کنیم، این اولین مرحله افزودن فیلد سفارشی به backend است.

<?php /* Create custom meta data box to the post edit screen */ function jpen_custom_post_sort( $post ){ add_meta_box( ‘custom_post_sort_box’, ‘Position in List of Posts’, ‘jpen_custom_post_order’, ‘post’ , ‘side’ ); } add_action( ‘add_meta_boxes’, ‘jpen_custom_post_sort’ ); ?>

بعد از اینکه کد به فایل افزونه اضافه می شود، متاباکس ایجاد می شود.

این قطعه کد به فایل افزونه شما اضافه خواهد شد و متا باکس را ایجاد خواهد کرد.

<?php /* Add a field to the metabox */ function jpen_custom_post_order( $post ) { wp_nonce_field( basename( __FILE__ ), ‘jpen_custom_post_order_nonce’ ); $current_pos = get_post_meta( $post->ID, ‘_custom_post_order’, true); ?> <p>Enter the position at which you would like the post to appear. For exampe, post “1” will appear first, post “2” second, and so forth.</p> <p><input type=”number” name=”pos” value=”<?php echo $current_pos; ?>” /></p> <?php } ?>

در پایان باید بتوان ورودی را از کاربر بگیریم و در پایگاه داده ذخیره کنیم، برای این کار کد زیر به افزونه اضافه می شود. این کد باتوجه به ورودی که از طرف کاربر دریافت می کند ترتیب مطالب را تعیین می کند.

<?php
/* Save the input to post_meta_data */

function jpen_save_custom_post_order( $post_id ){
  if ( !isset( $_POST['jpen_custom_post_order_nonce'] ) || !wp_verify_nonce( $_POST['jpen_custom_post_order_nonce'], basename( __FILE__ ) ) ){
    return;
  } 
  if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ){
    return;
  }
  if ( ! current_user_can( 'edit_post', $post_id ) ){
    return;
  }
  if ( isset( $_REQUEST['pos'] ) ) {
    update_post_meta( $post_id, '_custom_post_order', sanitize_text_field( $_POST['pos'] ) );
  }
}
add_action( 'save_post', 'jpen_save_custom_post_order' );
?>

 

ترتیب بندی نمایش مطالب با استفاده از افزونه

راه حل بهتر برای افرادای که در حوزه ی کد نویسی شناختی ندارند، استفاده از افزونه است. چندین افزونه برای سفارشی سازی ترتیب بندی مطالب نیز ارائه شده اند که در این قسمت ما به معرفی دو افزونه می پردازیم.

Post Types Order

یک افزونه قوی با قابلیت تولید مطالب سفارشی و ترتیب بندی آن هاست، به طوری که تاکنون بیشتر از 400000 مرتبه نصب و فعال سازی شده است. این افزونه همچنین قابل توسعه است و از 5 نمره 4.6 کسب کرده است.

روش کار  Post Types Order

در قسمت تنظیمات روی گزینه Post Types Order کلیک می کنیم. صفحه ای باز می شود که در آن امکان ترتیب بندی مطالب سایت و پست ها وجود دارد، برای تعیین ترتیب مطالب می توان آن ها را کشید و در جای دلخواه رها کرد(Drag&Drop).

Order Your Posts Manually

یکی از مهم ترین ویژگی های این افزونه پشتیبانی مناسب است، این افزونه مرتباً به روزرسانی می شود و در هر نسخه جدید قابلیت های بهتری به آن اضافه می شود.

افزونه تا حال بیشتر از مرتبه نصب و فعالسازی شده است، همچنین مانند افزونه از 5 نمره 4.6 را کسب کرده است.

روش کار Order Your Posts Manually

بعد از نصب و فعال کردن افزونه وارد بخش تنظیمات می شویم و سپس گزینه را Order Your Posts Manually انتخاب کرده و صفحه ای باز می شود که در آن می توانید کپشن ها را پیکربندی کنید. در آخر بر روی گزینه Order My Posts کلیک می کنیم تا وارد بخش Tools> Order Your Post Manually شویم که در این قسمت لیست مطالب جدید برای شما تولید می شود. البته می توان مانند افزونه مطالب را با کشیدن و رها کردن (Drag&Drop) به ترتیب دلخواه جابه جا کرد و  در جای مناسب قرار داد. فراموش نکنید برای ذخیره تغییرات بر روی کلیک کنید.

با تشکر از همراهی شما با این قسمت از آموزش وردپرس اگر در رابطه با این پست سوال یا مشکلی دارید در قسمت نظرات اعلام بکنید تا راهنمایی شوید. در صورتی که نیاز به قالب وردپرس دارید می توانید به دسته بندی قالب وردپرس مراجعه بکنید.

 

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

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