Создание статического веб-сайта на основе веб-сайта WordPress?


Я беру на себя проект, в котором мне нужно создать статический веб-сайт (из-за ограничений хостинга).

Я подумал о том, чтобы попытаться сделать это, создав сайт WP на своем компьютере, затем создав карту сайта, а затем скопировав этот сайт и, наконец, загрузив файлы на хост.

Есть какие-нибудь лучшие предложения о том, как это сделать? (или любая веская причина, по которой я даже не должен пытаться)

Author: MikeSchinkel, 2010-08-23

3 answers

Я делаю это прямо сейчас (все еще в процессе). Лучшей настройкой, по-видимому, является:

  1. Добавьте расширение .html в сообщения - легко, просто используйте пользовательский шаблон сообщения

  2. Добавьте расширение .html на страницы - для этого нужен плагин, если вы используете страницы

  3. Отключить каналы (в function.php удалив заголовки для него)

  4. Используйте wget из командной строки:
    wget -x -nH -P scraped -np -k -R php -E -X wp-content,wp-includes -m http://address/siteroot/

    Это засасывает ваш сайт, изменяет URL-адреса каталогов в стиле WordPress к URL-адресам .html, изменяет внутренние ссылки на относительные и т. Д. URL-адреса каналов на всех уровнях (корневой, категория, статья и т. Д.) Все портят, Поэтому их необходимо удалить.

    Очевидно, предполагается, что сайт полностью доступен из корневого каталога. Если это не так, используйте плагин sitemap (как вы сами упомянули) и очистите его оттуда.

  5. Запустите какой-нибудь процессор, чтобы удалить http://address/ или изменить его на абсолютный корень вашего статического сайта. Если вам нужно переместить каталоги что касается (например, мультимедиа/загрузки), это немного сложнее.

Это должно обеспечить вам примерно 80% пути.

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

 5
Author: Alexandre Rafalovitch, 2015-11-06 03:27:39

Из вашего комментария я полагаю, что есть два лучших варианта, которые позволят сократить время разработки и контролировать ваше здравомыслие.

1) Если у вас есть PHP с PDO, то вы могли бы посмотреть на использование этого плагина http://wordpress.org/extend/plugins/pdo-for-wordpress /, что позволит вам использовать sqlite в качестве базы данных. Примечание: Wordpress был разработан вокруг и для mysql, ваши результаты могут отличаться при использовании другого бэкэнда sql.

2) Если у вас есть только несколько базовых модулей php. Я бы просто создайте сайт с группой включений. Туда, где вы создаете серию "шаблонов" с использованием php, входит. У меня был бы php-файл для верхнего и нижнего колонтитулов, домашней страницы и внутренней страницы. Если у вас несколько внутренних страниц. Я бы выделил любые похожие макеты на отдельную страницу и включил их для каждого типа внутренней страницы. Затем поместите весь свой контент на внутренние страницы. Затем с помощью вашего index.php создайте некоторый базовый код, который загружает нужные вам страницы на основе входящего URL-адреса. Вы можете использовать .htaccess с mod_rewrite (при условии, что apache) Чтобы преобразовать красивые URL-адреса во что-то вроде /about-us в /index.php?шаблон=внутренний&страница=о

 2
Author: Ryan Gibbons, 2010-08-23 22:48:54

Привет@Тал Галили:

Если предложения @Insanity5902 неприменимы, вы можете использовать Копировальный аппарат веб-сайта HTTrack чтобы загрузить копию сайта, а затем загрузить загруженную копию сайта на свой сервер.

 2
Author: MikeSchinkel, 2010-08-23 23:01:46