Пропагандатор

Этот сценарий в PHP 5 позволяет скопировать тег с атрибутом ID со страницы HTML на все другие HTML-страницы в том же каталоге и его подкаталогах.

Он может использоваться, в частности, для вставки кода Analytics на все страницы сайта, построенного из локальных файлов.

Если сайт управляется CMS, то этот скрипт бесполезен, если в шаблон помещается код для распространения, например, в footer или боковую панель. Если ты хочешь поместить его в тело статей, то для его распространения должны использоваться SQL-запросы, в зависимости от таблиц, специфичных для CMS, это выходит за рамки его области действия.

Ограничение

Из-за ошибки в PHP 5.2.8 копирование отключается на страницах, содержащих PHP-код.
Когда PHP-скрипт содержится на веб-странице, и этот скрипт содержит сравнение с кодом «>» (больше), то функция loadHTMLile (используется Propagator) заменяет конечный код сценария «?>» строкой «? & gt;».

Очевидно, что это баг в PHP и для его исправления придется ждать более позднюю версию.
В это время можно будет использовать параметр -p для поддержки файлов, содержащих PHP-код.

Для тестирования функции можно использовать сценарий php-test.php в архиве.

Использование сценария

Работает в командной строке, на Windows, Linux и других системах, поддерживающих PHP. Необходимо установить PHP 5.

  1. У вас должна быть локальная копия сайта. Сценарий не работает удаленно.
  2. Создать резервную копию этой копии.
  3. Вставить код для распространения в исходный файл, как правило, index.html.
  4. Дать идентификатор тегу, содержащему этот код.
  5. Выберите расположение для копирования кода на страницы (см. ниже).
  6. Запустить сценарий.
  7. Проверка измененных файлов на образцах страниц.
  8. При неправильном формировании кода страницы функции PHP DOM работать не будут, код придется копировать вручную.

Сценарий можно использовать на одном сайте бесконечно много раз. Код добавляется на страницы в первый раз, а затем будет обновляться в следующие раз при изменении исходной страницы.

Вставленные коды также можно стереть с помощью соответствующей команды.

Заказы

Общий синтаксис команды выглядит следующим образом.

php propag.php [option] ID fichiersource

ID - имя идентификатора тега, содержащего код для копирования.

Пример:

<div id="demo">
<script ....
</script>
</div>
php propag.php demo fichiersource

файл-источник - это путь и имя файла, содержащего копируемый код. Обычно index.html.

Вы можете просто ввести php propag.php, чтобы показать версию и параметры.

Опции

Можно объединить варианты после знака - например: -hbi

-h копировать код в <head> часть страниц. По умолчанию он копируется в <body>, в конце.

-b копировать код в начало содержимого тега head или body. По умолчанию он добавляется в конец.

-i ограничиваться только каталогом, ничего не изменять в подкаталогах.

-d очистить код на всех страницах, куда он был вставлен.

-v отображает подробности операций.

-q не показывать ничего (кроме сообщений об ошибках).

-0.. 9 определяет минимальный размер учитываемого файла. Цифра умножается на 1024. По умолчанию это 1, поэтому файлы размером менее 1024 байт игнорируются .

-test только для того, чтобы увидеть, что происходит, используется в сочетании с -v в форме -tv. Файлы не будут изменены.

Параметр -p не должен использоваться с PHP 5.2.8 и всеми версиями, которые имеют ошибку метода loadHTMLile, описанного выше.

Загрузка

Сценарий загружается в архив в формате ZIP.

Пропагандатор загрузки

Требуется PHP 5.
Лицензирование GPL 3.0 .

Версии