cari
RumahTutorial CMSWordTekan如何修正 WordPress 密码设置链接错误

下面由WordPress教程栏目给大家介绍修正 WordPress 密码设置链接错误的方法,希望对需要的朋友有所帮助!

如何修正 WordPress 密码设置链接错误

当用户注册或者忘记密码获取新密码时WordPress会自动向用户邮箱中发送一个验证链接地址,用户通过打开这个链接设置密码,不过经常发现这个链接直接打开后,并不是设置密码的正确链接。

这个问题的并不是WordPress的原因,正常WordPress设置密码的链接地址是没有超链接的,而是QQ邮箱自作聪明为个链接地址加上了超链接,并把本不是链接地址内容的a8093152e673feb7aba1828c43532094符号也加了进去,结果造成链接错误,貌似只有大家常用的QQ邮箱有此问题。这是一个老生常谈问题,网上解决办法比比皆是,不过都是千篇一律,充分体现了天下文章一大抄。

下面是我的解决方法,以WordPress 5.3.2为例:

一、最简单的方法

修改WordPress程序文件删除代码中的a8093152e673feb7aba1828c43532094符号,

修正忘记密码获取新密码链接

打开WordPress程序根目录的wp-login.php文件,将大约417行的:

$message .= &#39;<&#39; . network_site_url( "wp-login.php?action=rp&key=$key&login=" . rawurlencode( $user_login ), &#39;login&#39; ) . ">\r\n";

改为:

$message .= &#39;&#39; . network_site_url( "wp-login.php?action=rp&key=$key&login=" . rawurlencode( $user_login ), &#39;login&#39; ) . "\r\n";

只是把代码中前后a8093152e673feb7aba1828c43532094符号去掉。

修正用户注册设置密码链接

打开WordPress程序wp-includes目录中的pluggable.php文件,将大约2003行的:

$message .= &#39;<&#39; . network_site_url( "wp-login.php?action=rp&key=$key&login=" . rawurlencode( $user->user_login ), &#39;login&#39; ) . ">\r\n\r\n";

改为

$message .= &#39;&#39; . network_site_url( "wp-login.php?action=rp&key=$key&login=" . rawurlencode( $user->user_login ), &#39;login&#39; ) . "\r\n\r\n";

也是只需要把代码中前后a8093152e673feb7aba1828c43532094符号去掉即可。

缺点:升级WordPress程序后,需要再次修改。

二、一劳永逸的方法

这也是本文的重点,也是应主题用户的要求,添加到目前主题中的方法,这里分享一下。

将下面代码添加到当前主题函数模板functions.php中即可。

