
کد کوچولوهای دوست داشتنی وردپرس (۲)
کد کوچولوهای دوست داشتنی وردپرس ۲ : اکشن هوک و فیلترهای مفید ورپرس
سری اول کد کوچولوهای دوست داشتنی را می توانید در این آدرس بیابید. این کدهای کوچولوی دوست داشتنی به راستی که زندگی وردپرسی ما را شیرین تر می کنند. در این مقاله چندین اکشن هوک و ف وردپرس به شما معرفی خواهیم کرد؛ امیدواریم همان هایی باشند که عملکردشان برایتان مفید واقع خواهد شد.
اکشن هوک و و فیلترهای وردپرسی بسیار مفید هستند. این دو، این امکان را به شما می دهند تا یک تابع اختصاصی (custom function) را به یک تابع موجود “هوک” کنید، که از این طریق می توانید بدون ویرایش فایل های هسته قابلیتهای وردپرس را ویرایش کنید. در اینجا چندین اکشن هوک و فیلتر فوق العاده مفید را به منظور داشتن وردپرسی قدرتمند به شما معرفی می کنیم:
۱٫ اضافه نمودن فیلدهای شناسنامه به پروفایل کاربران
به صورت پیش فرض وردپرس تنها این اجازه را به کاربران می دهد تا فقط یک نام AIM برای پروفایل خود داشته باشند و نه اسامی فیسبوک یا توئیتر! اما همانطور که خودتان نیز می دانید فیسبوک و توئیتر بسیار بیشتر از آن AIM فقید(!) محبوب شده اند.
به منظور اضافه کردن متدهای ارتباط بیشتر، به راحتی این هوک را در فایل functions.php
پیست کنید. در مثال پایین، این کد دو وبسایت فیسبوک و توئیتر را اضافه می کند اما شما قادرید هر سرویسی را که خواستید اضافه کنید.
1 2 3 4 5 6 7 8 |
function my_user_contactmethods($user_contactmethods){ $user_contactmethods['twitter'] = 'Twitter Username'; $user_contactmethods['facebook'] = 'Facebook Username'; return $user_contactmethods; } add_filter('user_contactmethods', 'my_user_contactmethods'); |
۲٫ فعالسازی کامنت های تو در تو به صورت خودکار
وردپرس به صورت پیش فرض دیدگاه های تو در تو را فعال نمی کند. اگر نیاز دارید یا می خواهید این امر را تغییر دهید، کد دم دستی و سودمند زیر را در فایل functions.php
کپی کنید:
1 2 3 4 5 6 7 8 |
function enable_threaded_comments(){ if (!is_admin()) { if (is_singular() AND comments_open() AND (get_option('thread_comments') == 1)) wp_enqueue_script('comment-reply'); } } add_action('get_header', 'enable_threaded_comments'); |
۳٫ جایگزینی کلمات در نوشته به صورت خودکار
در نظر بگیرید که بلاگ شما “myblog” نام گذاری شده و شما آن را به “mysuperblog” تغییر نام می دهید. برای هر اتفاق کوچکی نوشته هایتان را برای جایگزینی ویرایش نکنید! کافی است این هوک را به فایل functions.php
منتقل کنید:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
function replace_text_wps($text){ $replace = array( // 'WORD TO REPLACE' => 'REPLACE WORD WITH THIS' 'wordpress' => '<a href="#">wordpress</a>', 'excerpt' => '<a href="#">excerpt</a>', 'function' => '<a href="#">function</a>' ); $text = str_replace(array_keys($replace), $replace, $text); return $text; } add_filter('the_content', 'replace_text_wps'); add_filter('the_excerpt', 'replace_text_wps'); |
۴٫ اضافه کردن تصاویر بندانگشتی نوشته به فید آر اس اس
این کد بسیار جالب برای نوشته تصویر بندانگشتی می گیرد و آن را به صورت خودکار به فیدهای آر اس اس شما می افزاید. این کد را درون functions.php
کپی و فایل را ذخیره کنید. فراموش نکنید که برای استفاده از این کد، نیاز به پوسته ای دارید که از post thumbnails پشتیبانی کند:
1 2 3 4 5 6 7 8 9 10 11 |
function cwc_rss_post_thumbnail($content) { global $post; if(has_post_thumbnail($post->ID)) { $content = '<p>' . get_the_post_thumbnail($post->ID) . '</p>' . get_the_content(); } return $content; } add_filter('the_excerpt_rss', 'cwc_rss_post_thumbnail'); add_filter('the_content_feed', 'cwc_rss_post_thumbnail'); |
۵٫ حالت در دست تعمیر
گاهی اوقات نیاز است که وبسایت را در حالت “در دست تعمیر” قرار دهید تا کمی تعمیرات بر روی آن اعمال کنید. بسیاری از افزونه ها اجازه چنین کاری را به شما می دهند، اما راه حل ساده تری نیز وجود دارد: تنها کد زیر را در فایل functions.php وارد و آن را ذخیره کنید. پس از انجام این عمل وبسایت شما برای همه غیر از ادمین ها غیرقابل دسترس خواهد بود. فراموش نکید که پس از انجام تعمیرات این این کد را حذف نمایید!
1 2 3 4 5 6 |
function cwc_maintenance_mode() { if ( !current_user_can( 'edit_themes' ) || !is_user_logged_in() ) { wp_die('Maintenance, please come back soon.'); } } add_action('get_header', 'cwc_maintenance_mode'); |
۶٫ حذف لینک کردن خودکار در دیدگاه ها
اگر فردی در وبسایت وردپرسی شما برای نوشته تان کامنتی بگذارد که حاوی url ااست، وردپرس به صورت خودکار این url را به یک لینک تبدیل می کند. این امر می تواند مفید باشد اما اگر علاقه ای به دیدن لینک های زیاد در قسمت نظرات ندارید، مخصوصا اگر این لینک ها چند اسپم هم باشد، می توانید به راحتی عمل لینک گردان را با کپی کردن کد زیر در فایل functions.php
حذف کنید. به محض ذخیره کردن فایل، متوجه غیر فعال شدن لینک گردان می شوید:
1 |
remove_filter('comment_text', 'make_clickable', 9); |
این کدهای دوست داشتنی وردپرس، از افزونه ها مفیدترند. موافقید؟
salam.mer30 kheyli khob bod…
be nazare man ham estefade az code haye osoli kheyli behtare ta inke afzone khasi ro nasb konim.
montazere seri badi hastim…..
تشکر
جالب بود مخصوصا اون کد برای حالت در دست تعمیر
عالیه
واقعا ممنون
اگه ادامه داشته باشه فوق العاده میشه !
سلام واقعا عالی بود
وای که چقدر دوست داشتنیه این کد ها و وردپرس
زنده باد هرچی وردپرسی …
ممنون
دوست عزیز سلام
برو بخش تنظیمات وردپرس فارسی ( تنظیمات جلالی) وردپرس ت و عبارت “استفاده از ٫ بهجای نقطه بهعنوان نشانهی اعداد اعشاری” رو خیر قرار بده تا جای نقطه توی نوشته هات ویرگول نزاره
مفید بود
خسته نباشید
سپاس از شما
لطفا میشه یه کدی معرفی کنین که مشخصات نویسنده ها رو هم پایین پست ها نمایش بده؟برای اینکار افزونه هست ولی اگه کدش رو معرفی کنین ممنون میشم.
ممنون
ولی اکثر تو سایتای دیگه موجود بودند
اگر میشه کد هایی که قبلا سایت تک طرح قبل از اینکه به این روز در بیاد رو بذارید با تشکر
عالی بود!
ممنون
بسیار عالی.
ممنون از مطالب خوبتون
عالیه بود فقط کاشکی می تونستید این کد هایی که تو سایت منم هست بهش اضافه کنید یه ذره دسته جمعی تر بود مرسی
ببخشید برای این مورد ۶ (حذف لینک کردن خودکار در دیدگاه ها)
میشه کاری کرد که لینک ها تو نظرات نمایش داده بشن ، ولی وقتی کاربر روش کلیک میکنه، توی یه صفحه جدید باز بشه؟
چون پیش فرض وردپرس blank نیست !!
اینو استفاده کنید میتونه مفید باشه:
http://www.inverudio.com/programs/WordPressBlog/NewTabWindowTargetBlankPlugin.php
عــــــــــــــــــــــــــــــــالیه
مرسی من از کد کامنت های تو در تو استفاده کردم
لیست مناسبی تهیه کرده اید؛ موفق باشید
فقط یک نکته در مورد شماره ۳ به ذهنم رسید که خدمت شما عرض کنم؛ و اون کنترل این هست که عبارات مورد نظر، پیش از این لینک نبوده باشند….
بعنوان مثال وقتی که شما تصمیم میگیرید عبارت:
wordpress
را مثلا با ساختار کد اچ تی ام ال
wordpress
جایگزین کنید؛ ابتدا لازم دارید چک کنید که پیش از این، این لغت لینک نبوده باشد… وگرنه کد مربوطه بهم میریزد.
عالی
ممنون