09108670910 09199912950

ترفند های فایل توابع وردپرس Functions.php

خانه / وردپرس / آموزش وردپرس / ترفند های فایل توابع وردپرس Functions.php
functions.php-tricks

ترفند های فایل توابع وردپرس Functions.php

تمام قالب های وردپرس دارای یک فایل قدرتمند به نام functions.php هستند، این فایل مانند یک افزونه است که با استفاده از آن میتوانید دست به کار های جالبی بزنید. در این مطلب به شما ترفند هایی برای فایل توابع وردپرس را آموزش خواهم داد.

ترفند های فایل توابع وردپرس

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

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

در ادامه شما را با تعدادی از ترفند هایی که میتوان برای فایل توابع وردپرس استفاده کرد، آشنا خواهم کرد. با ما همراه باشید…

حذف شماره نسخه وردپرس

شما همیشه باید از آخرین نسخه وردپرس استفاده کنید، اما ممکن است که بخواهید شماره نسخه وردپرس را حذف کنید، میتوانید به راحتی با استفاده از این کد این کار را انجاد دهید:

function dgw_remove_version() {
return '';
}
add_filter('the_generator', 'dgw_remove_version');

افزودن لوگوی مورد نظر به داشبورد

آیا میخواهید یگ لوگو به داشبورد خود در وردپرس اضافه کنید؟ خب برای شروع باید لوگوی مورد نظر خود را در سرور آپلود کنید و نام آن را custom-logo.png قرار دهید.

نکته: دقت داشته باشید که فایل لوگو باید ۱۶*۱۶ باشد.

سپس کد زیر را به فایل توابع اضافه کنید:


function digiwp_custom_logo() {
echo '
<style type="text/css">
#wpadminbar #wp-admin-bar-wp-logo > .ab-item .ab-icon:before {
background-image: url(' . get_bloginfo('stylesheet_directory') . '/images/custom-logo.png) !important;
background-position: 0 0;
color:rgba(0, 0, 0, 0);
}
#wpadminbar #wp-admin-bar-wp-logo.hover > .ab-item .ab-icon {
background-position: 0 0;
}
</style>
';
}
//hook into the administrative header output
add_action('wp_before_admin_bar_render', 'digiwp_custom_logo');

تغییر فوتر در پنل ادمین وردپرس

فوتر موجود در پنل ادمین وردپرس یک پیام “Thank you for creating with WordPress” را نمایش میدهد. شما میتوانید آن را به هر چیز دیگری با استفاده از این کد تغییر دهید:

function remove_footer_admin () {
echo 'Fueled by <a href="http://www.wordpress.org" target="_blank">WordPress</a> | WordPress Tutorials: <a href="http://www.digiwp.com" target="_blank">digiwp</a>

';
}
add_filter('admin_footer_text', 'remove_footer_admin');

admin-footer

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

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

<pre>add_action('wp_dashboard_setup', 'my_custom_dashboard_widgets');
function my_custom_dashboard_widgets() {
global $wp_meta_boxes;

wp_add_dashboard_widget('custom_help_widget', 'Theme Support', 'custom_dashboard_help');
}
function custom_dashboard_help() {
echo '

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.digiwp.com" target="_blank">digiwp</a>

';
}

سپس ویجت شما به شکل زیر در داشبورد به نمایش در خواهد آمد:

custom-widget

تغییر Gavatar پیشفرض در وردپرس

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

add_filter( 'avatar_defaults', 'digiwp_new_gravatar' );
function digiwp_new_gravatar ($avatar_defaults) {
$myavatar = 'http://example.com/wp-content/uploads/2017/01/wpb-default-gravatar.png';
$avatar_defaults[$myavatar] = "Default Gravatar";
return $avatar_defaults;
}

اکنون وارد بخش  تنظیمات»گفتگو شوید و تصویر پیشفرض خود را انتخاب کنید.

custom gravatar

تاریخ کپی رایت داینامیک در فوتر وردپرس

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

