نقل قول: تغییر url صفحات وب
با htaccess جستجو کن آموزش هاش زیاده
نقل قول: تغییر url صفحات وب
نقل قول:
نوشته شده توسط
plague
با htaccess جستجو کن آموزش هاش زیاده
از دستور RewriteRule برای ریدایرکت کردن وتغییر لینک استفاده میکنم منتهانمی دونم چطور در htaccess. یا در پتِرن RewriteRule نام صفحه ذخیره شده در دیتابیس رو استخراج کنم(کوئری یا...)؟
چون در url، صفحات و محتوای اونها فقط از طریق page id فراخوانی میشود(با متد GET)...(در پست اول مثال زدم).
الآن دستوری که در htaccess استفاده میکنم به صورت زیر هست که فقط page id رو میتونم در url به کاربر نمایش بدم، نام صفحه رو چطور میتونم در url به نمایش بذارم؟
RewriteRule ^category/([^/]+) /display.php?page_id=$1 [NC,L]
نقل قول: تغییر url صفحات وب
اول اینکه شما نباید همینجوری عنوان رو بزاری توی لینک چون توی عنوان یه سری کاراکتر های غیر مجاز هست معمولا مثل اسپیس که توی لینک نمیتونه باشه و وقتی شما عنوان رو بزاری توی لینک مرورگر اتومات تغییرش میده و کاراکتر های غیر مجاز رو تغییر میده مثلا اسپیس رو میکنه %20 یا همچین چیزی .... شما باید قبلش کاراکتر های اسپیس رو تبدیل کنی به - لینک همین صفحه رو نگاه کن بین کاراکتر های فارسی - گزاشته ... بهش میگن slug
از اینکه بگزریم نام و شناسه هردو در دیتبایس هستن طبیعتا شما از دیتبایس خندی شناسه رو که توی url گزاشتی ... خب بجای شناسه نام/عنوان چیزی که از دیتبایس خوندی رو بزار
اگه منظورت اینه که توی htaccess چی بزاری که عنوان ها رو قبول کنه میتونی از
(.*)
استفاده کنی
https://stackoverflow.com/questions/18547015
نقل قول: تغییر url صفحات وب
نقل قول:
نوشته شده توسط
plague
اول اینکه شما نباید همینجوری عنوان رو بزاری توی لینک چون توی عنوان یه سری کاراکتر های غیر مجاز هست معمولا مثل اسپیس که توی لینک نمیتونه باشه و وقتی شما عنوان رو بزاری توی لینک مرورگر اتومات تغییرش میده و کاراکتر های غیر مجاز رو تغییر میده مثلا اسپیس رو میکنه %20 یا همچین چیزی .... شما باید قبلش کاراکتر های اسپیس رو تبدیل کنی به - لینک همین صفحه رو نگاه کن بین کاراکتر های فارسی - گزاشته ... بهش میگن slug
از اینکه بگزریم نام و شناسه هردو در دیتبایس هستن طبیعتا شما از دیتبایس خندی شناسه رو که توی url گزاشتی ... خب بجای شناسه نام/عنوان چیزی که از دیتبایس خوندی رو بزار
اگه منظورت اینه که توی htaccess چی بزاری که عنوان ها رو قبول کنه میتونی از
(.*)
استفاده کنی
https://stackoverflow.com/questions/18547015
ممنون برای توضیحات