Mohammad Yousefi

آموزش نحوه حذف شناسه مطلب از آدرس های جوملا 2.5

10 پست در این موضوع

ارسال شده در (ویرایش شده)

با سلام خدمت همه جوملافورومی های عزیز

این مطلب رو به عنوان یه مطلب آموزشی براتون قرار می دم که امیدوارم استفاده کافی رو ببرید.

تا حالا فکر کردید که چطوری میشه بدون استفاده از کامپوننت، آدرسهای سایتمون رو از حالتی که با شناسه مطلب بالا میان به حالت کاملا سئو شده درآورد.

مثال :

بله بدون استفاده از کامپونتهای معروف هم میشه اینکارر رو انجام داد، به این آموزش توجه کنید.

برای این کار ابتدا وارد کنترل پنل هاست خود شده و به محتویات و فایل های جوملایی خود نگاهی می اندازیم. وارد آدرس زیر شوید:

components\com_content\router.php

در داخل کدهای این فایل، موارد زیر را تغییر دهید:

1.در خط 27 کد :

joomlacode1.jpg

را با کد :

joomlacode2.jpg

2. در خط 208 نیز، کد :

joomlacode3.jpg

را با کد :

joomlacode4.jpg

3. خطوط 208 تا 233 را نیز با /* Code */

، غیر فعال نمایید :

joomlacode5.jpg

را به این شکل در آورید :

joomlacode6.jpg

همین روش را برای سایت منبع نیز انجام شده است و همانطور که مشاهده می کنید، به درستی کار می کند.

منبع : لیمان بلاگ

ویرایش شده در توسط Mohammad Yousefi

Share this post


Link to post
Share on other sites

ممنون آقا محمد.

یادمه تو جوملا 1.5 با استفاده از پلاگینی به نام hpRouter این کار انجام می شد.

آیا روشی هست که در کامپوننت K2 برای آیتم های اون هم بشه همین کار رو کرد؟

Share this post


Link to post
Share on other sites
ممنون آقا محمد.

یادمه تو جوملا 1.5 با استفاده از پلاگینی به نام hprouter این کار انجام می شد.

آیا روشی هست که در کامپوننت k2 برای آیتم های اون هم بشه همین کار رو کرد؟

برای جوملا 1.5 هم فکر کنم همچین روشی بود که اگه پیدا کنم براتون میزارم

اما بهترین کار اینه که برای جوملا 1.5 از کامپوننت رایگان acesef استفاده کنی. البته هدف آموزش استفاده نکردن از این کامپوننتها بوده اما ...

جوملا 1.5 مشکل نام مستعار فارسی و ... رو هم داره که با این کامپوننت میشه رفعش کرد

Share this post


Link to post
Share on other sites

دوست عزیز، کدهایی که فرمودید، دقیقا کجا هستند؟

توی این صفحه که هیچ کدی وجود نداره!

Share this post


Link to post
Share on other sites

در این مسیر components\com_content\router.php فایل router.php رو باز کنید

به خط 27 برید و کد زیر رو

$advanced    = $params->get('sef_advanced_link', 0);

به این تبدیل کنید

$advanced    = $params->get('sef_advanced_link', 1);

و در خط 208 خط زیر رو

$advanced    = $params->get('sef_advanced_link', 0);

به این تبدیل کنید

$advanced    = $params->get('sef_advanced_link', 1);

در واقع در هر دو خط بالا فقط 0 رو به 1 تبدیل کردیم

سپس خطوط 228 تا 232 یعنی این قسمت

if (strpos($segments[0], ':') === false) {
   $vars['view'] = 'article';
   $vars['id'] = (int)$segments[0];
   return $vars;
}

به شکل زیر به حالت کامنت در میاریم تا غیر فعال باشن

/*
if (strpos($segments[0], ':') === false) {
   $vars['view'] = 'article';
   $vars['id'] = (int)$segments[0];
   return $vars;
}*/

الان شناسه مطلب دیگه در آدرس بار دیده نمیشه

Share this post


Link to post
Share on other sites

سلام. ممنون من این کار را کردم اما در برخی از مطالبم تاریخ مطلب در آدرس میاد. چکار کنم؟

Share this post


Link to post
Share on other sites
سلام. ممنون من این کار را کردم اما در برخی از مطالبم تاریخ مطلب در آدرس میاد. چکار کنم؟

درود و خوش آمد به جوملا فروم

شما برای اون مطلب نام مستعار انتخاب نکردید

همون مطلب رو باز کنید و نام مستعارش رو به انگلیسی وارد کنید.در صورتی که می خواید به فارسی وارد کنید،از قسمت تنظیمات کلی/نام مستعار یونیکد رو روی بله قرار بدید

Share this post


Link to post
Share on other sites

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری