آشنایی با هوک generate_rewrite_rules در وردپرس
سلام دوست عزیز! امروز میخوایم دربارهی هوک generate_rewrite_rules
در وردپرس صحبت کنیم. این هوک از مقولههای مهم در وردپرس به حساب میاد و مخصوصا برای کسانی که با URLهای سفارشی سر و کار دارن، فوقالعاده کاربردی است. هوکها به ما اجازه میدن که توی نحوهی عملکرد وردپرس تغییرات لازم رو اعمال کنیم و بتونیم قابلیتهای جدیدی رو به سایت اضافه کنیم.
ابتدا بایید بفهمیم که generate_rewrite_rules
چه کاری انجام میده. با این هوک میتونیم قوانین جدیدی دربارهی نویسهها، دستهها یا نوعهای پست سفارشی ایجاد کنیم. اگر برای سایتتون URLهای خاصی نیاز دارین و میخواید که ساختار URLهای مختلف رو تعریف کنین، این هوک به شما کمک میکنه. البته، باید حواستون باشه که کمی با فرایند بازنویسی URLها آشنا باشین.
برنامهنویسی این هوک در وردپرس به سادگی انجام میشه. شما میتونید با استفاده از یک تابع دلخواه، قانونی جدید برای URLهای سایتتون ایجاد کنید و بعد از اون، این func را به هوک متصل کنید. یادگیری این موضوع به شما این امکان رو میده که بتونید سایت خودتون رو به روشهای جالبتری شخصیسازی کنید و کاربرانتون رو بیشتر جذب کنید.
حالا که کمی با مفهوم هوک آشنا شدیم، بیاید به یک مثال ساده نگاه کنیم و ببینیم چطور میتونیم از هوک generate_rewrite_rules
برای ایجاد یک قانون ساده استفاده کنیم. ما میخواهیم یک URL خاص به نام /my-custom-url/
ایجاد کنیم و ببینیم که چطور میتونیم از این هوک استفاده کنیم.
کد مثال
function my_custom_rewrite_rule() {
add_rewrite_rule('^my-custom-url/?$', 'index.php?pagename=my-custom-url', 'top');
}
add_action('generate_rewrite_rules', 'my_custom_rewrite_rule');
توضیحات کد
function my_custom_rewrite_rule() {
این خط اعلام یک تابع جدید به نام
my_custom_rewrite_rule
است.add_rewrite_rule('^my-custom-url/?$', 'index.php?pagename=my-custom-url', 'top');
با این خط، یک قانون بازنویسی جدید اضافه میکنیم که URL
/my-custom-url/
را به صفحهای به همین نام لینک میکنه.}
این خط بدنۀ تابع را به پایان میرسونه.
add_action('generate_rewrite_rules', 'my_custom_rewrite_rule');
این خط تابع
my_custom_rewrite_rule
را به هوک generate_rewrite_rules
متصل میکنه تا هر بار که قوانین بازنویسی تولید میشن، این تابع نیز اجرا بشه.