ওয়ার্ডপ্রেস ফাইলগুলির বাইরে ওয়ার্ডপ্রেস ফাংশনগুলি ব্যবহার করার সঠিক উপায় কী?


59

আমি ওয়ার্ডপ্রেস ফাইলগুলির বাইরে ওয়ার্ডপ্রেস ফাংশন শুরু করার জন্য প্রায় 2 টি পদ্ধতি পড়েছি তাই আমরা ওয়ার্ডপ্রেস ব্লগের বাইরে যে কোনও পৃষ্ঠা বা ওয়েবসাইটে এই ফাংশনগুলি ব্যবহার করতে পারি।

এই 2 টি পদ্ধতির মধ্যে কোনটি সঠিক? উভয়ই সঠিক হলে প্রতিটি পদ্ধতির ব্যবহারের ক্ষেত্রে কী কী? একটি পদ্ধতি বা অন্য পদ্ধতি ব্যবহারের মধ্যে পার্থক্য কী?

পদ্ধতি 1:

<?php 
    define('WP_USE_THEMES', false);
    require('./wp-blog-header.php');
?>

পদ্ধতি 2:

<?php 
    define('WP_USE_THEMES', false);
    require('./wp-load.php');
?>

আপনি কোন ডাব্লুপি ফাংশন "ডাব্লুপিপির বাইরে" ব্যবহার করার চেষ্টা করছেন এবং কেন? এই পদ্ধতির যে কোনও একটি এখনও ডাব্লুপি পরিবেশকে (থিম সমর্থন ব্যতীত) লোড করবে, সুতরাং আপনি এখনও ডাব্লুপিপির অভ্যন্তরে ফাংশনগুলি চাচ্ছেন।
এমএএমএএন ২

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

আমি সত্যিই সন্দেহ করি আপনি এইভাবেই কাজটি করতে চান ... ওয়ার্ডপ্রেস নিজেই বুটস্ট্র্যাপ করার চেষ্টা করার চেয়ে আরও ভাল সমাধান রয়েছে।
এমএএনএএনএন ২

আমি পরামর্শের জন্য উন্মুক্ত, আমি জিনিসগুলি করার সর্বোত্তম উপায়টি খুঁজছি? বাইরের ওয়েব অ্যাপ্লিকেশনটির সাথে ওয়ার্ডপ্রেস থিম সংহত করার সর্বোত্তম উপায় কী?
আলহোসানী

উত্তর:


58

ফাইলগুলির মধ্যে সামান্য পার্থক্য রয়েছে। আপনি যখন কোনও ওয়ার্ডপ্রেস পৃষ্ঠা দেখেন, প্রথম ফাইলটি হয় index.php। এবং এটি মূলত আপনার "পদ্ধতি 1:"

define('WP_USE_THEMES', true);

/** Loads the WordPress Environment and Template */
require ('./wp-blog-header.php');

ব্লগ শিরোলেখ ফাইলটি (যা ওয়ার্ডপ্রেসের বাকী সারিতে দাঁড়িয়ে আছে) wp-load.phpসরাসরি লোড হয় এবং ওয়ার্ডপ্রেসকেই আগুন দেয়। এখানে বেশিরভাগ wp-blog-header.php:

if ( !isset($wp_did_header) ) {

    $wp_did_header = true;

    require_once( dirname(__FILE__) . '/wp-load.php' );

    wp();

    require_once( ABSPATH . WPINC . '/template-loader.php' );

}

সুতরাং আপনার দুটি পদ্ধতির মধ্যে পার্থক্য হ'ল ... কী লোড হয়েছে।

পদ্ধতি 1 হ'ল ওয়ার্ডপ্রেস নিজে লোড করার জন্য যা করে (থিমগুলি বন্ধ করে দেওয়ার ব্যতীত)। সুতরাং আপনার যদি সমস্ত ওয়ার্ডপ্রেস প্রয়োজন হয় এবং সমস্ত ডিফল্ট হুক / ক্রিয়াকলাপ সরিয়ে দিতে চান তবে সেই রুটটি নিয়ে যান।

