আমি কীভাবে আমার ডাব্লুপি প্রশাসক বিভাগটি গতিময় করতে পারি?


12

আমাদের কাছে অনেকগুলি ডাব্লুপি সাইট রয়েছে যে তারা যে সার্ভারগুলিতে বসে থাকে এবং ইন্টারনেটের মধ্যে একটি প্রক্সি থাকে।

ডব্লিউপিতে কিছু জিনিস কেবল কাজ করে না:

  • আরএসএস ড্যাশবোর্ডে ফিড দেয়
  • থিমগুলি সন্ধান করছি
  • প্লাগইন সন্ধান করছি
  • মূল আপডেট

আমরা ম্যানুয়ালি সবকিছু করি এবং পৃষ্ঠা লোডে স্লুজন ব্যতীত আসলেই কোনও সমস্যা নেই। দেখে মনে হচ্ছে অ্যাডমিনের প্রায় সমস্ত কিছুই মিডিয়া যুক্ত করা ছাড়া প্রক্রিয়া করতে 4-5 সেকেন্ড সময় নেয় - যা আশ্চর্যজনকভাবে দ্রুত।

ব্যাক-এন্ড গতি বাড়ানোর জন্য কিছু প্রাথমিক জিনিস যা আমি যাচাই বা করতে পারি? (সামনের প্রান্তে উড়ে)


3
আপনি সংজ্ঞা দ্বারা বাহ্যিক অনুরোধ ব্লক করে দিতে পারেন define( 'WP_HTTP_BLOCK_EXTERNAL', true );মধ্যে wp-config.php। এছাড়াও Open Sansগুগল থেকে ওয়ার্ডপ্রেস অ্যাডমিন এনকুইস এবং অন্যান্য ফন্টগুলি। আপনি এটি নিষ্ক্রিয় করতে পারেন। এটি লোড অ্যাডমিন বিভাগটিকে কিছুটা দ্রুত করে তোলে।
রবার্ট হু

@ রবার্থিউ - এটি প্রায় মনে হয় অ্যাডমিনের অনেকগুলি পৃষ্ঠা ওয়েবে কল করে। আমরা তাদের সমস্ত বন্ধ করতে চাই। এটি কীভাবে প্রতিক্রিয়া দেখায় তা এখন বন্ধ করে দেওয়া বাহ্যিক অনুরোধটি যুক্ত করা।
দংশন

1
@ রবার্থিউ - নিশ্চিত না যে আমি কেন আগে কখনও এটি ব্যবহার করি নি - আপনি কি জানেন কখন ডাব্লুপিটিপিটিপি_ব্লোক_সেক্সট্রনাল কখন কার্যকর হয়েছিল? আমি এটিকে আমার প্লাগিনে যুক্ত করেছি (আমার কাছে সর্বত্র প্রস্তাবিত একটি প্লাগইন রয়েছে) এবং সমস্ত পৃষ্ঠা লোড করার উপায় রয়েছে। একটি উত্তর হিসাবে গ্রিডহীন এর জন্য দয়া করে এটিকে যুক্ত করুন।
স্টি

এটা কয়েক বছর ধরে আছে। এটি কখন যুক্ত হয়েছিল ঠিক তা নিশ্চিত নয়। আমি যখন এই নিবন্ধটি
রবার্ট হু

1
উত্তর হিসাবে দয়া করে। এছাড়াও এটি খুব দীর্ঘ সময় ধরে ছিল, সম্ভবত (প্রায়) যতক্ষণ এটি এইচটিটিপি এপিআই হিসাবে রয়েছে।
রাস্ট 17

উত্তর:


12

পাদলেখের মধ্যে jQuery / জাভাস্ক্রিপ্ট

আপনি যা করতে পারেন তা হ'ল jQueryটিকে পাদলেখ ব্লগ পোস্টে স্থানান্তর করা । এটি শিরোনামে ডিফল্টরূপে প্রয়োজন হয় না। এখনও সব কিছু শক্ত কাজ করে কিনা তা আপনার চেক করতে হবে, কারণ আমি সাধারণত থিমগুলির জন্য এটি করি:

<?php
/* Plugin Name: Move jQuery to the footer */
function( 'admin_enqueue_scripts', function( $hook )
{
    $GLOBALS['wp_scripts']->add_data( 'jquery', 'group', 1 );
} );

