Как найти и заменить код на сайте Как создать свой сайт > Вебмастеру > Создание своего сайта > Блог Андрея Морковина > Как найти и заменить код?

Как быстро найти и заменить код на сайте?

Чем выше уровень безработицы,
тем чаще возникают новые государственные праздники.
Никита Богословский.
9 декабря 2009 года

    Друзья, хочу поделиться с вами маленькой заметкой на тему поиска и замены нужного кода (или просто текста) сразу в множестве файлов, лежащих в разных папках сайта (или в просто папках).

 

 

Как внести изменения в код сайта легко и непринуждённо?

    Первая задача состоит в следующем: вы хотите изменить текст/ссылку/картинку, но среди кучи файлов, относящихся к программному коду сайта, не можете найти тот, в котором нужно сделать желаемые изменения.

    У меня недавно возникло желание удалить из URL-адреса ссылки «Читать далее» на блоге код, который прокручивал страницу подробного содержимого статьи к месту установки тега «more». Такое поведение WordPress мне не понравилось (как-то сбивает это всё с толку) и я решил удалить лишнее из URL-адреса. А именно кусок кода «#more».

    Кто не понял постановку задачи, поясню: аналогичное прокручивание страницы вы можете увидеть, перейдя по ссылке к комментариям данной статьи. Страница будет «проскролирована» благодаря содержащейся в URL инструкции «#comments» (подробнее о работе с такого рода ссылками можно прочитать на здесь). Всё то же самое происходило со ссылкой «Читать далее». С той лишь разницей, что страница «скролировалась» к «якорю» «more». В программном коде «движка» нужно было найти то место, где указана эта директива и удалить её.

    Теперь давайте я расскажу, каким образом можно реализовать поставленную задачу.

    Оказывается, всё очень просто. Нам потребуется программа Total Commander и её способность искать текст внутри файлов.

    Интерфейс поиска вызывается нажатием «горячих» клавиш «Alt+F7».

Форма поиска в Total Commander

    В интерфейсе поиска нас будет интересовать раздел, относящийся к возможности искать заданный текст внутри файлов.

    В соответствующей строке нужно указать характерное сочетание символов кода, которое вы хотите обнаружить. Но здесь нужно помнить тот факт, что, например, при поиске фразы с пробелами («Вот такая фраза») вы можете ничего не найти, потому что в HTML та же самая фраза может быть записана с использованием кода неразрывного пробела « » («Вот такая фраза»).

    Поиск можно производить как в файлах локального компьютера, так и на сервере. Я подключился к серверу, используя возможности всё того же Total Commander.

    Для тех, кто не в курсе: «горячее» сочетание клавиш «Ctrl+F» вызывает диалог подключение к серверу.

  • Нажимаете кнопку «Добавить»;
  • Вводите «Имя соединения» (любое буквосочетание, чтобы самому потом вспомнить, к чему происходит подключение);
  • Указываете «Сервер[:Порт]». Здесь достаточно указать адрес вашего FTP-подключения (его даёт провайдер);
  • «Учётная запись» и «Пароль» (пароль лучше не указывать, а вводить его каждый раз вручную при подключении, дабы защититься таким образом от всяких троянов, сами знаете);
  • Иногда нужно ставить галочку рядом с пунктом «Пассивный режим обмена (как Web-браузер)», иначе будут постоянно происходить обрывы подключения.

    Но сейчас речь не об этом.

    На сервере я выделил те папки, в которых предполагал наличие искомого сочетания «#more» (именно его я счёл наиболее подходящим для поиска соответствующего куска кода) и запустил поиск по содержимому файлов. При поиске на сервере, процесс получается длительный, поэтому можно смело идти пить кофе.

    После завершения поиска, мне были показаны два файла, в которых Total Commander обнаружил искомый текст. Открыв первый файл и перейдя к месту расположения текста «#more», я понял, что достиг цели.

    Немного подредактировал и вуаля: всё работает, нелюбимого мной «скролирования» больше нет.

    Теперь пойдём чуть дальше и разберём ещё одну задачу.

Необходимо сделать замену одинакового куска кода в большом количестве файлов

    У меня частенько возникает такая задача. Например, сайт сделан на чистом HTML и нужно заменить на всех его страницах подпись в «футере». Тут либо лазить текстовым редактором по всем файлам, либо как-то автоматизировать этот процесс.

    Займёмся автоматизацией. Для этого нам понадобится мой любимый редактор PSPad.

    Выбираем пункт «Поиск и замена».

    И в интерфейсе поиска указываем искомую фразу (текст, который был в «футере») и новое содержимое. Ниже выбираем место для поиска (папку, в которой расположен наш сайт) и замену за нас делает робот, а мы продолжаем пить кофе.

    Вот и всё.

    Автор: Андрей Морковин.

 

Ещё материалы по этой теме:

 

 

Комментарии:

Андрей Морковин
Внесу комментарий для примера скролирования страницы к якорю.

Never Lex
А не знаете мини программок для замены слов в большом количестве файлов? Чтобы директорию указал и условие ввёл. Пользовал такую ранбше как-то, но она УТФ не поддерживает

Андрей Морковин
PSPad
Только он.

Never Lex
Упс. Протупил. Спасибо огромное! Не знал что ПСПадом можно такое вытворять.

Андрей Морковин
Да, PSPad — отличная вещь. Жаль, что не умеет подсказывать теги и свойства так, как делает это Dreamweaver, поэтому приходится разрываться и работать с ними двумя.

Never Lex
Я наверно пока не достиг того мастерства, чтобы пользоваться подсказками Пока пишу руками. Занимает больше времени, но не даёт забывать теги и свойства. Вот когда всё будет доведено до автоматизма, тогда может и Дрим поставлю, или другой, более вменяемый редактор, который умеет подсказывать

Человек_без_именИ
Ну наконец то я узнал как искать инфу внутри В)
У меня недавно проблема была … найти кое какой кусок кода … и около 100 страниц В) пришлось все заливать в редактор и на каждом делать поиск В)
СПАСИБО!!! В)

Андрей Морковин
Рад, что статья оказалась полезной.

Евгений
Да, давно таким способом пользуюсь, но только в Hotepad++. А вот кто знает в какой проге можно сразу несколько строк кода на несколько строк менять?

Павел
«А вот кто знает в какой проге можно сразу несколько строк кода на несколько строк менять?»
RJ TextEd

Пётр
A почему нельзя воспользоватся, скажем, Notepad++? Отличный блокнот и FTP и поиск по тексту присутствует?

 

⇓ 

Поделись ссылкой на Seoded.ru с друзьями, знакомыми и собеседниками в соцсетях и на форумах! А сам сайт добавь в закладки! Так победим.

Поделиться ссылкой на эту страницу в:

 

Полезные ссылки:

Проверка текста на уникальность и ошибки в словах Тире или двоеточие? Как узнать когда и что ставить?

 


основан в 2008 г. © Все права на материалы сайта Seoded.ru принадлежат Алексею Вострову.
Копирование (полное или частичное) любых материалов сайта возможно только с разрешения автора и при указании ссылки на источник.
Ослушавшихся находит и забирает Бабайка!