function digiwp_copyright() {
global $wpdb;
$copyright_dates = $wpdb->get_results("
SELECT
YEAR(min(post_date_gmt)) AS firstdate,
YEAR(max(post_date_gmt)) AS lastdate
FROM
$wpdb->posts
WHERE
post_status = 'publish'
");
$output = '';
if($copyright_dates) {
$copyright = "© " . $copyright_dates[0]->firstdate;
if($copyright_dates[0]->firstdate != $copyright_dates[0]->lastdate) {
$copyright .= '-' . $copyright_dates[0]->lastdate;
}
$output = $copyright;
}
return $output;
}

پس از افزودن این کد در فایل توابع، نیاز خواهید داشت تا فایل footer.php را باز کنید و کد زیر را به جایی که میخواهید تاریخ در آنجا نمایش داده شود اضافه کنید:


<?php echo digiwp_copyright(); ?>

این کد اول تاریخ انتشار اولین پست و آخرین پست شما را چک میکند و سپس در جایی که فراخوانی میشود، تاریخ کپی رایت را نمایش خواهد داد.

تغییر رنگ بک گراند به صورت تصادفی در وردپرس

آیا میخواهید به صورت تصادفی رنگ پس زمینه را در سایت وردپرس خود تغییر دهید؟ برای این کار باید اول کد زیر را به فایل توابع اضافه کنید:

function digiwp_bg() { 
$rand = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f');
$color ='#'.$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)].
$rand[rand(0,15)].$rand[rand(0,15)].$rand[rand(0,15)];
echo $color;
}

سپس باید فایل header.php را ویرایش کنید و تگرا پیدا کنید و سپس کد را داخل تگ قرار دهید، مانند کد زیر:

<body <?php body_class(); ?> style="background-color:<?php digiwp_bg();?>">>

randombackgrounds

بروز رسانی URL های وردپرس

اگر صفحه ورود سایت شما دائما در حال تازه سازی است و یا قادر به دسترسی به صفحه ادمین نباشید، پس نیاز خواهید داشت تا URL ها را بروز رسانی کنید.

برای انجام این کار میتوانید از فایل wp-config.php استفاده کنید اگر این کار را انجام دهید نخواهید توانست تا آدرس صحیح را در صفحه تنظیمات وارد کنید و در آن صورت آدرس ها و فیلد های آدرس سایت شما قفل خواهد بود و نمیتوانید آن ها را ویرایش کنید.

اگر میخواهید که این مشکل را حل کنید، پس باید کد زیر را به فایل functions.php اضافه کنید:

update_option( 'siteurl', 'http://example.com' );
update_option( 'home', 'http://example.com' );

نکته: فراموش نکنید که آدرس دامنه خود را جای example.com قرار دهید.

وقتی که در سایت خود وارد شدید میتوانید وارد صفحه تنظیمات شوید و آدرس را در آنجا تنظیم کنید، سپس کدی را که در فایل توابع وارد کردید را باید حذف کنید.

ایجاد سایز های اضافی برای تصاویر

وردپرس سایز های زیادی را برای تصاویر ایجاد میکند و این کار را به صورت اتوماتیک انجام میدهد، شما میتوانید سایز های مورد نظر خود را با افزودن کد های زیر به فایل توابع ایجاد کنید و از آنها استفاده کنید:

add_image_size( 'sidebar-thumb', 120, 120, true ); // Hard Crop Mode
add_image_size( 'homepage-thumb', 220, 180 ); // Soft Crop Mode
add_image_size( 'singlepost-thumb', 590, 9999 ); // Unlimited Height Mode

این کد سه سایز مختلف برای تصاویر ایجاد میکند، شما میتوانید با تغییر کد، سایز های مورد نظر خود را وارد کنید.

افزودن فیلد به پروفایل نویسنده

آیا میخواهید فیلد های مورد نظر خود را به پروفایل نویسندگان سایت خود اضافه کنید؟ شما میتوانید به راحتی با استفاده از کد زیر این کار را انجام دهید:

function digiwp_new_contactmethods( $contactmethods ) {
// Add Twitter
$contactmethods['twitter'] = 'Twitter';
//add Facebook
$contactmethods['facebook'] = 'Facebook';
return $contactmethods;
}
add_filter('user_contactmethods','digiwp_new_contactmethods',10,1);

این کد فیلد های توئیتر و فیسبوک را به پروفایل نویسندگان اضافه خواهد کرد.

اکنون میتوانید این فیلد ها را در قالب نویسندگان خود به صورت زیر نمایش دهید:

<?php echo $curauth->twitter; ?> 

extrauserfields

افزودن محیط های ویجت و ساید بار در قالب

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

// Register Sidebars
function custom_sidebars() {
$args = array(
'id'=> 'custom_sidebar',
'name'=> __( 'Custom Widget Area', 'text_domain' ),
'description'=> __( 'A custom widget area', 'text_domain' ),
'before_title'=> '
<h3 class="widget-title">',
'after_title'=> '</h3>

',
'before_widget'=> '
<aside id="%1$s" class="widget %2$s">',
'after_widget'=> '</aside>

',
);
register_sidebar( $args );
}
add_action( 'widgets_init', 'custom_sidebars' );

