graf Posted July 23, 2008 Share Posted July 23, 2008 вобщем для этого нужны знания явы, ну и знать где менять в коде.Смысл таков, в категориях/товарах автоматических чтобы заполнялось поле ЧПУ с наименования товара/категории.может кто себе уже сделал? Link to comment Share on other sites More sharing options...
Bad_Boy Posted August 1, 2008 Share Posted August 1, 2008 Что-то вроде этого. function get_link() { var cyr = new Array( \"Щ\", \"Ш\", \"Ч\", \"Ц\",\"Ю\", \"Я\", \"Ж\", \"А\",\"Б\",\"В\",\"Г\",\"Д\",\"Е\",\"Ё\",\"З\",\"И\",\"Й\",\"К\",\"Л\",\"М\",\"Н\",\"О\",\"П\",\"Р\",\"С\",\"Т\",\"У\",\"Ф\",\"Х\", \"Ь\",\"Ы\",\"Ъ\",\"Э\",\"Є\",\"Ї\", \"щ\", \"ш\", \"ч\", \"ц\",\"ю\", \"я\", \"ж\", \"а\",\"б\",\"в\",\"г\",\"д\",\"е\",\"ё\",\"з\",\"и\",\"й\",\"к\",\"л\",\"м\",\"н\",\"о\",\"п\",\"р\",\"с\",\"т\",\"у\",\"ф\",\"х\", \"ь\",\"ы\",\"ъ\",\"э\",\"є\",\"ї\",\"ь\"); var lat= new Array( \"Shh\",\"Sh\",\"Ch\",\"C\",\"Ju\",\"Ja\",\"Zh\",\"A\",\"B\",\"V\",\"G\",\"D\",\"Je\",\"Jo\",\"Z\",\"I\",\"J\",\"K\",\"L\",\"M\",\"N\",\"O\",\"P\",\"R\",\"S\",\"T\",\"U\",\"F\",\"Kh\",\"\'\",\"Y\",\"`\",\"E\",\"Je\",\"Ji\", \"shh\",\"sh\",\"ch\",\"c\",\"ju\",\"ja\",\"zh\",\"a\",\"b\",\"v\",\"g\",\"d\",\"je\",\"jo\",\"z\",\"i\",\"j\",\"k\",\"l\",\"m\",\"n\",\"o\",\"p\",\"r\",\"s\",\"t\",\"u\",\"f\",\"kh\",\"\'\",\"y\",\"`\",\"e\",\"je\",\"ji\",\"\"); url = document.getElementById(\"title\"); var chars = url.value.split(\'\'); for (var i=0; i < chars.length; i++) if(cyr.join(\'\').indexOf(chars[i]) != -1) chars[i] = lat[cyr.join(\'\').indexOf(chars[i])]; document.getElementById(\"link\").value = chars.join(\'\').replace(/\\W/gi, \"_\").toLowerCase().substr(0,38); } Название* <input type=\"text\" name=\"title\" value=\"Контакты\" size=\"45\" id=\"title\"/> Ссылка* <input type=\"text\" name=\"link\" value=\"kontakty\" size=\"45\" id=\"link\" /> <a href=\'[removed]void(0)\' onclick=\'get_link()\'>Получить ссылку #title — поле с названием #link — поле со ссылкой url = document.getElementById(\"title\"); document.getElementById(\"link\") ... Link to comment Share on other sites More sharing options...
graf Posted September 20, 2008 Author Share Posted September 20, 2008 а в каком файле это менять/вставлять? Link to comment Share on other sites More sharing options...
Your Friend Posted November 22, 2009 Share Posted November 22, 2009 Посмотрите в admin.js функцию str2url. Дальше надеюсь сами догадаетесь. Link to comment Share on other sites More sharing options...
Skakruk Posted December 9, 2009 Share Posted December 9, 2009 изменения в файле ../js/admin.js Заменяем функцию str2url (с 3 строки) ниже приведенным кодом: function str2url(str,encoding,ucfirst) { str = str.toUpperCase(); str = str.toLowerCase(); str = str.replace(/[\u0105\u0104\u00E0\u00E1\u00E2\u00E3\u00E4\u00E5]/g,'a'); str = str.replace(/[\u00E7\u0107\u0106]/g,'c'); str = str.replace(/[\u00E8\u00E9\u00EA\u00EB\u0119\u0118]/g,'e'); str = str.replace(/[\u00EC\u00ED\u00EE\u00EF]/g,'i'); str = str.replace(/[\u0142\u0141]/g,'l'); str = str.replace(/[\u00F2\u00F3\u00F4\u00F5\u00F6\u00F8\u00D3]/g,'o'); str = str.replace(/[\u015B\u015A]/g,'s'); str = str.replace(/[\u00F9\u00FA\u00FB\u00FC]/g,'u'); str = str.replace(/[\u00FD\u00FF]/g,'y'); str = str.replace(/[\u017C\u017A\u017B\u0179]/g,'z'); str = str.replace(/[\u00F1]/g,'n'); str = str.replace(/[\u0153]/g,'oe'); str = str.replace(/[\u00E6]/g,'ae'); str = str.replace(/[\u00DF]/g,'ss'); str = str.replace(/[\u0410\u0430]/g,'a'); str = str.replace(/[\u0411\u0431]/g,'b'); str = str.replace(/[\u0412\u0432]/g,'v'); str = str.replace(/[\u0413\u0433]/g,'g'); str = str.replace(/[\u0414\u0434]/g,'d'); str = str.replace(/[\u0415\u0435\u0401\u0451]/g,'e'); str = str.replace(/[\u0416\u0436]/g,'zh'); str = str.replace(/[\u0417\u0437]/g,'z'); str = str.replace(/[\u0418\u0438\u0406\u0456]/g,'i'); str = str.replace(/[\u0419\u0439]/g,'j'); str = str.replace(/[\u041A\u043A]/g,'k'); str = str.replace(/[\u041B\u043B]/g,'l'); str = str.replace(/[\u041C\u043C]/g,'m'); str = str.replace(/[\u041D\u043D]/g,'n'); str = str.replace(/[\u041E\u043E]/g,'o'); str = str.replace(/[\u041F\u043F]/g,'p'); str = str.replace(/[\u0420\u0440]/g,'r'); str = str.replace(/[\u0421\u0441]/g,'s'); str = str.replace(/[\u0422\u0442]/g,'t'); str = str.replace(/[\u0423\u0443]/g,'u'); str = str.replace(/[\u0424\u0444]/g,'f'); str = str.replace(/[\u0425\u0445]/g,'kh'); str = str.replace(/[\u0426\u0446]/g,'c'); str = str.replace(/[\u0427\u0447]/g,'ch'); str = str.replace(/[\u0428\u0448]/g,'sh'); str = str.replace(/[\u0429\u0449]/g,'sch'); str = str.replace(/[\u042A\u044A]/g,''); str = str.replace(/[\u042B\u044B]/g,''); str = str.replace(/[\u042C\u044C]/g,''); str = str.replace(/[\u042D\u044D]/g,'e'); str = str.replace(/[\u042E\u044E]/g,'yu'); str = str.replace(/[\u042F\u044F]/g,'ya'); str = str.replace(/[\u0407\u0457]/g,'ji'); str = str.replace(/[\u0404\u0454]/g,'je'); str = str.replace(/[^a-z0-9\s\'\:\/\[\]-]/g,''); str = str.replace(/[\s\'\:\/\[\]-]+/g,' '); str = str.replace(/[ ]/g,'-'); if (ucfirst == 1) { c = str.charAt(0); str = c.toUpperCase()+str.slice(1); } return str; } Link to comment Share on other sites More sharing options...
Your Friend Posted December 9, 2009 Share Posted December 9, 2009 Ага, именно так Link to comment Share on other sites More sharing options...
kamikazee Posted April 20, 2010 Share Posted April 20, 2010 Доброго времени суток. Подскажите, пожалуйста, как сделать так, чтобы в ЧПУ не указывался номер категории, т.е. вместо /166-noutbuki/asus... было просто /noutbuki/asus... Заранее спасибо за помощь. Link to comment Share on other sites More sharing options...
Your Friend Posted April 20, 2010 Share Posted April 20, 2010 Поправить класс Link и файлы category.php, product.php и т.д. Link to comment Share on other sites More sharing options...
kamikazee Posted April 23, 2010 Share Posted April 23, 2010 Для меня это высшая математика.. Так глубоко я боюсь лазить без особых на то знаний. Можете и хотите - помогите, пожалуйста, нет - так нет. В любом случае спасибо. Link to comment Share on other sites More sharing options...
Your Friend Posted April 24, 2010 Share Posted April 24, 2010 Тогда есть платное решение проблемы. Link to comment Share on other sites More sharing options...
Recommended Posts