// 修正忘记密码获取新密码链接
add_filter(&#39;retrieve_password_message&#39;, &#39;zm_reset_password_message_amend&#39;, 99, 1);
function zm_reset_password_message_amend($string) {
return preg_replace(&#39;/<(&#39; . preg_quote(network_site_url(), &#39;/&#39;) . &#39;[^>]*)>/&#39;, &#39;\1&#39;, $string);
}
 
// 修正用户注册设置密码链接
add_filter( &#39;wp_new_user_notification_email&#39; , &#39;zm_user_notification_email_amend&#39;, 10, 3 );
function zm_user_notification_email_amend( $wp_new_user_notification_email, $user, $user_email ) {
global $wpdb, $wp_hasher;
$key = wp_generate_password( 20, false );
do_action( &#39;retrieve_password_key&#39;, $user->user_login, $key );
if ( empty( $wp_hasher ) ) {
require_once ABSPATH . WPINC . &#39;/class-phpass.php&#39;;
$wp_hasher = new PasswordHash( 8, true );
}
$hashed = time() . &#39;:&#39; . $wp_hasher->HashPassword( $key );
$wpdb->update( $wpdb->users, array( &#39;user_activation_key&#39; => $hashed ), array( &#39;user_login&#39; => $user->user_login ) );
$switched_locale = switch_to_locale( get_user_locale( $user ) );
$message = sprintf(__(&#39;Username: %s&#39;), $user->display_name) . "\r\n\r\n";
$message .= __(&#39;To set your password, visit the following address:&#39;) . "\r\n\r\n";
$message .= &#39;&#39; . network_site_url("wp-login.php?action=rp&key=$key&login=" . rawurlencode($user->user_login), &#39;login&#39;) . "\r\n\r\n";
$wp_new_user_notification_email[&#39;message&#39;] = $message;
return $wp_new_user_notification_email;
}

网上能找到修正重置密码链接的方法,不过代码略显拖沓,本文的方法只一句关键代码解决。

至于修正用户注册设置密码链接,经过重写邮件函数解决,貌似代码还有精简的余地,以后再研究了。

优点:一劳永逸,不会因为WordPress程序的频繁升级而再次修改。

更多编程相关内容,请关注php中文网编程入门栏目!

Atas ialah kandungan terperinci 如何修正 WordPress 密码设置链接错误. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Artikel ini dikembalikan pada:zmingcx. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
Adakah WordPress baik untuk membuat laman web portfolio?Adakah WordPress baik untuk membuat laman web portfolio?Apr 26, 2025 am 12:05 AM

Ya, wordpressisexcellentforcreatingaportfoliowebsite.1) itoffersnumerousportfolio-specificthemeslike'astra'foreasycustomization.2) Pluginssuchas'elementor'enableInduitedesign, mindoomanycanslowthesite.3)

Apakah kelebihan menggunakan WordPress ke atas pengekodan laman web dari awal?Apakah kelebihan menggunakan WordPress ke atas pengekodan laman web dari awal?Apr 25, 2025 am 12:16 AM

WordPressisAdvantageousovercodingawebsiteFromScratchdueto: 1) EaseOfuseandFasterDevelopment, 2) flexibilityandscalability, 3) strongCommunitySupport, 4) terbina dalam-inseoandmarketingtools, 5) COST-INSEFECTIFITYS

Apa yang menjadikan WordPress sebagai sistem pengurusan kandungan?Apa yang menjadikan WordPress sebagai sistem pengurusan kandungan?Apr 24, 2025 pm 05:25 PM

WordPressisAcmsDuetoitSeSeAfuse, penyesuaian, usermanagement, SEO, dan komandoSupport.1) ITImplifiesContentManagementelmithanintuitiveInterface

Cara Menambah Kotak Komen ke WordPressCara Menambah Kotak Komen ke WordPressApr 20, 2025 pm 12:15 PM

Dayakan komen di laman web WordPress anda untuk menyediakan pelawat dengan platform untuk mengambil bahagian dalam perbincangan dan berkongsi maklum balas. Untuk melakukan ini, ikuti langkah -langkah ini: Dayakan komen: Di papan pemuka, navigasi ke Tetapan & GT; Perbincangan, dan pilih kotak semak Comment Comments. Buat borang komen: Dalam editor, klik Tambah Blok dan cari Blok Komen untuk menambahkannya ke kandungan. Borang komen tersuai: Sesuaikan blok komen dengan menetapkan tajuk, label, pemegang tempat, dan teks butang. Simpan Perubahan: Klik Kemas Kini untuk menyimpan kotak komen dan tambahkannya ke halaman atau artikel.

Cara menyalin sub-tapak dari WordPressCara menyalin sub-tapak dari WordPressApr 20, 2025 pm 12:12 PM

Bagaimana cara menyalin subsite WordPress? Langkah-langkah: Buat sub-tapak di tapak utama. Menglonkan sub-tapak di tapak utama. Import klon ke lokasi sasaran. Kemas kini nama domain (pilihan). Plugin dan tema berasingan.

Cara Menulis Tajuk WordPressCara Menulis Tajuk WordPressApr 20, 2025 pm 12:09 PM

Langkah -langkah untuk membuat tajuk tersuai di WordPress adalah seperti berikut: Edit fail tema "header.php". Tambahkan nama dan keterangan laman web anda. Buat menu navigasi. Tambah bar carian. Simpan perubahan dan lihat tajuk tersuai anda.

Cara memaparkan komen WordPressCara memaparkan komen WordPressApr 20, 2025 pm 12:06 PM

Dayakan komen di laman web WordPress: 1. Log masuk ke panel admin, pergi ke "Tetapan" - "Perbincangan", dan periksa "Benarkan komen"; 2. Pilih lokasi untuk memaparkan komen; 3. Sesuaikan komen; 4. Menguruskan komen, meluluskan, menolak atau memadam; 5. menggunakan & lt ;? php comments_template (); ? & gt; tag untuk memaparkan komen; 6. Membolehkan komen bersarang; 7. Laraskan bentuk komen; 8. Gunakan plugin dan kod pengesahan untuk mengelakkan komen spam; 9. Menggalakkan pengguna menggunakan gravatar avatar; 10. Buat komen untuk dirujuk

Cara memuat naik kod sumber untuk WordPressCara memuat naik kod sumber untuk WordPressApr 20, 2025 pm 12:03 PM

Anda boleh memasang pemalam FTP melalui WordPress, konfigurasikan sambungan FTP, dan kemudian muat naik kod sumber menggunakan Pengurus Fail. Langkah-langkah termasuk: memasang pemalam FTP, mengkonfigurasi sambungan, melayari lokasi muat naik, memuat naik fail, dan memeriksa bahawa muat naik berjaya.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

SublimeText3 versi Inggeris

SublimeText3 versi Inggeris

Disyorkan: Versi Win, menyokong gesaan kod!

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

Versi Mac WebStorm

Versi Mac WebStorm

Alat pembangunan JavaScript yang berguna

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual