سلام دوستای گلم؛
همونطور که ما برای پنل ادمین خودمون از رمز های مختلف استفاده می کنیم گاهی لازمه برای نوشته هامون رو هم حفاظت شده به کار ببریم.
زمانی که بر روی متنی در وردپرس پسورد حفاظتی قرار میدیم،معمولا به صورت پیش فرض به درستی کار نمیکنه! برای همین امروز میخوام بهتون یاید بدم که چطوری خودتون این کار رو دقیق انجام بدید.
گام اول:
یک پوشه ی خالی در بخش پلاگین های وردپرس ایجاد کنید و اون رو نامگذاری کنید.مثلا protected-text
گام دوم:
یک فایل داخل آن ایجاد کنید و اون رو protected-text.php بنامید و محتویات آن را به صورت کد زیر بذارید:
<?php /* Plugin Name: Password Protected Text Plugin URI: http://code.tutsplus.com Description: This plugin changes the default password protected text. Version: 1.0 Author: code.tutsplus.com Author URI: http://code.tutsplus.com */
این متن ساده اطلاعاتی درباره ی افزونه ی شما ایجاد میکنه و به صورت یک اعتبار محسوب میشه!
گام سوم:
اولین قطعه کد تغییرات پسورد رو تحت حمایت قرار میده و میتونه پسورد وارد شده رو برای دفعه ی بعدی در حافظه ی خودش ثبت کنه.
function password_protected_change( $content ) { global $post; if ( ! empty( $post->post_password ) && stripslashes( $_COOKIE['wp-postpass_'.COOKIEHASH] ) != $post->post_password ) }
گام چهارم:
حالا میخوایم برای این افزونه یک باکس پیام ایجاد کنیم! شما میتونید پیام اصلی رو در هر فضایی ایجاد کنید،مثلا پیام من اینطوریه: ” افزودن نوشته ی ویژه”!
برچسب این پیام به صورت labale for=”post-password هستش!
$output = ' <form action="' . get_option( 'siteurl' ) . '/wp-pass.php" method="post"> '.__( "Add your custom message!" ).' <label for="post_password">Password:</label> <input name="post_password" class="input" type="password" size="20" /> <input type="submit" name="Submit" class="button" value="' . __( "Submit" ) . '" /> </form> '; return $output; }
گام پنجم:
موضوع دیگه ای که وجود داره اینه که، اگه پسورد امنیتی ندارید و نمیخواهید بر روی نوشته هایی استفاده نکنید، میتونید از قطعه کد زیر استفاده کنید:
} else { return $content; }
گام ششم:
در مرحله ی آخر باید به وردپرس بگیم که از تابع ما زمانی که محتوا بارگذاری میشه استفاده کنه :
add_filter( 'the_content','password_protected_change' );
به همین راحتی!
شاد باشید