دستهبندی نشدهمقالات وبوردپرس
32 ترفند مفید برای فایل Function وردپرس

32 ترفند مفید برای فایل Function وردپرس:
همانطور که می دانید همه قالب های وردپرسی دارای فایل قدرتمندی هستند که به آن فایل functions.php گفته می شود. این فایل همانند یک افزونه عمل می کند و به شما اجازه می دهد کارهای زیادی بر روی سایت وردپرسی خود انجام دهید. در این مقاله برخی از ترفندها و نکات مفید برای این فایل را در وردپرس بیان می کنیم. پس همراه وب ایده باشید.
فایل functions در وردپرس چیست؟
این فایل که با عنوان فایل functions.php شناخته شده است یک فایل در قالب وردپرسی می باشد. هدف این فایل این است که به توسعه دهندگان قالب های مختلف اجازه دهد قابلیت ها و عملکردهای مختلفی را در قالب تعریف نمایند. این فایل همانند یک افزونه در وردپرس عمل می کند و می توان از آن برای اضافه کردن کدهای سفارشی استفاده کرد. خوب شاید به این موضوع فکر کنید که تفاوت بین افزونه های خاص وردپرس و فایل functions.php چیست؟ کدام یک بهتر است؟ با اینکه functions.php بسیار راحت تر است اما افزونه هایی که برای سایت ها طراحی می شود بهتر خواهد بود. از سوی دیگر، فایل functions.php یک قالب نه تنها برای آن قالب کار می کند بلکه به هنگام تعویض قالب، شما می توانید کدهای سفارشی خود را به قالب جدید کپی کنید. در ادامه چند ترفند و نکته مفید را در مورد این فایل بیان خواهیم کرد.
- عدد مربوط به نسخه وردپرس را به کمک این فایل پاک کنید:
شما باید همیشه از آخرین نسخه وردپرس بر روی سایت خود استفاده کنید. با اینحال، در بیشتر موارد صاحبان سایت دوست دارند نسخه وردپرس را روی سایت خود حذف کنند. به کمک کد زیر می توانید به چنین عملکردی دست پیدا کنید:
1 | function wpb_remove_version() { | |
2 | return ”; |
3 | } | |
4 | add_filter(‘the_generator’, ‘wpb_remove_version’); |
- یک لوگوی سفارشی در داشبورد اضافه کنید:
شما می توانید یک لوگوی سفارشی به داشبورد مدیریتی خود اضافه کنید. اولین قدم برای انجام اینکار آپلود کردن لوگوی سفارشی به فولدر تصاویر قالب به عنوان custom-logo.png است. اطمینان حاصل کنید که لوگوی سفارشی شما اندازه 16 در 16 پیکسل را دارد. بعد از انجام اینکار می توانید کد زیر را به فایل functions خود اضافه کنید:
01 | function wpb_custom_logo() { | |
02 | echo ‘ |
03 | <style type=”text/css”> | |
04 | #wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon:before { |
05 | background-image: url(‘ . get_bloginfo(‘stylesheet_directory’) . ‘/images/custom-logo.png) !important; | |
06 | background-position: 0 0; |
07 | color:rgba(0, 0, 0, 0); | |
08 | } |
09 | #wpadminbar #wp-admin-bar-wp-logo.hover > .ab-item .ab-icon { | |
10 | background-position: 0 0; |
11 | } | |
12 | </style> |
13 | ‘; | |
14 | } |
15 | //hook into the administrative header output | |
16 | add_action(‘wp_before_admin_bar_render’, ‘wpb_custom_logo’); |
- می توانید فوتر را در پنل مدیریتی وردپرس تغییر دهید:
فوتر در ناحیه مدیریتی وردپرس پیامی را نشان می دهد. شما می توانید این پیام را به کمک کد زیر به پیام دلخواهتان تغییر دهید.
1 | function remove_footer_admin () { | |
2 |
3 | echo ‘Fueled by <a href=”http://www.wordpress.org” target=”_blank”>WordPress</a> | WordPress Tutorials: <a href=”http://www.wpbeginner.com” target=”_blank”>WPBeginner</a></p>’; | |
4 |
5 | } | |
6 |
7 | add_filter(‘admin_footer_text’, ‘remove_footer_admin’); |
- ابزارک های سفارشی در وردپرس ایجاد نمایید:
حتما شما نیز ابزارک هایی را دیده اید که افزونه ها و قالب های متعدد آن را به داشبورد وردپرس اضافه می کنند. به عنوان توسعه دهنده قالب می توانید ابزارک خود را به کمک کد زیر اضافه کنید:
01 | add_action(‘wp_dashboard_setup’, ‘my_custom_dashboard_widgets’); | |
02 |
03 | function my_custom_dashboard_widgets() { | |
04 | global $wp_meta_boxes; |
05 | ||
06 | wp_add_dashboard_widget(‘custom_help_widget’, ‘Theme Support’, ‘custom_dashboard_help’); |
07 | } | |
08 |
09 | function custom_dashboard_help() { | |
10 | echo ‘<p>Welcome to Custom Blog Theme! Need help? Contact the developer <a href=”mailto:yourusername@gmail.com”>here</a>. For WordPress Tutorials visit: <a href=”http://www.wpbeginner.com” target=”_blank”>WPBeginner</a></p>’; |
11 | } |
- می توانید گراواتار پیش فرض را در وردپرس تغییر دهید:
ایا تا به حال به آواتار پیش فرض وردپرس در وبلاگ ها توجه کرده اید؟ شما می توانید به راحتی این آواتار را به آواتار دلخواه خود تغییر دهید. کافیست تصویر مورد نظر خود را آپلود کنید و سپس کد زیر را در فایل Function بچسبانید.
1 | add_filter( ‘avatar_defaults’, ‘wpb_new_gravatar’ ); | |
2 | function wpb_new_gravatar ($avatar_defaults) { |
3 | $myavatar = ‘http://example.com/wp-content/uploads/2017/01/wpb-default-gravatar.png’; | |
4 | $avatar_defaults[$myavatar] = “Default Gravatar”; |
5 | return $avatar_defaults; | |
6 | } |
حالا می توانید سری به بخش تنظیمات و سپس صفحه گفت و گوها بزنید و آواتار پیش فرض خود را انتخاب کنید.
- تاریخ پویای کپی رایت را در فوتر وردپرس اضافه نمایید:
شما می توانید به سادگی تاریخ کپی رایت را با ویرایش فوتر قالب خود تغییر دهید. با اینحال این تاریخ زمانی که سایت خود را راه اندازی می کنید نشان داده نخواهد شد و به صورت خودکار در سال بعد نشان داده نمی شود. شما می توانید به کمک کد زیر تاریخ کپی رایت را به صورت پویا به فوتر خود اضافه کنید.
01 | function wpb_copyright() { | |
02 | global $wpdb; |
03 | $copyright_dates = $wpdb->get_results(“ | |
04 | SELECT |
05 | YEAR(min(post_date_gmt)) AS firstdate, | |
06 | YEAR(max(post_date_gmt)) AS lastdate |
07 | FROM | |
08 | $wpdb->posts |
09 | WHERE | |
10 | post_status = ‘publish’ |
11 | “); | |
12 | $output = ”; |
13 | if($copyright_dates) { | |
14 | $copyright = “© ” . $copyright_dates[0]->firstdate; |
15 | if($copyright_dates[0]->firstdate != $copyright_dates[0]->lastdate) { | |
16 | $copyright .= ‘-‘ . $copyright_dates[0]->lastdate; |
17 | } | |
18 | $output = $copyright; |
19 | } | |
20 | return $output; |
21 | } |
بعد از اضافه کردن این کد، باید فایل Footer.php را باز کنید و کد زیر را به آن اضافه نمایید.
1 | <?php echo wpb_copyright(); ?> |
- به طور تصادفی رنگ پس زمینه را در وردپرس تغییر دهید:
دوست دارید به هنگام بازدید و بارگذاری سایت، رنگ پس زمینه خود را به صورت تصادفی تغییر دهید؟ پس از کد زیر استفاده نمایید. ابتدا این کد را به فایل Function اضافه نمایید:
1 | function wpb_bg() { | ||
2 | $rand = array(‘0’, ‘1’, ‘2’, ‘3’, ‘4’, ‘5’, ‘6’, ‘7’, ‘8’, ‘9’, ‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘f’); | ||
3 | $color=’#’.$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)]. | |
4 | $rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)]; |
5 | echo $color; | |
6 | } |
در مرحله بعدی، باید کد زیر را به فایل Header.php در قالب خود اضافه کنید. تگ <body> را پیدا کنید و سپس آن را با خط زیر جایگزین نمایید:
1 | <body <?php body_class(); ?> style=”background-color:<?php wpb_bg();?>”>> |
- آدرس وردپرس خود را به روزرسانی نمایید:
اگر نتوانستید به ناحیه مدیریتی سایت خود وارد شوید باید URL وردپرس خود را به روزرسانی نمایید. برای برطرف کردن این مشکل، کد زیر را به فایل Function اضافه نمایید.
1 | update_option( ‘siteurl’, ‘http://example.com’ ); | |
2 | update_option( ‘home’, ‘http://example.com’ ); |
فراموش نکنید که باید example.com را با نام دامنه سایت خود عوض کنید. بعد از لاگین کردن، شما می توانید به بخش تنظیمات بروید و URL را تنظیم کنید. بعد از این مرحله باید کدی که به فایل function اضافه کرده اید را پاک کنید.
- اندازههای متعددی برای تصاویر اضافه کنید:
وردپرس به صورت خودکار زمانی که تصویری آپلود می شود اندازه های متعددی را برای تصاویر ایجاد می کند. شما می توانید اندازه های اضافی برای تصاویر خود ایجاد کنید. این کد را به فایل Function اضافه کنید:
1 | add_image_size( ‘sidebar-thumb’, 120, 120, true ); // Hard Crop Mode |
2 | add_image_size( ‘homepage-thumb’, 220, 180 ); // Soft Crop Mode |
3 | add_image_size( ‘singlepost-thumb’, 590, 9999 ); // Unlimited Height Mode |
این کد سه اندازه جدید برای تصاویر ایجاد می کند. در تغییر این کد آزاد هستید. شما می توانید به کمک کد زیر اندازه تصویر را نشان دهید:
1 | <?php the_post_thumbnail( ‘homepage-thumb’ ); ?> |
- منوهای ناوبری جدید به قالب خود اضافه کنید:
وردپرس به توسعه دهندگان اجازه می دهد منوهای ناوبری را تعریف کنند و آن ها را به نمایش بگذارند. این کد در فایل Function به شما کمک می کند منوی جدیدی تعریف کنید:
1 | function wpb_custom_new_menu() { | |
2 | register_nav_menu(‘my-custom-menu’,__( ‘My Custom Menu’)); |
3 | } | |
4 | add_action( ‘init’, ‘wpb_custom_new_menu’ ); |
شما می توانید به قسمت نمایش و سپس منوها بروید و از آنجا گزینه منوی سفارشی را مشاهده کنید. حالا باید این کد را به قالب خود اضافه کنید:
1 | <?php | |
2 | wp_nav_menu( array( |
3 | ‘theme_location’ => ‘my-custom-menu’, | |
4 | ‘container_class’ => ‘custom-menu-class’ ) ); |
5 | ?> |
- فیلد پروفایل نویسنده را اضافه کنید:
اگر دوست دارید فیلدهای اضافی برای پروفایل نویسندگان خود داشته باشید می توانید کد زیر را به فایل Function اضافه کنید:
1 | function wpb_new_contactmethods( $contactmethods ) { | |
2 | // Add Twitter |
3 | $contactmethods[‘twitter’] = ‘Twitter’; | |
4 | //add Facebook |
5 | $contactmethods[‘facebook’] = ‘Facebook’; | |
6 |
7 | return $contactmethods; | |
8 | } |
9 | add_filter(‘user_contactmethods’,’wpb_new_contactmethods’,10,1); |
این کد فیلد توییتر و فیس بوک را برای پروفایل کاربر اضافه می کند. حالا می توانید این فیلدها را در قالب نویسنده نشان دهید:
1 | <?php echo $curauth->twitter; ?> |
- نواحی آماده ابزارک یا سایدبار در قالب وردپرس اضافه کنید:
این موضوع یکی از پرکاربردترین مواردی است که توسعه دهندگان از آن استفاده می کنند. کد زیر را در فایل Function بچسبانید:
01 | // Register Sidebars | |
02 | function custom_sidebars() { |
03 | ||
04 | $args = array( |
05 | ‘id’ => ‘custom_sidebar’, | |
06 | ‘name’ => __( ‘Custom Widget Area’, ‘text_domain’ ), |
07 | ‘description’ => __( ‘A custom widget area’, ‘text_domain’ ), | |
08 | ‘before_title’ => ‘<h3 class=”widget-title”>’, |
09 | ‘after_title’ => ‘</h3>’, | |
10 | ‘before_widget’ => ‘<aside id=”%1$s” class=”widget %2$s”>’, |
11 | ‘after_widget’ => ‘</aside>’, | |
12 | ); |
13 | register_sidebar( $args ); | |
14 |
15 | } | |
16 | add_action( ‘widgets_init’, ‘custom_sidebars’ ); |
حالا می توانید به قسمت نمایش و سپس ابزارک ها بروید و ناحیه سفارشی خود را مشاهده کنید. برای نمایش ابزارک یا سایدبار، کد زیر را اضافه کنید:
1 | <?php if ( !function_exists(‘dynamic_sidebar’) || !dynamic_sidebar(‘custom_sidebar’) ) : ?> | |
2 | <!–Default sidebar info goes here–> |
3 | <?php endif; ?> |
- فید RSS را در فوتر دستکاری کنید:
حتما شما نیز وبلاگ هایی را دیده اید که تبلیغات خود را در فید RSS زیر هر پست قرار می دهند. شما می توانید اینکار را با اضافه کردن کد زیر انجام دهید:
1 | function wpbeginner_postrss($content) { | |
2 | if(is_feed()){ |
3 | $content = ‘This post was written by Syed Balkhi ‘.$content.’Check out WPBeginner’; | |
4 | } |
5 | return $content; | |
6 | } |
7 | add_filter(‘the_excerpt_rss’, ‘wpbeginner_postrss’); | |
8 | add_filter(‘the_content’, ‘wpbeginner_postrss’); |
- تصاویر ویژه به فید RSS اضافه کنید:
تصاویر ویژه اغلب در پست های وبلاگی نمایش داده می شود. شما می توانید کارکرد فید RSS را با چند تغییر ساده، بیشتر کنید.
01 | function rss_post_thumbnail($content) { | |
02 | global $post; |
03 | if(has_post_thumbnail($post->ID)) { | |
04 | $content = ‘<p>’ . get_the_post_thumbnail($post->ID) . |
05 | ‘</p>’ . get_the_content(); | |
06 | } |
07 | return $content; | |
08 | } |
09 | add_filter(‘the_excerpt_rss’, ‘rss_post_thumbnail’); | |
10 | add_filter(‘the_content_feed’, ‘rss_post_thumbnail’); |
- خطاهای لاگین در وردپرس را مخفی سازید:
خطاهای لاگین در وردپرس معمولا توسط هکرها برای حدس زدن نام کاربری و پسورد مورد استفاده قرار می گیرد. با کد زیر این خطاها را پنهان کنید:
1 | function no_wordpress_errors(){ | |
2 | return ‘Something is wrong!’; |
3 | } | |
4 | add_filter( ‘login_errors’, ‘no_wordpress_errors’ ); |
- لاگین توسط ایمیل را در وردپرس غیر فعال سازید:
وردپرس به کاربران اجازه می دهد به کمک آدرس ایمیل یا نام کاربری خود لاگین کنند. شما می توانید لاگین به کمک ایمیل را با اضافه کردن کد زیر غیر فعال سازید:
1 | remove_filter( ‘authenticate’, ‘wp_authenticate_email_password’, 20 ); |
- قابلیت جستجو را در وردپرس غیر فعال کنید:
اگر می خواهید قابلیت جستجو را در سایت وردپرسی خود غیر فعال سازید می توانید کد زیر را به سادگی به فایل Function خود اضافه نمایید:
01 | function fb_filter_query( $query, $error = true ) { | |
02 |
03 | if ( is_search() ) { | |
04 | $query->is_search = false; |
05 | $query->query_vars[s] = false; | |
06 | $query->query[s] = false; |
07 | ||
08 | // to error |
09 | if ( $error == true ) | |
10 | $query->is_404 = true; |
11 | } |
12 | } |
13 | ||
14 | add_action( ‘parse_query’, ‘fb_filter_query’ ); |
15 | add_filter( ‘get_search_form’, create_function( ‘$a’, “return null;” ) ); |
- انتشار پست در فید RSS را به تعویق بیندازید:
برخی از اوقات ممکن است در مقاله خود مشکل گرامری یا املایی داشته باشید. این مشکل به طور زنده در فید RSS منتشر می شود. اگر دوست ندارید چنین اتفاقی بیفتد کد زیر را به فایل Function خود اضافه کنید:
01 | function publish_later_on_feed($where) { | |
02 |
03 | global $wpdb; | |
04 |
05 | if ( is_feed() ) { | |
06 | // timestamp in WP-format |
07 | $now = gmdate(‘Y-m-d H:i:s’); | |
08 |
09 | // value for wait; + device | |
10 | $wait = ’10’; // integer |
11 | ||
12 | // http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_timestampdiff |
13 | $device = ‘MINUTE’; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR | |
14 |
15 | // add SQL-sytax to default $where | |
16 | $where .= ” AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, ‘$now’) > $wait “; |
17 | } | |
18 | return $where; |
19 | } | |
20 |
21 | add_filter(‘posts_where’, ‘publish_later_on_feed’); |
در این کد از زمان 10 دقیقه برای تاخیر انتشار استفاده شده است. شما می توانید آن را به دلخواه تغییر دهید.
- متن مربوط به بیشتر بخوانید را در وردپرس تغییر دهید:
برای انجام اینکار از کد زیر استفاده کنید:
1 | function modify_read_more_link() { | |
2 | return ‘<a class=”more-link” href=”‘ . get_permalink() . ‘”>Your Read More Link Text</a>’; |
3 | } | |
4 | add_filter( ‘the_content_more_link’, ‘modify_read_more_link’ ); |
- فید RSS را در وردپرس غیر فعال سازید:
همه سایت ها به فید RSS نیازی ندارند. اگر می خواهید این فید را در سایت وردپرسی خود غیر فعال سازید کد زیر را به فایل Function اضافه کنید.
1 | function fb_disable_feed() { | |
2 | wp_die( __(‘No feed available,please visit our <a href=”‘. get_bloginfo(‘url’) .'”>homepage</a>!’) ); |
3 | } | |
4 |
5 | add_action(‘do_feed’, ‘fb_disable_feed’, 1); | |
6 | add_action(‘do_feed_rdf’, ‘fb_disable_feed’, 1); |
7 | add_action(‘do_feed_rss’, ‘fb_disable_feed’, 1); | |
8 | add_action(‘do_feed_rss2’, ‘fb_disable_feed’, 1); |
9 | add_action(‘do_feed_atom’, ‘fb_disable_feed’, 1); |
- طول متن برگزیده را در وردپرس تغییر دهید:
وردپرس طول متن برگزیده که در اختیار کاربر قرار می گیرد را به 55 کلمه محدود کرده است. اگر نیازی به تغییر آن دارید از کد زیر استفاده کنید:
1 | functionnew_excerpt_length($length) { | |
2 | return 100; |
3 | } | |
4 | add_filter(‘excerpt_length’, ‘new_excerpt_length’); |
- کاربر ادمین را در وردپرس اضافه کنید:
اگر پسورد یا ایمیل خود را در وردپرس فراموش کردید، می توانید کاربر ادمین را به کمک کد زیر ایجاد کنید:
01 | function wpb_admin_account(){ | |
02 | $user = ‘Username’; |
03 | $pass = ‘Password’; | |
04 | $email = ’email@domain.com’; |
05 | if ( !username_exists( $user ) && !email_exists( $email ) ) { | |
06 | $user_id = wp_create_user( $user, $pass, $email ); |
07 | $user = new WP_User( $user_id ); | |
08 | $user->set_role( ‘administrator’ ); |
09 | } } | |
10 | add_action(‘init’,’wpb_admin_account’); |
فراموش نکنید که باید نام کاربری، پسورد و فیلد ایمیل را پر کنید. بعد از لاگین کردن در سایت باید کد را از فایل Function پاک کنید.
- پنل خوشامدگویی را در داشبود وردپرس پاک کنید:
پنل خوشامدگویی جعبه ای است که به صفحه داشبورد ناحیه مدیریتی وردپرس اضافه شده است. می توانید این پنل را به کمک کدهای زیر پنهان کنید:
1 | remove_action(‘welcome_panel’, ‘wp_welcome_panel’); |
- تعداد کل کاربران ثبت نام کرده در سایت را نشان دهید:
اگر می خواهید تعداد کل کاربران ثبت نام کرده در سایت را نشان دهید کد زیر را به فایل Function خود اضافه نمایید:
1 | // Function to return user count | |
2 | function wpb_user_count() { |
3 | $usercount = count_users(); | |
4 | $result = $usercount[‘total_users’]; |
5 | return $result; | |
6 | } |
7 | // Creating a shortcode to display user count | |
8 | add_shortcode(‘user_count’, ‘wpb_user_count’); |
این کد شورت کدی را ایجاد می کند که به شما اجازه می دهد تعداد کل کاربران ثبت نام شده را نشان دهید. حالا باید این شورت کد را به [user_count] پست یا صفحه خود اضافه کنید.
- طبقه بندی خاصی را از فید RSS مستثنی کنید:
آیا می خواهید طبقه بندی هاص خاصی را از فید RSS مستثنی کنید؟ از کد زیر استفاده کنید.
1 | function exclude_category($query) { | |
2 | if ( $query->is_feed ) { |
3 | $query->set(‘cat’, ‘-5, -2, -3’); | |
4 | } |
5 | return $query; | |
6 | } |
7 | add_filter(‘pre_get_posts’, ‘exclude_category’); |
- اجرای شورت کد را در ابزارک های متنی فعال سازید:
به طور پیش فرض، وردپرس شورت کدهای داخل ابزارک های متنی را اجرا نمی کند. برای حل این مشکل، کد زیر را به فایل Function اضافه کنید:
1 | // Enable shortcodes in text widgets | |
2 | add_filter(‘widget_text’,’do_shortcode’); |
- کلاس های CSS فرد و زوج را به پست های وردپرسی خود اضافه کنید:
حتما شما نیز قالب هایی را دیده اید که از کلاس های فرد و زوج برای کامنت های وردپرسی استفاده می کنند. شما می توانید از همین تکنیک در پست های وردپرسی خود استفاده کنید:
1 | function oddeven_post_class ( $classes ) { | |
2 | global $current_class; |
3 | $classes[] = $current_class; | |
4 | $current_class = ($current_class == ‘odd’) ? ‘even’ : ‘odd’; |
5 | return $classes; | |
6 | } |
7 | add_filter ( ‘post_class’ , ‘oddeven_post_class’ ); | |
8 | global $current_class; |
9 | $current_class = ‘odd’; |
این کد به سادگی کلاس فرد و زوج را به پست های وردپرسی اضافه می کند. شما می توانید استایل سفارشی CSS را به صورت متفاوت اضافه نمایید. از کد زیر برای آغاز کار استفاده کنید.
1 | .even { | |
2 | background:#f0f8ff; |
3 | } | |
4 | .odd { |
5 | background:#f4f4fb; | |
6 | } |
- انواع مختلفی از فایل ها را در وردپرس آپلود کنید:
به طور پیش فرض، وردپرس به شما اجازه می دهد تعداد محدودی از انواع فایل ها را آپلود نمایید. با اینحال شما می توانید به کمک کد زیر این وضعیت را تغییر دهید:
1 | function my_myme_types($mime_types){ | |
2 | $mime_types[‘svg’] = ‘image/svg+xml’; //Adding svg extension |
3 | $mime_types[‘psd’] = ‘image/vnd.adobe.photoshop’; //Adding photoshop files | |
4 | return $mime_types; |
5 | } | |
6 | add_filter(‘upload_mimes’, ‘my_myme_types’, 1, 1); |
این کد به شما اجازه می دهد فایل های PSD و SVG را در وردپرس آپلود نمایید.
- لینک پیش فرض تصاویر را در وردپرس پاک کنید:
به طور پیش فرض، زمانی که تصویری را در وردپرس آپلود می کنید به طور خودکار به فایل تصویر یا صفحه مورد نظر لینک می شود. شما می توانید این موضوع را به کمک کد زیر پاک کنید:
1 | function wpb_imagelink_setup() { | |
2 | $image_set = get_option( ‘image_default_link_type’ ); |
3 | ||
4 | if ($image_set !== ‘none’) { |
5 | update_option(‘image_default_link_type’, ‘none’); | |
6 | } |
7 | } | |
8 | add_action(‘admin_init’, ‘wpb_imagelink_setup’, 10); |
- جعبه اطلاعات نویسنده را در پست های وردپرسی خود اضافه کنید:
اگر سایت شما چندین نویسنده مختلف دارد و می خواهید اطلاعات هر کدام از آن ها را در انتهای پست نشان دهید می توانید از کد زیر بهره مند شوید.
01 | function wpb_author_info_box( $content ) { | |
02 |
03 | global $post; | |
04 |
05 | // Detect if it is a single post with a post author |
06 | if ( is_single() && isset( $post->post_author ) ) { |
07 | ||
08 | // Get author’s display name |
09 | $display_name = get_the_author_meta( ‘display_name’, $post->post_author ); | |
10 |
11 | // If display name is not available then use nickname as display name | |
12 | if ( empty( $display_name ) ) |
13 | $display_name = get_the_author_meta( ‘nickname’, $post->post_author ); | |
14 |
15 | // Get author’s biographical information or description | |
16 | $user_description = get_the_author_meta( ‘user_description’, $post->post_author ); |
17 | ||
18 | // Get author’s website URL |
19 | $user_website = get_the_author_meta(‘url’, $post->post_author); | |
20 |
21 | // Get link to the author archive page | |
22 | $user_posts = get_author_posts_url( get_the_author_meta( ‘ID’ , $post->post_author)); |
23 | ||
24 | if ( ! empty( $display_name ) ) |
25 | ||
26 | $author_details = ‘<p class=”author_name”>About ‘ . $display_name . ‘</p>’; |
27 | ||
28 | if ( ! empty( $user_description ) ) |
29 | // Author avatar and bio | |
30 |
31 | $author_details .= ‘<p class=”author_details”>’ . get_avatar( get_the_author_meta(‘user_email’) , 90 ) . nl2br( $user_description ). ‘</p>’; | |
32 |
33 | $author_details .= ‘<p class=”author_links”><a href=”‘. $user_posts .'”>View all posts by ‘ . $display_name . ‘</a>’; | |
34 |
35 | // Check if author has a website in their profile | |
36 | if ( ! empty( $user_website ) ) { |
37 | ||
38 | // Display author website link |
39 | $author_details .= ‘ | <a href=”‘ . $user_website .'” target=”_blank” rel=”nofollow”>Website</a></p>’; | |
40 |
41 | } else { | |
42 | // if there is no author website then just close the paragraph |
43 | $author_details .= ‘</p>’; | |
44 | } |
45 | ||
46 | // Pass all this info to post content |
47 | $content = $content . ‘<footer class=”author_bio_section” >’ . $author_details . ‘</footer>’; | |
48 | } |
49 | return $content; | |
50 | } |
51 | ||
52 | // Add our function to the post content filter |
53 | add_action( ‘the_content’, ‘wpb_author_info_box’ ); | |
54 |
55 | // Allow HTML in author bio section | |
56 | remove_filter(‘pre_user_description’, ‘wp_filter_kses’); |
در مرحله بعدی باید CSS سفارشی را اضافه کنید تا بتوانید ظاهر بهتری به آن ببخشید. از کد CSS زیر برای شروع استفاده کنید:
01 | .author_bio_section{ | |
02 | background: none repeat scroll 0 0 #F5F5F5; |
03 | padding: 15px; | |
04 | border: 1px solid #ccc; |
05 | } | |
06 |
07 | .author_name{ | |
08 | font-size:16px; |
09 | font-weight: bold; | |
10 | } |
11 | ||
12 | .author_details img { |
13 | border: 1px solid #D8D8D8; | |
14 | border-radius: 50%; |
15 | float: left; | |
16 | margin: 0 10px 10px 0; |
17 | } |
31.XML- RPC را در وردپرس غیر فعال سازید:
XML-RPC روشی است که به اپلیکیشن ها اجازه می دهد از راه دور با سایت شما ارتباط برقرار کنند. این موضوع می تواند مشکلات امنیتی برای سایت در پی داشته باشد. از کد زیر برای غیر فعال کردن آن استفاده کنید:
1 | add_filter(‘xmlrpc_enabled’, ‘__return_false’); |
- به طور خودکار تصاویر برجسته و ویژه را به پست ها لینک دهید:
اگر قالب شما به طور خودکار تصاویر برجسته را به مقالات لینک نمی دهد می توانید کد زیر را به فایل Function اضافه کنید:
01 | function wpb_autolink_featured_images( $html, $post_id, $post_image_id ) { | |
02 |
03 | If (! is_singular()) { | |
04 |
05 | $html = ‘<a href=”‘ . get_permalink( $post_id ) . ‘” title=”‘ . esc_attr( get_the_title( $post_id ) ) . ‘”>’ . $html . ‘</a>’; | |
06 | return $html; |
07 | ||
08 | } else { |
09 | ||
10 | return $html; |
11 | ||
12 | } |
13 | ||
14 | } |
15 | add_filter( ‘post_thumbnail_html’, ‘wpb_autolink_featured_images’, 10, 3 ); |
منبع: wpbeginner