کد نمونه Url Rewrite در Wordpress

نرم افزارهای مدیریت محتوا ( CMS ) > سرویس های 2008 و 2012 > Wordpress

نحوه ی انجام Url rewrite در Wordpress :

 
این قابلیت در وردپرس ، Permalink نام دارد  )مانند /%category%/%postname%/ ) و در صورتی نام صفحات پست  فارسی باشد کار نخواهد کرد . چراکه به دلیل LTR بودن متون در Wordpress  زمانی ;که نام پست ترکیبی از کلمات فارسی و انگلیسی باشد و کلمه فارسی در ابتدا یا انتهای نام پست قرار داشته باشد ، پست مورد نظر را پیدا نخواهد کرد. برای حل این مشکل می توانید کلمه ی فارسی را که جابجا می شود تغییر دهید و یا از کلمات فارسی در وسط جمله استفاده نمایید . راه حل دیگر نام گذاری کل عنوان به صورت فارسی و یا کاملا انگلیسی می باشد . همچنین باید id  پست قبل از نام پست در URL وجود داشته باشد. برای تنظیم Permalink در wordpress   ساختار پرمالینک را در داشبورد وردپرس تنظیم نمایید . جهت انجام این کار
 
-1 ابتدا به داشبورد وردپرس لاگین نمایید .
 
-2بر روی لینک setting  در پنل سمت چپ کلیک نمایید در option های ظاهر شده بر روی Permalinks کلیک کنید . لیستی از option ها در وسط پنجره ظاهر می شود . نوع Url rewrite را که می خواهید برای بلاگ استفاده شود را انتخاب کنید . مثلا با انتخاب day and name روزی که پست نوشته شده به همراه نام آن Url می شود .
 
بر روی update برای ذخیره تنظیمات کلیک کنید . سپس خروجی را با اجرای وبلاگ مشاهده نمایید .
 
جهت انجام این تغییرات لازم است فایل web.config  دسترسی نوشتنی داشته باشد (راهنمای اعطای دسترسی به فایل و یا فولدری خاص) .
نمونه ای از کد صحیح که در web.config ایجاد میشود به شکل زیر است. توجه داشته باشید که کد بصورت اتوماتیک توسط وردپرس ایجاد و در web.config قرار داده میشود. اما شما می توانید مستقیما web.config را ویرایش کرده  و کد را در آن قرار دهید.


<rewrite>
   <rules>
                <rule name="wordpress" patternSyntax="Wildcard">
                    <match url="*" />
                        <conditions>
                            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                        </conditions>
                    <action type="Rewrite" url="index.php" />
                </rule>

</rules>
    </rewrite>

 

ساختار فوق حالت Domain.com/post_id/post_name را اجرا میکنید.
منظور از Domain.com نام دامنه شما، post_id شماره پست مربوطه و post_name عنوان پست می باشد.
 
همچنین در صورتیکه امکان استفاده از کد فوق را نداشتید می توانید نوع Permalink وب سایت وردپرسی خود را بر روی Custom گذشته و از تکه کد زیر استفاده کنید.
/index.php/%postname%/
 

Add Feedback