سیستم مدیریت محتوای وردپرس قابلیتهای زیادی دارد. یکی از این قابلیتها اضافه کردن دسته بندی به وردپرس است. با استفاده از دسته بندی وردپرس میتوانید به ساختار محتوایی وبسایت خود نظم بدهید. در این مطلب از استودیو بهتر بیشتر درباره این موضوع صحبت میکنیم و در ادامه آموزش حذف دسته بندی از آدرس صفحه وردپرس میپردازیم.
وردپرس ساختار دایرکتوری ویژهای برای دسته بندی خود در نظر گرفته است. به طور پیش فرض نام دسته بندی اصلی – category را در آدرس مطالب میبینید. اگر قصد دارید این تنظیمات پیش فرض را تغییر دهید یا اسم دسته بندی را از آدرس صفحه وردپرس حذف کنید در ادامه همراه ما باشید.
آموزش حذف نام دسته بندی از پیوند یکتا وردپرس
به طور کلی در صورت وجود دسته بندی، در آدرس صفحه وردپرس کلمه category را به عنوان پیشوند میبینید. به عنوان مثال اگر که شما دسته بندی به اسم WordPress داشته باشید لینک آن به صورت www.yourdomain.com/category/wordpress خواهد بود. اگر به هر دلیلی قصد دارید این پیشوند را از آدرس صفحه وردپرس حذف کنید به روشهایی که در ادامه به آنها اشاره میکنیم دقت کنید:
1. حذف دسته بندی از آدرس صفحه
اولین روش برای حذف دسته بندی از آدرس صفحه، در خود وردپرس انجام میشود. برای این کار ابتدا به داشبورد وردپرس وارد شوید. از نوار ابزار به مسیر Setting > Permalinks بروید. در صفحه مربوط به پیوندهای یکتا بر روی Custom Structure کلیک کنید. با استفاده از این گزینه میتوانید ساختار پیوند یکتای دلخواه خود را برای دستهبندیها وارد کنید. برای حذف این پیشوند ساختار /%category%/%postname%/ را در کادر مربوطه وارد کنید. در آخر به ازای مقدار Category Base یک نقطه – dot وارد کنید. فراموش نکنید که تنظیمات را ذخیره کنید.
نکته: در این روش نباید category base را خالی بگذارید. زیرا در این صورت دستهبندی پیشفرض وردپرس در آدرس صفحه نمایش داده میشود.
2. حذف دسته وردپرس از آدرس با استفاده از پلاگین
روش دیگر برای حذف دسته بندی از آدرس صفحه استفاده از افزونه Remove Category URL است. یکی از مزیتهای این افزونه نسبت به دیگر افزونهها سبک بودن آن است. افزونه Remove Category URL رابط کاربری بسیار سادهای دارد.
در این پلاگین به هیچ تنظیمات پیچیدهای نیاز نیست. بعد از نصب، بلافاصله شروع به کار میکند. تنها کاری که باید انجام دهید دانلود، نصب و فعالسازی این افزونه است.
علاوه بر پلاگین Remove Category URL افزونه دیگری که برای حذف پیشوند Category شهرت دارد FV Top Level Categories است. با استفاده از این پلاگین به راحتی میتوانید به حذف دسته بندی از آدرس صفحه اقدام کنید.
3. حذف دسته بندی وردپرس از آدرس با استفاده از یواست سئو
همان طور که میدانید پلاگین یواست سئو یکی از محبوبترین و پر استفادهترین پلاگینهای سئو وردپرس است. یکی از قابلیتهایی که در این پلاگین به آن دسترسی دارید شخصیسازی پیوندهای یکتا است. در این افزونه میتوانید در عرض چند دقیقه پیشوند Category را از آدرس صفحه حذف کنید. برای این کار طبق مراحل زیر پیش بروید:
- از نوار ابزار وردپرس بر روی Yoast SEO کلیک کنید.
- از منوی زیر این افزونه گزینه Advance را انتخاب کنید تا به تنظیمات بیشتری دسترسی داشته باشید.
- در صفحه باز شده بر روی تب Permalink کلیک کنید.
- تیک گزینه Strip the category base (usually /category/) from the category URL را فعال کنید.
- تنظیمات را ذخیره کنید.
4. حذف دسته وردپرس از آدرس با استفاده از htaccess
روشهایی که تا به اینجا به آنها اشاره کردیم حذف دسته بندی از آدرس صفحه با استفاده از افزونه یا تنظیمات وردپرس بوده است. اما شما میتوانید این پیشوند را به صورت دستی هم از آدرس صفحه حذف کنید. برای این کار باید تغییراتی در فایل .htaccess ایجاد کنید. ابتدا باید به این فایل دسترسی داشته باشید. (فرقی نمیکند با استفاده از FTP یا کنترل پنل هاست باشد) تنها کاری که باید بکنید این است که قطعه کد زیر را به این فایل اضافه کنید و آن را ذخیره کنید:
RewriteRule ^category/(.+)$ http://www.site.com/$1 [R=301,L]
5. حذف دسته از آدرس صفحه با استفاده از کد در functions.php
در این روش قبل از هر چیز باید مطمئن شوید که در تنظیمات مربوط به پیوندهای یکتا در مقدار Category base تغییری ایجاد نشده باشد. زیرا این روش در حین اجرا به دنبال کلمه category میگردد و عدم جستوجوی آن منجر به بروز خطا میشود.
ابتدا از نوار ابزار وردپرس به مسیر Appearance->Editor بروید. در اینجا به دنبال فایل function.php بگردید. سپس قطعه کد زیر را قبل از تگ پایانی PHP وارد کنید.
function remove_category( $string, $type ) { if ( $type != 'single' && $type == 'category' && ( strpos( $string, 'category' ) !== false ) ) { $url_without_category = str_replace( "/category/", "/", $string ); return trailingslashit( $url_without_category ); } return $string; } add_filter( 'user_trailingslashit', 'remove_category', 100, 2);
تمامی روشهایی که در اینجا به آن اشاره کردیم نتیجه میدهند. پیشنهاد ما این است که اگر تجربه کمتری در کدنویسی دارید به سراغ روشهایی که نیازی به تغییر در کدنویسی ندارند بروید. اگر این مطلب برای شما مفید بود نظرات خود را در قسمت دیدگاه با استودیو بهتر در میان بگذارید.