ক্যোয়ারী

পোস্ট তালিকার টেবিলের পর্দার গতি বাড়িয়ে তোলে এমন আরেকটি বিষয় হল অনুসন্ধানের ক্ষেত্রগুলির সংখ্যা হ্রাস করা। কিছুক্ষণ আগে আমি সেই সমস্যাটি লক্ষ্য করেছি যখন আমার 999 টি পোস্টের সেটিংসের কারণে যখন সেই স্ক্রিনগুলি খুব ধীরে লোড হচ্ছে। এখানে সম্পূর্ণ ব্লগ পোস্ট - গিটহাব গিস্ট হিসাবে প্লাগইন ।

<?php
/**
 * Plugin Name: (WCM) Faster Admin Post Lists
 * AuthorURL:   http://unserkaiser.com
 * License:     MIT
 */

add_filter( 'posts_fields', 'wcm_limit_post_fields_cb', 0, 2 );
function wcm_limit_post_fields_cb( $fields, $query )
{
  if (
        ! is_admin()
        OR ! $query->is_main_query()
        OR ( defined( 'DOING_AJAX' ) AND DOING_AJAX )
        OR ( defined( 'DOING_CRON' ) AND DOING_CRON )
    )
        return $fields;

    $p = $GLOBALS['wpdb']->posts;
    return implode( ",", array(
        "{$p}.ID",
        "{$p}.post_date",
        "{$p}.post_name",
        "{$p}.post_title",
        "{$p}.ping_status",
        "{$p}.post_author",
        "{$p}.post_password",
        "{$p}.comment_status",
    ) );
}

আপনার যদি সমস্ত কলামের প্রয়োজন না হয় তবে আপনি কিছু কলামের বিষয়বস্তু অপসারণ করে উপরের প্লাগইনটি প্রসারিত করতে পারেন।

add_filter( 'manage_edit-post_columns', function( $columns )
{
    # @TODO Remove columns which you don't need
    return $defaults;
} );

ড্যাশবোর্ড

প্রতিটি ব্যবহারকারী ড্যাশবোর্ডে প্রবেশ করে - এটি অ্যাডমিন ইউআইয়ের সম্ভবত সবচেয়ে ধীরতম অংশ। আপনি কিছু উইজেটগুলি নিষ্ক্রিয় করতে পারেন যা আপনার প্রয়োজন নেই, কেবল সেগুলি লুকানোর পরিবর্তে:

<?php
/** Plugin Name: Remove Dashboard Widgets */
add_action( 'wp_dashboard_setup', function()
{
    remove_meta_box( 'dashboard_plugins', 'dashboard', 'normal' );
    remove_meta_box( 'dashboard_primary', 'dashboard', 'normal' );
    remove_meta_box( 'dashboard_primary', 'dashboard', 'side' );
    remove_meta_box( 'dashboard_activity', 'dashboard', 'normal' );
    remove_meta_box( 'dashboard_right_now', 'dashboard', 'normal' );
    remove_meta_box( 'dashboard_secondary', 'dashboard', 'normal' );
    remove_meta_box( 'dashboard_quick_press', 'dashboard', 'side' );
    remove_meta_box( 'dashboard_browser_nag', 'dashboard', 'normal' );
    remove_meta_box( 'dashboard_recent_drafts', 'dashboard', 'side' );
    remove_meta_box( 'dashboard_incoming_links', 'dashboard', 'normal' );
    remove_meta_box( 'dashboard_incoming_links', 'dashboard', 'normal' );
    remove_meta_box( 'dashboard_recent_comments', 'dashboard', 'normal' );
} );

বহির্গামী ডেটা

কোন তথ্য আপনার ইনস্টলেশনটি ছেড়ে যাওয়ার চেষ্টা করে তা পর্যবেক্ষণ করতে আমি কেবল সের্গেজ মুলার দ্বারা স্নিচ ব্যবহার করার পরামর্শ দিতে পারি। প্লাগইনটি সমস্ত বা কেবলমাত্র নির্দিষ্ট সংযোগগুলিকে দমন করার পাশাপাশি পিনপয়েন্ট নির্দিষ্ট অভ্যন্তরীণ সংযোগগুলিকে দমন করতে দেয় যা অবাঞ্ছিত ক্রোন জবস এবং অনুরূপ জিনিসগুলির মতো কাজগুলিকে লক্ষ্য করে। আপনি যদি পুরো প্যাকেজটি না চান তবে উদাহরণের জন্য আপনি এর উত্সটি দেখতে পারেন। সার্জেজ সাধারণত উদার সাদা জায়গার ব্যবহারের সাথে খুব পঠনযোগ্য কোড লেখেন ।