اکنون میتوانید وارد بخش Appearance » Widgets شوید، در این بخش محیط ویجت ایجاد شده را مشاده خواهید کرد.

customwidgetarea

برای نمایش این محیط ویجت و سایدبار باید کد زیر را اضافه کنید:

<?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('custom_sidebar') ) : ?>
<!–Default sidebar info goes here–>
<?php endif; ?>

ویرایش خوراک RSS در فوتر

آیا تا کنون وبلاگ هایی را مشاهده کرده اید که تبلیغات خود را در خوراک سایت خود در انتهای هر پست قرار میدهند؟ شما میتوانید این کار را به راحتی با استفاده از کد زیر در سایت خود انجام دهید:

function digiwp_postrss($content) {
if(is_feed()){
$content = 'This post was written by Syed Balkhi '.$content.'Check out digiwp';
}
return $content;
}
add_filter('the_excerpt_rss', 'digiwp_postrss');
add_filter('the_content', 'digiwp_postrss');

افزودن تصاویر شاخص به خوراک RSS

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

function rss_post_thumbnail($content) {
global $post;
if(has_post_thumbnail($post->ID)) {
$content = '

' . get_the_post_thumbnail($post->ID) .
'

' . get_the_content();
}
return $content;
}
add_filter('the_excerpt_rss', 'rss_post_thumbnail');
add_filter('the_content_feed', 'rss_post_thumbnail');

مخفی سازی ارور های صفحه ورود

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

function no_wordpress_errors(){
 return 'Something is wrong!';
}
add_filter( 'login_errors', 'no_wordpress_errors' );

نکته: بجای عبازت something is wrong! میتوانید عبارت مورد نظر خود را وارد کنید.

اکنون کاربران بجای خطا ها، یک پیغام کلی را مشاهده خواهند کرد.

nologinhints

غیر فعالسازی ورود با ایمیل در وردپرس

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

remove_filter( 'authenticate', 'wp_authenticate_email_password', 20 );

غیر فعالسازی قابلیت جستجو در وردپرس

اگر میخواهید قابلیت جستجو را در سایت وردپرس خود غیر فعال کنید میتوانید به راحتی با استفاده از کد زیر این کار را انجام دهید:

function fb_filter_query( $query, $error = true ) {
if ( is_search() ) {
$query->is_search = false;
$query->query_vars[s] = false;
$query->query[s] = false;
// to error
if ( $error == true )
$query->is_404 = true;
}
}
add_action( 'parse_query', 'fb_filter_query' );
add_filter( 'get_search_form', create_function( '$a', "return null;" ) );

ایجاد تاخیر برای پست ها در خوراک

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

با استفاده از کد زیر ۱۰ دقیقه تاخیر برای ارسال و ایجاد خوراک برای مطالب خواهید داشت و میتوانید در طول این زمان مطلب خود را ویرایش کنید:

function publish_later_on_feed($where) {
global $wpdb;
if ( is_feed() ) {
// timestamp in WP-format
$now = gmdate('Y-m-d H:i:s');
// value for wait; + device
$wait = '10'; // integer
// http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_timestampdiff
$device = 'MINUTE'; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR
// add SQL-sytax to default $where
$where .= " AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, '$now') > $wait ";
}
return $where;
}
add_filter('posts_where', 'publish_later_on_feed');

تغییر متن “ادامه مطلب” برای خلاصه مطالب

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

function modify_read_more_link() {
return '<a class="more-link" href="' . get_permalink() . '">Your Read More Link Text</a>';
}
add_filter( 'the_content_more_link', 'modify_read_more_link' );

غیر فعالسازی خوراک RSS در وردپرس

تمام وبسایت ها نیازی به خوراک RSS ندارند. اگر میخواهید خوراک را از سایت وردپرس خود حذف کنید میتوانید به راحتی با استفاده از این کد این کار را انجام دهید:

function fb_disable_feed() {
wp_die( __('No feed available,please visit our <a href="'. get_bloginfo('url') .'">homepage</a>!') );
}
add_action('do_feed', 'fb_disable_feed', 1);
add_action('do_feed_rdf', 'fb_disable_feed', 1);
add_action('do_feed_rss', 'fb_disable_feed', 1);
add_action('do_feed_rss2', 'fb_disable_feed', 1);
add_action('do_feed_atom', 'fb_disable_feed', 1);

تغییر طول خلاصه مطالب در وردپرس

طول خلاصه مطالب در وردپرس ۵۵ کلمه است. اگر میخواهید آن را تغییر دهید، پس در این صورت باید از کد زیر استفاده کنید:

