prostogorod |
|
---|---|
Подскажите, пожалуйста! В модуле page добавление страниц начинаеться с id=1 |
Kopusha |
|
---|---|
Зачем? И потом после 999 стр само станет 4значным Added 1 minute later: #42797 prostogorodнапример id=0001, id=0002, id=0003....id=1233 и т.д В 1233 куда по вашей логике ноли делись? |
prostogorod |
|
---|---|
|
Kort |
|
---|---|
#42799 prostogorod: Никак SED.by - создание сайтов, разработка плагинов и тем для Котонти
|
Kopusha |
|
---|---|
DenDevin |
|
---|---|
Я скажу лишь мнение, как бы я попытался такое реализовать. Хотя может и не получиться. Перед добавлением страницы в контроллере модуля page (по моему это файл page.add.PHP) делал бы проверку на длину значения ID функцией strlen(), и если в ай-ди меньше 4- х символов, то в начало строки подставлять нужное количество нулей. И лмшь если соблюдено условие, вносить запись в базу.
Добавлено 24 минуты спустя: В РНР есть замечательная функция str_pad, я думаю это то что вам нужно. В функцию можно передать четыре аргумента: str_pad( исходная строка, количество добавляемых символов, тип символов ( нули, запятые, пробелы), и направление добавления (справа, слева, с обеих сторон). Но эту функцию нужно применять только с проверкой количества символов в исходной строке, для того чтобы верно указать кол-во добавляемых символов слева. К примеру, if(strlen($id_page) < 2) /////ай ди статьи имеет длину строки меньше 2 символов, то.. { $nulles = "0"; str_pad($id_page, 3, $nulles, STR_PAD_LEFT); } Направление в общем я вам дал. |
|
Відредаговано: DenDevin (12.04.2017 07:41, 8 років тому) |
Kort |
|
---|---|
А то, что в таблице cot_pages page_id -- это ведущее поле с целочисленным типом и автоинкрементом вы не учитываете? Есть более простой и "бережный" вариант -- устанавливать цифровой page_alias плагином с хуками page.add.add.import и page.edit.update.import. Сейчас не проверял (там после хука выполняется cot_page_validate), но когда-то такое делалось для аналогичной задачи, как оказалось в дальнейшем, такой же бессмысленной )) SED.by - создание сайтов, разработка плагинов и тем для Котонти
|
Macik |
|
---|---|
По похожему вопросу я писал в соседнем топике. Рекомендую прочитать. Если тезисно изложить суть, то:
https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F |
DenDevin |
|
---|---|
Я думаю, не обязательно это привязывать к автоинкрементному полю ID, проще все таки в таблице создать еще одно поле и туда вносить данные с этими нулями, а после делать с ними все что нужно - сортировать, удалять и прочее. Так будет логичнее наверно.
|
Dayver |
|
---|---|
Это конечно старая тема (редко захожу, пропустил ее) но вдруг кому то еще понадобится столкнутся с такой же задачей напишу свое мнение. Какой бы она странной и не была но решение крайне простое (и не надо писать что "никак не решить") и не нужно создавать 999 страниц или менять логику php кода каких либо модулей или ядра просто заходите в PhpMyAdmin в свойства таблицы cot_page и там есть поле AUTO_INCREMENT значение которому можно задать 999 тогда страницы создаваемые после даного изменения будут иметь требуемый id Pavlo Tkachenko aka Dayver
|
Kopusha |
|
---|---|
#43401 Dayver: Овация) |