Kamrad.ru (https://kamrad.ru/index.php)
- Веб-дизайн, вёрстка и веб-программирование (https://kamrad.ru/forumdisplay.php?forumid=87)
-- Обработка большого числа страниц (https://kamrad.ru/showthread.php?threadid=61190)
Обработка большого числа страниц
Подскажите начинающему! Нужно внести одни и те же изменения в большое количество (около 200) статических HTML-страниц. Изменения вида - поправить ссылку в меню, поменять атрибуты параграфа (это страницы со статьями), расположение счетчика и т.п. Страницы одинаковые, за исключением введенного в одной ячейке таблицы текста. И, если можно, ответьте не просто ссылкой на какую-то прогу, а добавьте хоть пару слов о том, как ей пользоваться....
Заранее пасиб....
уфф...
Фар менеджер, егойный редактор, установи плагин Search&replace
поиск и замена... Если знаком с регЭкспами, то можешь все сразу заменить..
Также способен обработать файлы в директории - маска/выделение...
http://plugring.farmanager.com/ - там этот плагин...
(Все на русском, неплохие доки к нему идут..)
В Dreamweaver есть встроенная функции массовых замен.
kildor, Alex Spade
пасиб.... "найти и заменить" - это, конечно, вещь... но не всегда работает. Вот, к примеру, надо мне в конце каждой каждой статьи поставить сслку - "обсудить в форуме", и тут функция поиска и замены бессильна.
Вот, к примеру, надо мне в конце каждой каждой статьи поставить сслку - "обсудить в форуме", Такие вещи делаются по совершенно иному принципу -- через шаблоны страниц и скрипты PHP/Perl.
Зереша
то есть, если я правильно понял, в ХТМЛ-е делается шаблон страницы с пустым местом под статью, а потом средствами PHP/Perl на это место вставляются тексты из какой-то базы? если так, то можно ли где-то почитать описание примера? я покопался в ссылках из "Справочника...", но мне, как человеку начинающему, достаточно сложно продраться через материал, ориентированный на уже что-то понимающих. может быть с конкретным примером перед глазами проще пойдет.....
Туманный Еж
Perl и PHP для этого необязателен, достаточно воспользоваться SSI (если есть их поддержка на хостинге - как правило, есть).
Делаешь отдельную HTML-страничку, которая будет содержать в себе то, что требуется поместить в конце каждой статьи. К примеру, создаешь файл footer.html следующего содержания:
<br>
<a href=forum.html>Обсудить на форуме</a>
<br>
Затем в страницах со статьями в нужном месте вставляешь следующую строчку:
<!--#include virtual="footer.html" -->
При попытке открыть такую страницу со статьей сервер будет заменять этот include содержимым файла footer.html.
Alexvn
Уже веселее... Полезная штучка, не знал про такую, надо б про это почитать побольше....
Но проблема, тем не менее, остается - ведь есть уже готовые страницы, в которые и надо будет повставлять это самое <!--#include virtual="footer.html" --> Вручную долго и нудно.
Попробую переформулировать вопрос - вот есть пара сотен страниц со статьями. Они отличаются тематикой и, соответственно, имеют разное оглавление раздела. Сгруппированы по папкам, каждая папка содержит статьи одного раздела. Можно ли сделать (с помощью какой-то проги) следующее - взять одну страницу из папки, внести в нее какое-то изменение (примеры - убрать счетчик, изменить шапку, добавить строчку в оглавление) и применить сделанное ко всем страницам из данной папки? В Дримвивере есть шаблоны, но, насколько я понял, это применимо лишь к новым страницам, созданным на их основе. А мне нужно массово поменять старые.
Туманный Еж - если заменяемые фрагменты выглядят одинаково во всех страницах данной папки, то можно использовать массовую замену в одной из программ, рекомендованных выше.
Если фрагменты всюду разные, то автоматизировать работу вряд ли удастся...
смотря насколко разные...
Регулярные выражения - вещь хорошая....
Мне как то потребовалось привести все непарные теги под xhtml стандарт привести (вместо
, с учетом того, что в них еще и классы/стили/id/и прочее, причем совем разнокалиберное... S&R - справился великолепно с таким вот квестом...code:
<br> - <br />
kildor - почему бред, через SSI очень удобно, нужно сменить футер на всех страницах - изменил содержимое одного файла и получил изменение на всех страницах сразу. И не нужно изучать целый язык программирования.
Alexvn
Хорошо, конкретизирую вопрос.
Первое. Вот мне надо выставить везде порекомендованный тобой кусок кода, прям после статьи, видимо в той же ячейке таблицы. Окончания статей везде, естественно, разные. Как в данном случае, если такое возможно, применить поиск и замену?
Второе. В другой ячейке у меня оглавление раздела, вида:
<p class=pp2><b><font size="2" color="#BF4B4B">Другие статьи:</font></b></p>
<p class=pp1>
<img src="../../img/t.gif" width="4" height="4" border="0"> <a href="http://...../k26.htm">Последняя статья</a><br>
(.......)
<img src="../../img/t.gif" width="4" height="4" border="0"> <a href="http:/...../k01.htm">Первая статья</a><br>
И вот нужно мне в это оглавление вставить ссылку на еще одну статью, за номером, к примеру, k27, аккурат после <p class=pp1> Как? Дримвивер, насколько я понял. в ХТМЛ не ищет....
Туманный Еж И вот нужно мне в это оглавление вставить ссылку на еще одну статью, за номером, к примеру, k27, аккурат после <p class=pp1> Как? Блин. Руками ;-) Если начать 16-го, то к 30-му можно сделать все 200 страниц ;-)
Alexvn
Может конечно я путаюсь в терминах, но ssi я не считаю статикой... Документ ведь собирается из частей на сервере...
Так что ssi - тоже вариант. . Я с ним не работал, поэтому и не предлагаю...
Туманный Еж
Ну, например через теги, если статья в одной ячейке находится, и этих ячеек немного, то что-нить типа /\w{1,6}</td></tr><tr>/ - но это надо видеть разметку, чтоб сказать точнее... плюс, не забывать про пробелы и переводы строки..
а второе - ну, если тебе надо свтавить аккурат после
code:
<p class=pp1>,
ну например так:
заменить /(<p class=pp1> )/
на $1\r\n<img src="../../img/t.gif" width="4" height="4" border="0">
<a href="http:/...../k27.htm">последняя статья</a><br>
Зереша
Да, блин, там еще архив поднять надо....... Итого за 500 набегает.........
В общем понял я, что самый оптимальный способ - это сделать всё сначала и заново. Заодно и внешний вид поменяю.....
Кстати, не подскажет ли кто хороший учебник по РНР, желательно представляющий из себя пример построения сайта? Или может где валяются РНР-шаблоны? Внутрь бы залезть, покопаться....
http://php.net
Перевод есть на http://pyramidin.narod.ru
http://dklab.ru и ихний форум..
угу, пасибки... будем почитать...
Текущее время: 10:08
Powered by: vBulletin Version 2.0.1
Copyright © Jelsoft Enterprises Limited 2000, 2001.
Любое использование материалов сайта
возможно только с разрешения его администрации.