Rumah >Tutorial CMS >WordTekan >Panduan Lengkap ke API Transien WordPress
API Transien WordPress telah disokong sejak versi 2.8, tetapi banyak pemaju WordPress masih tidak menyedari kewujudannya dan tujuannya. Singkatnya, API WordPress Transients membolehkan kami menyimpan data pasangan nilai kunci dengan masa tamat.
Tutorial ini akan menerangkan secara mendalam bagaimana menggunakan API ini. Kami juga akan belajar bagaimana ia berbeza dari API Pilihan, bagaimana ia berinteraksi dengan sistem caching WordPress, dan beberapa kes penggunaan.
### Perbandingan pilihan API dan Transients API
Hampir setiap API WordPress menggunakan cache objek WordPress untuk berinteraksi dengan MySQL untuk data cache untuk mengelakkan pelbagai pertanyaan MySQL.
API Transients berfungsi sedikit berbeza daripada semua API lain. Ia menyimpan data pasangan nilai utama dalam MySQL hanya jika cache berterusan tidak diaktifkan, jika tidak, ia hanya menggunakan cache objek. Dan semua API lain menggunakan kedua -duanya untuk menyegerakkan data untuk memastikan kegigihan data. Oleh itu, transien tidak berterusan, iaitu mereka tidak boleh digunakan untuk menyimpan data kritikal. Oleh itu, API Transients sangat sesuai untuk data caching.
NOTA: Jika caching berterusan tidak didayakan, API Transien menggunakan API Pilihan untuk menyimpan data pasangan nilai kunci, jika tidak, ia menggunakan cache objek secara langsung. Transien disimpan dalam jadual Pilihan. Setiap transien terdiri daripada dua pilihan, iaitu data pasangan nilai utama dan tarikh tamat tempoh nilai utama.
Buat Transien
. Fungsi ini mengambil tiga parameter: set_transient()
: set_transient()
<code class="language-php">set_transient("Website", "SitePoint", 3600);</code>di sini, kami menyimpan kunci yang dinamakan "Laman Web" dengan nilai dengan nilai "sitepoint" selama 1 jam. Selepas 1 jam, kunci ini tidak akan dapat diakses lagi.
kembali benar jika sementara berjaya dibuat, jika tidak, pulangan palsu. set_transient
Nota: Jika masa tamat tempoh tidak disediakan atau masa tamat adalah "0", maka transien akan dimuat secara automatik (iaitu, ia akan dimuatkan ke dalam ingatan apabila halaman diminta).
API Transients juga menyediakan fungsi lain untuk membuat sementara, iaitu set_site_transient
. Ia juga mengambil tiga parameter yang sama seperti set_transient
. Kebanyakan fungsi adalah sama di antara mereka. Perbezaan antara set_transient
dan set_site_transient
adalah:
set_site_transient
digunakan dalam rangkaian berbilang tapak, sementara boleh digunakan untuk semua tapak dalam rangkaian. set_site_transient
sentiasa dimuat secara automatik tanpa mengira masa tamat tempoh. Akhirnya, jika anda menjalankan set_transient
kekunci sementara yang sedia ada, masa dan masa tamat tempoh akan dikemas kini kepada nilai dan masa tamat tempoh yang baru disediakan. Waktu tamat tempoh dikira dari masa pertama sementara ditetapkan.
Untuk mengambil sementara yang disimpan, anda perlu menggunakan fungsi get_transient
. Ia hanya menerima satu parameter, iaitu nama sementara.
<code class="language-php">set_transient("Website", "SitePoint", 3600);</code>
Jika sementara telah tamat tempoh atau tidak wujud, get_transient
mengembalikan palsu. Jika tidak, ia mengembalikan nilai sementara.
Jika sementara telah tamat atau tidak dijumpai, palsu dikembalikan, jadi anda tidak boleh menyimpan nilai boolean dalam sementara. Jika anda ingin menyimpan nilai boolean, gunakan borang integer, iaitu 0 atau 1.
Jika anda telah menetapkan sementara dengan set_site_transient
, gunakan get_site_transient
untuk mengambilnya, bukan get_transient
.
Untuk memadam sementara, anda perlu menggunakan fungsi delete_transient
. Ia hanya menerima satu parameter, iaitu nama sementara.
ini adalah contoh:
<code class="language-php">$value = get_transient("Website"); if($value === false) { echo "Expired or not found"; }</code>
kembali benar jika sementara berjaya dipadam. Sekiranya sementara tidak dijumpai atau jika sementara tidak dapat dipadam atas sebab -sebab lain, palsu dikembalikan.
Jika anda telah menetapkan sementara dengan set_site_transient
, gunakan delete_site_transient
untuk memadamnya, bukan delete_transient
.
API Transients boleh digunakan untuk cache apa -apa. Kebanyakan plugin menggunakan API ini untuk data cache. Untuk menggambarkan, mari kita lihat bagaimana untuk mengambil dan mencatatkan jawatan dalam kategori.
<code class="language-php">delete_transient("Website");</code>
di sini, kami menyiarkan catatan kategori selama 1 jam. Kami menggunakan kelas WP_Query
untuk mendapatkan jawatan. WP_Query
bersiri dan disimpan sebagai sementara. Apabila diambil, ia adalah deserialized.
Artikel ini menunjukkan bagaimana kita dapat dengan mudah cache data dalam WordPress menggunakan API Transients.
Anda boleh mengaktifkan caching berterusan di WordPress menggunakan cache objek memcached atau plugin WP Redis.
Tolong beritahu saya pengalaman anda menggunakan API ini dalam komen di bawah.
Tujuan utama menggunakan API WordPress Transients adalah untuk menyimpan data sementara, yang membantu mempercepat laman web WordPress. Ia membolehkan pemaju menyimpan data dengan masa luput. Data ini boleh menjadi apa -apa dari hasil pertanyaan pangkalan data kompleks kepada nilai rentetan mudah. Dengan menyimpan data ini, laman web WordPress anda dengan cepat dapat mengambilnya tanpa membesarkannya setiap kali, meningkatkan prestasi laman web anda.
API Transients WordPress meningkatkan prestasi laman web dengan mengurangkan bilangan pertanyaan pangkalan data. Apabila menggunakan API Transients untuk menyimpan data, ia boleh diambil dengan cepat dari cache tanpa melakukan pertanyaan pangkalan data baru. Ini sangat mengurangkan beban pada pelayan dan mempercepatkan masa pemuatan halaman, dengan itu memberikan pengalaman pengguna yang lebih baik.
Tidak, API Transients WordPress tidak direka untuk penyimpanan data tetap. Data yang disimpan menggunakan API Transients adalah sementara dan mempunyai masa tamat tempoh. Selepas data tamat, ia akan dipadamkan secara automatik dari cache. Jika anda perlu menyimpan data secara kekal, anda harus menggunakan API WordPress yang lain, seperti API Pilihan.
anda boleh menggunakan fungsi delete_transient
untuk memadam sementara dalam WordPress. Fungsi ini mengambil nama sementara sebagai parameternya. Berikut adalah contoh:
delete_transient( 'my_transient' );
Apa yang berlaku jika saya cuba mengambil sementara yang tamat tempoh?
Bolehkah saya menetapkan sementara untuk tidak tamat tempoh?
Bagaimana untuk mengurus dan memadam transien di WordPress?
Bolehkah saya menggunakan API WordPress Transients dalam pemasangan pelbagai tapak?
dan set_site_transient
dan bukan get_site_transient
dan set_transient
. Fungsi ini boleh digunakan di seluruh rangkaian tapak. get_transient
sementara dan kuki menggunakan secara berbeza. Transien digunakan untuk menyimpan data sementara di sisi pelayan untuk meningkatkan prestasi tapak. Sebaliknya, kuki digunakan untuk menyimpan data di sisi klien, dan biasanya digunakan untuk mengingati keutamaan dan sesi pengguna.
Ya, anda boleh menggunakan API Transients WordPress untuk menyimpan tatasusunan atau objek. API secara automatik bersiri jenis data ini untuk anda, jadi anda boleh menyimpannya sebagai transien dan mengambilnya kemudian tanpa sebarang masalah.
Output yang disemak ini mengekalkan makna asal semasa menggunakan struktur kata dan ayat yang berbeza.
Atas ialah kandungan terperinci Panduan Lengkap ke API Transien WordPress. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!