functionnew_excerpt_length($length) {
return 100;
}
add_filter('excerpt_length', 'new_excerpt_length');

میتوانید عدد ۱۰۰ را به عدد مورد نظر خود تغییر دهید.

افزودن کاربر ادمین در وردپرس

اگر پسوررد و ایمیل وردپرس خود را فراموش کرده اید، پس در این صورت میتوانید با استفاده از کد زیر  یک کاربر ادمین در سایت خود ایجاد کنید:

function digiwp_admin_account(){
$user = 'Username';
$pass = 'Password';
$email = 'email@domain.com';
if ( !username_exists( $user ) && !email_exists( $email ) ) {
$user_id = wp_create_user( $user, $pass, $email );
$user = new WP_User( $user_id );
$user->set_role( 'administrator' );
} }
add_action('init','digiwp_admin_account');

توجه داشته باشید که برای انجام این کار باید از کلاینت FTP و یا مدیریت فایل سرور خود در سی پنل استفاده کنید.

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

حذف پنل خوش آمد گویی در داشبورد وردپرس

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

welcomepanel

شما میتوانید به راحتی با استفاده از کد زیر این پنل را مخفی کنید:

remove_action('welcome_panel', 'wp_welcome_panel');

نمایش تعداد افراد ثبت نام شده در سایت

آیا میخواهید تعداد افراد ثبت نام شده در سایت را نمایش دهید؟ به راحتی با استفاده از کد زیر میتوانید این کار را انجام دهید.

// Function to return user count
function digiwp_user_count() { 
$usercount = count_users();
$result = $usercount['total_users']; 
return $result; 
} 
// Creating a shortcode to display user count
add_shortcode('user_count', 'digiwp_user_count');

این کد یک شورت کد ایجاد میکند که به شما اجازه میدهد تا تعداد افراد ثبت نام شده در سایت را نمایش دهید. برای انجام این کار میتوانید از شورت کد “[user_count]” در بخش مورد نظر خود استفاده کنید تا تعداد افراد ثبت نام شده در سایت شما نمایش داده شود.

حذف برخی از دسته بندی ها در خوراک RSS

آیا میخواهید برخی از دسته بندی های سایت خود را از خوراک RSS حذف کنید؟ میتوانید به راحتی با استفاده از کد زیر این کار را انجام دهید.

function exclude_category($query) {
if ( $query->is_feed ) {
$query->set('cat', '-5, -2, -3');
}
return $query;
}
add_filter('pre_get_posts', 'exclude_category');

فعالسازی اجرای شورت کد ها در ویجت های متنی

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


// Enable shortcodes in text widgets
add_filter('widget_text','do_shortcode');

ایجاد کلاس های CSS زوج و فرد در پست های وردپرس

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

function oddeven_post_class ( $classes ) {
 global $current_class;
 $classes[] = $current_class;
 $current_class = ($current_class == 'odd') ? 'even' : 'odd';
 return $classes;
}
add_filter ( 'post_class' , 'oddeven_post_class' );
global $current_class;
$current_class = 'odd';

این کد به راحتی کلاس زوج و فرد برای پست های سایت وردپرس شما ایجاد میکند، شما میتوانید از کد های CSS سفارشی خود استفاده کنید تا پست ها به صورت متفاوتی نمایش داده شوند، برای مثال میتوانید از کد CSS زیر استفاده کنید:

.even {
background:#f0f8ff; 
} 
.odd {
 background:#f4f4fb;
}

پست ها در سایت شما اینگونه نمایش داده خواهند شد:

alternatecolorspreview

افزودن انواع فایل ها به آپلود های وردپرس

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

function my_myme_types($mime_types){
 $mime_types['svg'] = 'image/svg+xml'; //Adding svg extension
 $mime_types['psd'] = 'image/vnd.adobe.photoshop'; //Adding photoshop files
 return $mime_types;
}
add_filter('upload_mimes', 'my_myme_types', 1, 1);

این کد به شما اجازه میدهد تا بتوانید فایل های SVG و PSD را به سایت خود آپلود کنید.

حذف لینک های پیشفرض تصاویر در وردپرس

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

شما میتوانید این روند را از حالت اتوماتیک خارج کنید و این کار را خود به صورت دستی انجام دهید. برای انجام این کار کافیست تا از کد زیر استفاده کنید:

function digiwp_imagelink_setup() {
 $image_set = get_option( 'image_default_link_type' );
 if ($image_set !== 'none') {
 update_option('image_default_link_type', 'none');
 }
}
add_action('admin_init', 'digiwp_imagelink_setup', 10);

