32d/wordpress-project

一款由John P Bloch的WordPress骨架启发的、一键式安装的Composer驱动的WordPress包

1.1.2 2024-08-08 13:38 UTC

This package is auto-updated.

Last update: 2024-09-08 13:52:23 UTC


README

这是一个主要由Composer处理的WordPress项目。

安装

先决条件

  • PHP >= 8.1
  • Composer

Composer

要在本地环境中安装此项目,请确保您的计算机上已安装Composer,并在终端中从项目根目录运行:

composer install

该命令本身应该可以处理项目运行所需的大部分内容。

数据库

  • 从其他工作环境获取此项目的数据库备份
  • 在您的本地环境中创建一个新的数据库
  • 导入备份
  • 替换URL,尤其是在wp_options表中,以确保它们与您的本地环境URL相匹配
  • 复制.env.example文件以创建一个.env文件
  • 编辑新创建的.env文件,将默认值替换为正确的值

本地Web服务器

无论您使用的是WAMP、MAMP、LAMP还是自定义配置,您可能需要对其进行配置,以便访问此项目。

如果您只想将所有项目作为子文件夹,并且URL看起来像localhost/project1/,那么您可能根本不需要做任何事情!只需知道,此项目的URL可能包含额外的"wp/",例如localhost/project1/wp/

如果您愿意为每个项目配置新的虚拟主机,那么您有两个选择

  1. 创建指向"public"文件夹的经典Wordpress虚拟主机配置。您的最终URL将包含"/wp",这是正常的
  2. 如果您不希望在URL中包含"/wp",则必须相应地配置您的虚拟主机,这可能会非常复杂,具体取决于您的知识水平。以下是一个适用于此架构的示例nginx配置
server {
    listen       80;
    server_name  project1.local;

    return 302   https://project1.local$request_uri;
}

server {
    listen       443 ssl http2;
    server_name  project1.local;
    root         /home/user/projects/project1/public;
    index        index.php;

    include snippets/self-signed.conf;
    include snippets/ssl-params.conf;

    client_max_body_size 100M;

    location = /favicon.ico {
        log_not_found off;
        access_log off;
    }

    location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
    }

    location ~ /\. {
        deny all;
    }

    location ~* /(?:uploads|files)/.*\.php$ {
        deny all;
    }

    location /content/ {
        root /home/user/projects/project1/public;
    }

    location /wp-content/ {
        alias /home/user/projects/project1/public/content/;
    }

    location /wp-admin/ {
        root /home/user/projects/project1/public/wp;
    }

    location /wp-includes/ {
        root /home/user/projects/project1/public/wp;
    }

    location / {
        index index.php;
        try_files $uri $uri/ /index.php?$args;
    }

    location ~ \.php$ {
        fastcgi_pass    php81;
        fastcgi_index   index.php;
        fastcgi_param   SCRIPT_FILENAME  $document_root/wp$fastcgi_script_name;
        include         fastcgi_params;
        fastcgi_intercept_errors on;
    }
}

图片和其他内容

如果您希望在本地版本的项目中显示漂亮的媒体内容,那么请自由地打开Filezilla或等效软件,并将"uploads"文件夹下载到此项目的"public/content"文件夹。该文件夹已git忽略。