teerachai Posted July 10, 2013 Share Posted July 10, 2013 ไฟล์ที่ต้องแก้มีดั้งนี้ 1.\classes\Tools.php ค้นหา Function str2url แล้ว copy ทับไปเลยครับ public static function str2url($str) { static $allow_accented_chars = null; if ($allow_accented_chars === null) $allow_accented_chars = Configuration::get('PS_ALLOW_ACCENTED_CHARS_URL'); $str = trim($str); if (function_exists('mb_strtolower')) $str = mb_strtolower($str, 'utf-8'); elseif (!$allow_accented_chars) $str = Tools::replaceAccentedChars($str); // Remove all non-whitelist chars. if ($allow_accented_chars) $str = preg_replace('/[^a-zA-Z0-9\s\'\:\/\[\]-\pL\pM]/u', '', $str); else $str = preg_replace('/[^a-zA-Z0-9\s\'\:\/\[\]-]/','', $str); $str = preg_replace('/[\s\'\:\/\[\]-]+/', ' ', $str); $str = str_replace(array(' ', '/'), '-', $str); // If it was not possible to lowercase the string with mb_strtolower, we do it after the transformations. // This way we lose fewer special chars. if (!function_exists('mb_strtolower')) $str = strtolower($str); return $str; } 2.\classes\Validate.php ค้นหา Function isLinkRewrite และ isRoutePattern แล้ว copy ทับไปเลยครับ (อยู่ติดกันครับ) public static function isLinkRewrite($link) { if (Configuration::get('PS_ALLOW_ACCENTED_CHARS_URL')) return preg_match('/^[_a-zA-Z0-9\-\pL\pM]+$/u', $link); return preg_match('/^[_a-zA-Z0-9\-]+$/', $link); } public static function isRoutePattern($pattern) { if (Configuration::get('PS_ALLOW_ACCENTED_CHARS_URL')) return preg_match('/^[_a-zA-Z0-9\(\)\.{}:\/\-\pL\pM]+$/u', $pattern); return preg_match('/^[_a-zA-Z0-9\(\)\.{}:\/\-]+$/', $pattern); } 3. \classes\Dispatcher.php Copy ทับไปเลยครับ public $default_routes = array( 'category_rule' => array( 'controller' => 'category', 'rule' => '{id}-{rewrite}', 'keywords' => array( 'id' => array('regexp' => '[0-9]+', 'param' => 'id_category'), 'rewrite' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'meta_keywords' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'meta_title' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), ), ), 'supplier_rule' => array( 'controller' => 'supplier', 'rule' => '{id}__{rewrite}', 'keywords' => array( 'id' => array('regexp' => '[0-9]+', 'param' => 'id_supplier'), 'rewrite' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'meta_keywords' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'meta_title' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), ), ), 'manufacturer_rule' => array( 'controller' => 'manufacturer', 'rule' => '{id}_{rewrite}', 'keywords' => array( 'id' => array('regexp' => '[0-9]+', 'param' => 'id_manufacturer'), 'rewrite' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'meta_keywords' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'meta_title' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), ), ), 'cms_rule' => array( 'controller' => 'cms', 'rule' => 'content/{id}-{rewrite}', 'keywords' => array( 'id' => array('regexp' => '[0-9]+', 'param' => 'id_cms'), 'rewrite' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'meta_keywords' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'meta_title' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), ), ), 'cms_category_rule' => array( 'controller' => 'cms', 'rule' => 'content/category/{id}-{rewrite}', 'keywords' => array( 'id' => array('regexp' => '[0-9]+', 'param' => 'id_cms_category'), 'rewrite' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'meta_keywords' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'meta_title' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), ), ), 'module' => array( 'controller' => null, 'rule' => 'module/{module}{/:controller}', 'keywords' => array( 'module' => array('regexp' => '[_a-zA-Z0-9_-]+', 'param' => 'module'), 'controller' => array('regexp' => '[_a-zA-Z0-9_-]+', 'param' => 'controller'), ), 'params' => array( 'fc' => 'module', ), ), 'product_rule' => array( 'controller' => 'product', 'rule' => '{category:/}{id}-{rewrite}{-:ean13}.html', 'keywords' => array( 'id' => array('regexp' => '[0-9]+', 'param' => 'id_product'), 'rewrite' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'ean13' => array('regexp' => '[0-9\pL]*'), 'category' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'categories' => array('regexp' => '[/_a-zA-Z0-9-\pL\pM]*'), 'reference' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'meta_keywords' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'meta_title' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'manufacturer' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'supplier' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'price' => array('regexp' => '[0-9\.,]*'), 'tags' => array('regexp' => '[a-zA-Z0-9-\pL]*'), ), ), // Must be after the product and category rules in order to avoid conflict 'layered_rule' => array( 'controller' => 'category', 'rule' => '{id}-{rewrite}{/:selected_filters}', 'keywords' => array( 'id' => array('regexp' => '[0-9]+', 'param' => 'id_category'), /* Selected filters is used by the module blocklayered */ 'selected_filters' => array('regexp' => '.*', 'param' => 'selected_filters'), 'rewrite' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'meta_keywords' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), 'meta_title' => array('regexp' => '[_a-zA-Z0-9-\pL\pM]*'), ), ), Link to comment Share on other sites More sharing options...
Devstore Thai Posted July 12, 2013 Share Posted July 12, 2013 ถ้าแก้ไขไฟล์ระบบตรง ๆ ให้ระมัดระวังถ้ามีการอัพรุ่นด้วยโมดูล autoupgrade ด้วยนะครับ มันอาจจะเขียนทับไฟล์ที่เราแก้ไขไปให้ระวังตรงจุดนี้ด้วยนะครับ Link to comment Share on other sites More sharing options...
GibGae.com Posted August 18, 2013 Share Posted August 18, 2013 PrestaShop นี่อัพเดทบ่อยมั้ยครับ ผมมือใหม่กลัวงง ตอนนี้ก็งงๆ อยู่ Link to comment Share on other sites More sharing options...
fong hong Posted January 5, 2015 Share Posted January 5, 2015 Thanks for mr. teerachai above post Posted 10 July 2013 - 02:32 PM. i solved on my ps1.5.6.1. www.7zhop.com i also add Thank you, This has solved the same problem for generating Friendly URL in Thai Language. http://www.prestashop.com/forums/topic/213603-solved-what-is-ps-allow-accented-chars-url-friendly-url/The SQL code I used is:INSERT INTO `ps_configuration` (`id_configuration`, `id_shop_group`, `id_shop`, `name`, `value`, `date_add`, `date_upd`) VALUES (NULL, NULL, NULL, 'PS_ALLOW_ACCENTED_CHARS_URL', '1', '2014-00-00 00:00:00', '2014-00-00 00:00:00'); Thanks All http://www.7zhop.com/th/cosmetic/167-ครีมทาผิวขาวตัว-constanta-whitening-uv-protec-powder-cake.html Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now