محافظت از نوشته ها در وردپرس

سلام دوستای گلم؛

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

گام اول:

یک پوشه ی خالی در بخش پلاگین های وردپرس ایجاد کنید و اون رو نامگذاری کنید.مثلا protected-text

ax-1

گام دوم:

یک فایل داخل آن ایجاد کنید و اون رو protected-text.php بنامید و محتویات آن را به صورت کد زیر بذارید:

ax-2

<?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' );

به همین راحتی!

شاد باشید

آیا این مقاله برای شما مفید بود؟
تقریبا
خیر

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

ارسال دیدگاه به معنی این است که شما ابتدا قوانین ارسال دیدگاه را مطالعه کرده‌اید و با آن موافق هستید.

دیدگاه‌های این نوشته جدید ترین ها شاخص

  1. 9 سال عضو همیار وردپرس

    سلام
    ممنون از مطالب خوبتون
    منم مثل بهنام میخوام توی سایتی که دارم درست میکنم قسمتهای مختلفی از هر صفحه رو از دید خوانندها پنهان کنم و فقط کسی که پسور داشته باشه بتونه با یک بار زدن پسورد همه قسمت های پنهان همه صفحات رو ببینه (پسورد همه مطالب و بخش ها یکی هست)
    مطالب شما راجع به :
    آموزش پنهان کردن برخی مطالب از صفحه اصلی سایت + آموزش ویدیویی
    چگونه محتوایی را از صفحه ی اول سایت پنهان کنیم؟
    رو هم خوندم ولی مشکل من فرق داره

    در این زمینه یه افزونهه خوب پیدا کردم به نام content protector که اکثر کارهایی که میخوام رو انجام میده. تنها یه مشکل داره و اینه که اگه تو یه صفحه پنج قسمت رو از دیدخواننده پنهان کنم، به جای هر پنج قسمت فرم پسورد رو میاره که هم زائد هست و هم تو سرچ گوگل پنج بار فرم پسورد را وارد کنید میاد.
    میخواستم اگه بشه چیزی معرفی کنید که این مشکل رو هم نداشته باشه و یا اگه ممکنه تغییراتی تو فایلش داد.

    ببخشید طولانی شد.
    ممنون از فعالیت و پاسخ دهی خوبتون.

    • 11 سال عضو همیار وردپرس

      سلام
      باید بررسی کنم ببینم چطوریه. در صورتی که پیدا شد حتما

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

    • 11 سال عضو همیار وردپرس

      سلام
      تنها راهی که برای این موضوع وجود داره گذاشتن مطالب به صورت فروم و یا به صورت عضویت در سایت هستش که این اتفاق میفته

  3. درودممنون از انتشار این آموزشدر کد ها خطا وجود دارد و به درستی کارنمیکندممنون میشوم بررسی نمایید

    • 11 سال عضو همیار وردپرس

      سلام
      خیر مشکلی نیست ، برخی اطلاعات باید با توجه به سایت خودتون تغییر کنه