1
প্লাগিন ডিবাগ অবজেক্টগুলির মাধ্যমে আপনি কী তথ্যগুলি, ফাংশনগুলি বরখাস্ত করা হয়েছিল এবং তিনি কত দিন চালাচ্ছেন তা দেখতে আপনি দরকারী তথ্যও পেতে পারেন। এছাড়াও যা থেকে ফাংশন, প্লাগইন আসে ক্যোরি।
বেলজ

4

আমি এই https://github.com/johnbillion/query-monitor ইনস্টল করার এবং নীচের দিকে নজর দেওয়ার পরামর্শ দিচ্ছি : মেমরির ব্যবহার, এইচটিটিপি অনুরোধ, এজেএক্স এবং ধীর অনুসন্ধানগুলি।

এটি আপনার সংশোধনগুলি, একটি প্লাগইনের এজেএক্স, একটি খারাপ কোয়েরি ইত্যাদি হতে পারে

আপনি যদি আপনার সার্ভারে আরও বেশি র্যাম যুক্ত করতে চান যা সাধারণত ধীর লোডিং অ্যাডমিন সমস্যার সমাধান করে, বিশেষত যদি অ্যাডমিনে আপনার একাধিক সম্পাদক থাকে তবে আপনি তা দেখতে সক্ষম হবেন।

তবে এখানে কয়েকটি কৌশল এবং একটি সমাধানে সমস্ত কিছুই নেই, আপনাকে থিমগুলি কীভাবে প্লাগইনগুলি অ্যাডমিনের সাথে ইন্টারঅ্যাক্ট করছে তা পরীক্ষা করে দেখতে হবে।


2

উপরের কয়েকটি প্রস্তাবিত উত্তরের পাশাপাশি আপনি ওয়ার্ডপ্রেস "হার্টবিট" সীমাবদ্ধ বা অক্ষম করতে পারবেন যা আপনার প্রশাসককে নাটকীয়ভাবে ধীর করতে পারে যদি আপনার অনেকগুলি স্ক্রিন খোলা থাকে বা একসাথে অনেক ব্যবহারকারী ব্যবহার করেন। ডাব্লুপি-ইঞ্জিনের মতো বেশ কয়েকটি হোস্টের স্বয়ংক্রিয়ভাবে এই সেটআপটির ভিন্নতা রয়েছে।

function optimize_heartbeat_settings( $settings ) {
    $settings['autostart'] = false;
    $settings['interval'] = 60;
    return $settings;
}
add_filter( 'heartbeat_settings', 'optimize_heartbeat_settings' );

function disable_heartbeat_unless_post_edit_screen() {
    global $pagenow;
    if ( $pagenow != 'post.php' && $pagenow != 'post-new.php' )
        wp_deregister_script('heartbeat');
}
add_action( 'init', 'disable_heartbeat_unless_post_edit_screen', 1 );

আর একটি জিনিস যা আপনি চেষ্টা করতে পারেন তা হ'ল কয়েকটি wp-config.phpধ্রুবকের সাথে ঝোঁক। পোস্ট পুনর্বিবেচনাগুলি বন্ধ করা প্রশ্নবিদ্ধ সহায়তা ছাড়াই হবে, তবে আপনি যদি এটি না করতে চান তবে আপনি কমপক্ষে সংশোধনগুলি সীমাবদ্ধ করতে পারেন।

define('WP_POST_REVISIONS', 5);

জিনিসগুলি অপটিমাইজ রাখতে আমি আরও দু'টি ধ্রুবক পরিবর্তন করি তা হ'ল খালি ট্র্যাশ এবং অটোসোভগুলি।

define('AUTOSAVE_INTERVAL', 600);
define( 'EMPTY_TRASH_DAYS', 3 );

সমস্যা নেই. পাশাপাশি আরও কয়েকটি বিকল্প যুক্ত করা হয়েছে।
ব্রায়ান উইলিস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.