Короче говоря, у меня есть шаблон веб-сайта на моем компьютере, который мне постоянно приходится добавлять / удалять абзацы, менять цвета заголовков, менять изображения и т. Д., Чтобы создавать новые веб-сайты для размещения на сервере. Для быстрого решения этих проблем я подумал о написании JavaScript, который предлагает пользователю выбрать цвета, изображения, абзацы, которые он хотел бы удалить и т. Д., И после отправки вносит эти изменения в браузер (что-то вроде CDM). ). Конечно, как только я обновлю браузер, все изменения пользователя будут потеряны, если я просто не скопирую новый код из Inspector Tools и не заменю им старый код шаблона сайта.
Я хочу знать, можно ли написать код на php или JavaScript, где вы можете открыть свой локальный файл index.html в браузере, попросить браузер указать конкретные значения (например, какое шестнадцатеричное значение цвета вы хотите все элементы заголовка, чтобы быть?), берет значения, которые вы вводите, и сохраняет их в локальный файл index.html? Таким образом, я могу взять только что отредактированный локальный файл и поместить его на сервер как новый продукт. Я знаю, что это немного странный запрос, извините заранее, если он не слишком ясен.
Таким образом, я могу взять только что отредактированный локальный файл и поместить его на сервер как новый продукт. Я знаю, что это немного странный запрос, извините заранее, если он не слишком ясен.
Является ли этот новый продукт новым отдельным веб-сайтом … как новый шаблон веб-сайта, который может установить пользователь?
У меня есть догадка, что это просто «новый продукт» в списке продуктов в каком-то интернет-магазине. Если это просто продукт в магазине … тогда, по моему мнению, весь ваш подход «неверен». В любом случае, вы можете использовать node.js / php + database, чтобы сохранить выбор пользователей и сгенерировать HTML на стороне сервера.
Я делал это раньше для клиента, чтобы он мог точно настроить веб-страницу с помощью цветов / шрифтов / отступов в реальном времени и сразу же увидеть результаты.
Мое быстрое решение было в основном так.
// load user choices from the database
landingpage = Database.landing_page.find({userId: 1});
// use simple templating engine to output values based on user choices
<html>
<img src="{{landingpage.logoUrl}}">
{{#if landingpage.paragraph1}}
<p style="color: {{landingpage.paragraph1_color}}">{{landingpage.paragraph1}}</p>
{{/if}}
{{#if landingpage.paragraph2}}
<p style="color: {{landingpage.paragraph2_color}}">{{landingpage.paragraph2}}</p>
{{/if}}
</html>
// after user has filled in all the required configuration options, i could then open the page and see the rendered page html.
У каждой страницы также был дополнительный шаблон с полями ввода, поэтому, если пользователь хочет редактировать страницу, он может открыть этот «специальный» шаблон в браузере и щелкнуть любой элемент на странице. Это тогда побудило бы его со всеми редактируемыми свойствами для этого элемента.
например, чтобы сделать вышеупомянутый шаблон редактируемым, я скопировал бы его и добавил слушателей щелчка.
<html>
<img src="{{landingpage.logoUrl}}" onClick="promptLogoUrl()">
{{#if landingpage.paragraph1}}
<p style="color: {{landingpage.paragraph1_color}}" onClick="promptP1Color()">
{{landingpage.paragraph1}}
</p>
{{/if}}
{{#if landingpage.paragraph2}}
<p style="color: {{landingpage.paragraph2_color}}" onClick="promptP2Color()">
{{landingpage.paragraph2}}
</p>
{{/if}}
</html>
// the prompts would use ajax to save the value user entered in prompt with the appropriate element id/name/label
Это упрощенный пример. В моем реальном случае использования в моих шаблонах использовалось соглашение / шаблон именования, чтобы я мог использовать функцию 1 для сохранения всех введенных пользователем свойств.
Ваш вопрос — вопрос да и нет, поэтому я дам краткий ответ да или нет.
Да — вы можете сохранить изменения в вашем локальном html через javascript / php.
Других решений пока нет …