পদ্ধতি 2 লাইনটি থেকে আরও এক ধাপ। এটি সমস্ত ওয়ার্ডপ্রেস লোড করে, তবে wp()টেমপ্লেট লোডারকে (থিমগুলি দ্বারা ব্যবহৃত) কল বা অনুরোধ করে না । পদ্ধতি 2টি কিছুটা হালকা ওজনে হবে তবে আপনার একই কার্যকারিতা দেওয়া উচিত।


3
এখানে কোন চিত্র বা এমন কিছু আছে যা এই সমস্ত ফাইলকে ম্যাপ করে? আমি অনেক আগে দেখেছি কিন্তু এটি খুঁজে পাচ্ছি না।
নিনজা08

17

আপনার প্রশ্ন থেকে পদ্ধতি 2:

<?php 
define( 'WP_USE_THEMES', false ); // Don't load theme support functionality
require( './wp-load.php' );

wp-load.phpওয়ার্ডপ্রেসের সমস্ত ফাংশনে অ্যাক্সেস হ'ল এটি। প্রথম লাইন ওয়ার্ডপ্রেসকে থিম ফাইলগুলি লোড না করতে বলে; আপনার প্রয়োজনীয়তার জন্য ফাইলগুলি প্রয়োজনীয়, তারপরে লাইনটি সরিয়ে ফেলুন।


1
প্রথম লাইন এমনকি মানে কি?
সেগিভ এসইও

8
প্রথম লাইন ওয়ার্ডপ্রেসকে তার সমস্ত থিম সমর্থন কার্যকারিতা লোড না করার কথা বলে। মূলত, কম ফাইল লোড করুন।
এমএএমএএন

প্রথম লাইনটি কি কেবল প্রথম পদ্ধতির জন্য প্রয়োজন?
mcont

4

wp-blog-header.php একটি শিরোলেখের স্থিতি সংযুক্ত করবে, এটি 404 এর একটি HTTP স্থিতি কোডটি ফিরিয়ে দেবে

wp-load.php করবে না

এটি আজব্যাক্স ব্যবহার করার সময় নোট করা কার্যকর কারণ এটি স্থিতি কোডটি যাচাই করে


2

কখনও কখনও থিমের ফাংশন.এফপি লোড করা আপনাকে কিছুটা সমস্যা তৈরি করতে পারে। এটি আমার অন্যান্য পৃষ্ঠার এইচটিএমএলকে ভঙ্গ করছিল। তাই আমি এটাই করেছি এবং আমার সমস্যার সমাধান করেছি:

define('STYLESHEETPATH', '');
define('TEMPLATEPATH', '');
require_once(RAIZ_WORDPRESS."/wp-load.php");

0

@ ninja08

স্ক্রিপ্ট বিশ্লেষণ করতে আমরা xDebug php এক্সটেনশন ব্যবহার করতে পারি।

শুধু সক্ষম ;xdebug.profiler_enable = 1আপনার php.iniসরিয়ে ফাইল ;লাইনের প্রথম থেকে এবং এই পুনর্সূচনা Apache সার্ভার পর এবং আপনার ওয়ার্ডপ্রেস সাইট ... এখন একটি মাধ্যমে এই ফাইলটি ..open আপনার XAMPP সার্ভারের tmp ডিরেক্টরির মধ্যে নির্মিত ফাইলটি রান WincachGrind আবেদন।

এখন আপনি আপনার স্ক্রিপ্টের একটি মানচিত্র দেখতে পারেন

উইঙ্কছেগ্রিন্ড সরল ওয়ার্ডপ্রেস বিশ্লেষণ


নীঞ্জা08 এর নীচের মন্তব্যে আপনার এটি যুক্ত করা উচিত ছিল। এটি এখন একটি ভুল উত্তর।
alhoseany

2
@ আলহোসানী হ্যাঁ..আমি এখন ... তবে আমার যথেষ্ট খ্যাতি নেই ... এবং তারপরে আমি এটি করার সিদ্ধান্ত নিয়েছি।
মোস্তফা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.