Saya membaca tentang 2 metode untuk menginisialisasi fungsi WordPress di luar file WordPress sehingga Kami dapat menggunakan fungsi-fungsi ini pada halaman atau situs web di luar blog WordPress.
Yang mana dari 2 metode ini yang benar? Apa kasus penggunaan untuk setiap metode jika keduanya benar? Apa perbedaan antara menggunakan satu metode atau yang lain?
Metode 1:
<?php
define('WP_USE_THEMES', false);
require('./wp-blog-header.php');
?>
Metode 2:
<?php
define('WP_USE_THEMES', false);
require('./wp-load.php');
?>
php
wp-load.php
wp-blog-header.php
alhoseany
sumber
sumber
Jawaban:
Ada sedikit perbedaan antara file. Saat Anda melihat halaman WordPress, file pertama yang dipanggil adalah
index.php
. Dan itu pada dasarnya adalah "Metode 1:" AndaFile header blog (yang mengantri di WordPress lainnya) dimuat
wp-load.php
secara langsung dan menjalankan WordPress itu sendiri. Inilah sebagian besarwp-blog-header.php
:Jadi perbedaan antara kedua metode Anda adalah ... apa yang dimuat.
Metode 1 persis seperti yang dilakukan WordPress untuk memuat dirinya sendiri (dengan pengecualian mematikan tema). Jadi, jika Anda membutuhkan semua WordPress dan ingin memecat semua kait / tindakan default, ikuti rute itu.
Metode 2 hanyalah langkah lebih jauh ke depan. Ini memuat semua WordPress, tetapi tidak memanggil
wp()
atau memanggil loader template (digunakan oleh tema). Metode 2 akan sedikit lebih ringan, tetapi harus memberi Anda fungsionalitas yang sama.sumber
Metode 2 dari pertanyaan Anda:
wp-load.php
adalah akses ke semua fungsi WordPress, itu saja. Baris pertama memberitahu WordPress untuk memuat bukan file Tema; mungkin file-file tersebut diperlukan untuk kebutuhan Anda, lalu hapus baris.sumber
wp-blog-header.php akan melampirkan status tajuk, itu akan mengembalikan kode status http 404
wp-load.php tidak akan melakukannya
Berguna untuk dicatat ketika menggunakan ajax karena memeriksa kode status http
sumber
Terkadang memuat functions.php dari tema dapat menyebabkan Anda mengalami beberapa masalah. Itu melanggar html dari halaman saya yang lain. Jadi itulah yang saya lakukan dan menyelesaikan masalah saya:
sumber
@ ninja08
Kita dapat menggunakan ekstensi xDebug php untuk menganalisis skrip.
cukup aktifkan file
;xdebug.profiler_enable = 1
Andaphp.ini
dengan menghapus;
dari baris pertama dan setelah ini me-restart server apache dan menjalankan situs wordpress Anda ... sekarang file yang dibuat di direktori tmp server xampp Anda .. buka file ini dengan aplikasi WincachGrind .sekarang Anda dapat melihat peta skrip Anda
sumber