به ترتیب کردن نام استان ها در ووکامرس بر اساس حروف الفبای فارسی

mostafa79

تازه وارد
22/1/19
2
2
3
سلام به همگی دوستان،
ظاهرا خیلی از دوستان قصد تغییر ترتیب نام استان ها بر اساس الفبای فارسی رو دارند، کافیه طبق موارد زیر پیش برید تا اوکی بشه،
( البته من برای تغییر ترتیب نام استان ها، هم توی پشتیبانی افزونه های سایت اصلی وردپرس و هم توی سایت woocommerce.ir تیکت گذاشتم ولی کسی قصد تصحیح این مورد در ورژن های آینده رو ظاهرا نداره)
(این تغییرات در نسخه 3.6.5 ووکامرس فارسی تست شده و اگر به دقت انجام بدید، مشکلی ایجاد نمیکنه.)
برای تغییر ترتیب نام استان ها در ووکامرس، کافیه وارد مدیریت فایل های هاستتون بشید، و در فولدر افزونه persian-woocommerce وارد فولدر include بشید و فایل class-address.php رو باز کنید و کد زیر رو (از خط 24 تا 59) پیدا کرده:
PHP:
        public function __construct() {

            $this->country = 'IR';
            $this->states  = array(
                'ABZ' => 'البرز',
                'ADL' => 'اردبیل',
                'EAZ' => 'آذربایجان شرقی',
                'WAZ' => 'آذربایجان غربی',
                'BHR' => 'بوشهر',
                'CHB' => 'چهارمحال و بختیاری',
                'FRS' => 'فارس',
                'GIL' => 'گیلان',
                'GLS' => 'گلستان',
                'HDN' => 'همدان',
                'HRZ' => 'هرمزگان',
                'ILM' => 'ایلام',
                'ESF' => 'اصفهان',
                'KRN' => 'کرمان',
                'KRH' => 'کرمانشاه',
                'NKH' => 'خراسان شمالی',
                'RKH' => 'خراسان رضوی',
                'SKH' => 'خراسان جنوبی',
                'KHZ' => 'خوزستان',
                'KBD' => 'کهگیلویه و بویراحمد',
                'KRD' => 'کردستان',
                'LRS' => 'لرستان',
                'MKZ' => 'مرکزی',
                'MZN' => 'مازندران',
                'GZN' => 'قزوین',
                'QHM' => 'قم',
                'SMN' => 'سمنان',
                'SBN' => 'سیستان و بلوچستان',
                'THR' => 'تهران',
                'YZD' => 'یزد',
                'ZJN' => 'زنجان'
            );
و با کد زیر جایگزین کنید:

PHP:
        public function __construct() {

            $this->country = 'IR';
            $this->states  = array(
                'EAZ' => 'آذربایجان شرقی',
                'WAZ' => 'آذربایجان غربی',
                'ADL' => 'اردبیل',
                'ESF' => 'اصفهان',
                'ABZ' => 'البرز',
                'ILM' => 'ایلام',
                'BHR' => 'بوشهر',
                'THR' => 'تهران',
                'CHB' => 'چهارمحال و بختیاری',
                'SKH' => 'خراسان جنوبی',
                'RKH' => 'خراسان رضوی',
                'NKH' => 'خراسان شمالی',
                'KHZ' => 'خوزستان',
                'ZJN' => 'زنجان',
                'SMN' => 'سمنان',
                'SBN' => 'سیستان و بلوچستان',
                'FRS' => 'فارس',
                'GZN' => 'قزوین',
                'QHM' => 'قم',
                'KRD' => 'کردستان',
                'KRN' => 'کرمان',
                'KRH' => 'کرمانشاه',
                'KBD' => 'کهگیلویه و بویراحمد',
                'GLS' => 'گلستان',
                'GIL' => 'گیلان',
                'LRS' => 'لرستان',
                'MZN' => 'مازندران',
                'MKZ' => 'مرکزی',
                'HRZ' => 'هرمزگان',
                'HDN' => 'همدان',
                'YZD' => 'یزد'
            );

* فقط یادتون باشه، اگر از پلاگین حمل و نقل پیشرفته یا درگاه پرداخت پیشرفته و یا افزونه هایی که نیاز به نام استان یا شهر و یا شرط استان ها دارند، استفاده میکنید، باید شهر ها و استان هاتون رو یک بازبینی بکنید، چون با جابجایی این آرایه ها، بعضی از تنظیمات مربوط به شهرها و استان ها جابجا می شوند. تنظیمات ووکامرس هم نیاز به بازبینی در انتخاب استان خواهد داشت.) در کل بعد از این تغییر یک بار شرایط ارسال و پرداختتون رو در سایت چک کنید که مشکلی به وجود نیاد.

ضمنا، 2 نکته اشتباه در شهر ها هست، یکی شهر ماهدشت که به اشتباه ماهیدشت نوشته شده، و دیگری اینکه رباط کریم جزو استان تهران هست، که به اشتباه در استان البرز ثبت شده. که خودتون باید در فایل های iran_cities.js و iran_cities.min.js اصلاحش کنید، (البته اگر از تغییراتی که میدید مطمئن هستید این کار رو انجام بدید و یا حداقل یک بکاپ از این فایل ها داشته باشید.)

پیروز باشید.