পোস্ট বিষয়বস্তু, শিরোনাম এবং লেখক পার্থক্য
যেমন কিছু মাস আগে সম্পর্কিত কিছু করতে হয়েছিল, বিষয়বস্তু বা শিরোনামে কোনও পরিবর্তন হয়েছে কিনা বা লেখক পরিবর্তন হয়েছে কিনা তা যাচাই করার জন্য এখানে সবচেয়ে সহজ এবং ভবিষ্যতের প্রমাণ উপায় (যা আমি জরিমানা করতে পারি):
// Update Title
'' !== wp_text_diff(
$el['post_title'],
$GLOBALS['post']->post_title
)
AND $GLOBALS['post']->post_title = $el['post_title'];
// Update Content
'' !== wp_text_diff(
$el['post_content'],
$GLOBALS['post']->post_content
)
AND $GLOBALS['post']->post_content = $el['post_content'];
// Update author
$GLOBALS['post']->post_author !== $el['post_author']
AND $GLOBALS['post']->post_author = $el['post_author'];
আমার দৃশ্যের সংক্ষিপ্ত বিবরণ দেওয়ার জন্য: আমি একটি দূরবর্তী অবস্থান থেকে একটি রিমোট API এর মাধ্যমে পোস্টগুলি আনছিলাম। তারপরে আমি global $post
একক পোস্ট লুপ চলাকালীন আসল তথ্য বা নতুন ডেটা সম্বলিত ফিরিয়ে দিয়েছি । এইভাবে আমি অন্য সমস্ত পোস্টের মানগুলি পরিবর্তন করে যাচাই করার দরকার পড়েনি।
সম্পাদনার প্রস্তাব দেওয়া হচ্ছে
পোস্টের সামগ্রীর অনুলিপি-সম্পাদনা (অস্থায়ীভাবে) সংরক্ষণ করা যায় এমন কোনও জায়গায় অনুসন্ধান করার সময় মূল বিষয়টিকে মনে রাখতে হবে যে বিষয়বস্তুটি একটি ডিবি এন্ট্রি longtext
। সুতরাং যে জায়গাটিতে কেউ প্রস্তাবিত সম্পাদনাটি সংরক্ষণ করতে চায় সে জায়গার সেই প্রয়োজনটি পূরণ করা উচিত। মন্তব্য যে না।
তারপরে খুব সুন্দর সত্য আছে যে তারা এগুলিকে একটি লুপে সুন্দরভাবে রাখার জন্য একটি এপিআই দেয়, সুতরাং এটি সহজেই সংহত হয়, অত্যন্ত স্বনির্ধারিত এবং দ্রুত সেটআপ করা যায়। সর্বশেষে তবে কমপক্ষে বেশিরভাগ থিম ইতিমধ্যে মন্তব্যগুলিতে সমন্বিত হয়ে এসেছে যাতে এটি সিস্টেমে পিগব্যাক করা সহজ এবং প্রায় যে কোনও উপলভ্য থিমটিতে আবদ্ধ হয়।
আমি মন্তব্য ফর্মটি কেবল (উভয়) প্রসারিত বা পরিবর্তন করার পরামর্শ দেব। নিম্নলিখিতটি ব্যবহার করুন বা একটি কলব্যাকের সাথে সংযুক্ত অতিরিক্ত ক্ষেত্র যুক্ত করুন comment_form_default_fields
।
<?php
// Add it for logged in users and guests:
add_action( 'comment_form_logged_in_after', 'wpse_proposed_edit_textarea' );
add_action( 'comment_form_after_fields', 'wpse_proposed_edit_textarea' );
function wpse_proposed_edit_textarea()
{
?>
<p class="comment-form-title">
<label for="wpse_propsed_edit">
<?php _e( 'Propose Edit', 'your_textdomain' ); ?>
</label>
<textarea name="wpse_propsed_edit" id="wpse_propsed_edit">
<?php the_content(); ?>
</textarea>
</p>
<input type="hidden" name="comment_approved" id="comment_approved" value="0" />
<?php
}
সুতরাং আমি কাতারে সেট করার মান সহ একটি hidden
ক্ষেত্র যুক্ত করেছি । নিশ্চিত না যে এটি কাজ করবে কিনা বা যদি (মূল) মানটি আসলে মেটা ডেটা মন্তব্য করে এবং সংরক্ষণের সময় ব্যবহার করে যুক্ত হওয়া দরকার । যদি তা না হয় তবে আপনি নিম্নলিখিত কোডের লাইন বরাবর কিছু ব্যবহার করতে পারেনcomment_approved
0
add_comment_meta()
add_filter( 'pre_comment_approved' , 'wpse_pre_suggest_edit', 100, 2 );
function wpse_pre_suggest_edit( $approved , $commentdata )
{
// You might need to inspect $commentdata
// to determine approval, disapproval, or spam status
if ( ! empty( $commentdata['wpse_propsed_edit'] ) )
{
# Now add a filter to the comment post action, so we save a meta entry
add_action( 'comment_post', 'wpse_set_proposed_edit' );
return 0;
}
return 1;
}
// This function makes it easier for us to identify the comments by their meta value
function wpse_set_proposed_edit( $comment_id );
{
// Only run once
remove_filter( current_filter(), __FUNCTION__ );
add_comment_meta( $comment_id, 'proposed_edit', true, true );
}
অ্যাডমিন পক্ষের মন্তব্যগুলি প্রদর্শন করা হচ্ছে
এখানে আমি একটি সাধারণ শ্রেণিবদ্ধকরণ এবং একটি কাস্টম প্রশাসক পৃষ্ঠা সহ যাব:
function wpse_add_proposed_edits_admin_page()
{
add_menu_page(
'Proposed Edits',
'Suggested Edits',
'activate_plugins',
'proposed_edits',
'wpse_proposed_edits_page_cb'
);
}
add_action( 'admin_menu', 'wpse_add_proposed_edits_admin_page' );
function wpse_proposed_edits_page_cb()
{
$proposed_edits_table = new WP_Proposed_Edits_Table();
$proposed_edits_table->prepare_items();
$proposed_edits_table->display();
}
class WP_Proposed_Edits_Table extends WP_List_Table
{
// Override List table default logic in here
}
WPEngineer এ আরও তথ্য পাওয়া যাবে ।
সম্পাদনাগুলি অনুমোদিত হচ্ছে
তারপরে আপনি কাস্টম অ্যাকশন যুক্ত করতে পারেন এবং প্রস্তাবিত সম্পাদনাগুলি প্রথম কোড ব্যবহার করে প্রসেস করতে পারেন যা আমি দেখলাম কোন পরিবর্তন আছে কিনা তা পরীক্ষা করতে এবং তারপরে কেবল পোস্টটি আপডেট করে। মন্তব্য নিজেই একটি কী এর সাথে একটি মান ধারণ করে comment_post_ID
, তাই সম্পাদিত পোস্ট আইডি সনাক্তকরণ সরাসরি এগিয়ে is
চূড়ান্ত নোট
আমি চূড়ান্ত প্লাগইন দেখতে চাই। এটি এখানে লিঙ্ক করুন :)