اکنون وقتی که تصویر خود را در سایت آپلود کنید، به صورت اتوماتیک لینک نخواهد شد، شما میتوانید این کار را به صورت دستی انجام دهید.

linkdisabled

افزودن باکس اطلاعات نویسنده به پست های وردپرس

اگر سایت شما دارای چند نویسنده باشد و اگر میخواهید در پایان پست های سایت اطلاعات و بیوگرافی آنها را نمایش دهید، میتوانید از این روش استفاده کنید. برای شروع میتوانید کد زیر را به فایل توابع وردپرس اضافه کنید:

function digiwp_author_info_box( $content ) {
global $post;
// Detect if it is a single post with a post author
if ( is_single() && isset( $post->post_author ) ) {
// Get author's display name 
$display_name = get_the_author_meta( 'display_name', $post->post_author );
// If display name is not available then use nickname as display name
if ( empty( $display_name ) )
$display_name = get_the_author_meta( 'nickname', $post->post_author );
// Get author's biographical information or description
$user_description = get_the_author_meta( 'user_description', $post->post_author );
// Get author's website URL 
$user_website = get_the_author_meta('url', $post->post_author);
// Get link to the author archive page
$user_posts = get_author_posts_url( get_the_author_meta( 'ID' , $post->post_author));
 if ( ! empty( $display_name ) )
$author_details = '<p class="author_name">About ' . $display_name . '</p>';
if ( ! empty( $user_description ) )
// Author avatar and bio
$author_details .= '<p class="author_details">' . get_avatar( get_the_author_meta('user_email') , 90 ) . nl2br( $user_description ). '</p>';
$author_details .= '<p class="author_links"><a href="'. $user_posts .'">View all posts by ' . $display_name . '</a>'; 
// Check if author has a website in their profile
if ( ! empty( $user_website ) ) {
// Display author website link
$author_details .= ' | <a href="' . $user_website .'" target="_blank" rel="nofollow">Website</a></p>';
} else { 
// if there is no author website then just close the paragraph
$author_details .= '</p>';
}
// Pass all this info to post content 
$content = $content . '<footer class="author_bio_section" >' . $author_details . '</footer>';
}
return $content;
}
// Add our function to the post content filter 
add_action( 'the_content', 'digiwp_author_info_box' );
// Allow HTML in author bio section 
remove_filter('pre_user_description', 'wp_filter_kses');

سپس نیاز خواهید داشت تا یکسری کلاس CSS سفارشی استفاده کنید تا ظاهر باکس را زیباتر جلوه دهید. میتوانید از مثال زیر برای CSS استفاده کنید:

.author_bio_section{
background: none repeat scroll 0 0 #F5F5F5;
padding: 15px;
border: 1px solid #ccc;
}
.author_name{
font-size:16px;
font-weight: bold;
}
.author_details img {
border: 1px solid #D8D8D8;
border-radius: 50%;
float: left;
margin: 0 10px 10px 0;
}

باکس نویسنده به این شکل خواهد بود:

manualauthorinfo

غیر فعالسازی XML-RPC در وردپرس

XML-RPC یک روش است که برنامه ها اجازه میدهد تا به صورت از راه دور (ریموت) با سایت وردپرس شما ارتباط داشته باشند، این قابلیت دارای ریسک های امنیتی است و میتواند توسط هکر ها استفاده شود و عامل نفوذی به سایت شما باشد.

به راحتی میتوانید این کد را به فایل توابع وردپرس اضافه کنید و این قابلیت را غیر فعال کنید:

add_filter('xmlrpc_enabled', '__return_false');

قابلیت لینک اتوماتیک تصاویر شاخص به پست ها

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

function digiwp_autolink_featured_images( $html, $post_id, $post_image_id ) {
If (! is_singular()) { 
$html = '<a href="' . get_permalink( $post_id ) . '" title="' . esc_attr( get_the_title( $post_id ) ) . '">' . $html . '</a>';
return $html;
} else { 
return $html;
}
}
add_filter( 'post_thumbnail_html', 'digiwp_autolink_featured_images', 10, 3 );

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

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

  • دیدگاهتان فقط و فقط در رابطه با همین مطلب باشد.
  • لطفا از تایپ فینگلیش بپرهیزید. در غیر اینصورت دیدگاه شما بررسی نخواهد شد.
  • هدفتان از ارسال دیدگاه تبلیغ یا بک لینک نباشد. در غیر اینصورت دیدگاه حذف می شود.
  • به دیگر توهین و اهانت نکنید.

پاسخ دهید

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