---
document_type: "installation_guide"
service: "WORDPRESS"
title: "WordPress 安裝指南 (Portal)"
date: "2026-03-22"
version: "V1.0"
status: "active"
owner: "Warren"
created_by: "Warren"
tags:
  - "wordpress"
  - "portal"
  - "cms"
  - "php"
ai_query_hints:
  - "如何安裝 WordPress Portal？"
  - "WordPress 與 Momentry 整合方式為何？"
  - "如何配置 WordPress 外掛？"
---

# WordPress 安裝指南 (Portal)

| 項目 | 內容 |
|------|------|
| 建立者 | Warren |
| 建立時間 | 2026-03-22 |
| 文件版本 | V1.0 |

---

## 版本歷史

| 版本 | 日期 | 目的 | 操作人 | 工具/模型 |
|------|------|------|--------|-----------|
| V1.0 | 2026-03-22 | 創建文件 | Warren | OpenCode / big-pickle |

---

## 1. 概述

本文檔說明 Momentry Portal 的 WordPress 安裝配置，作為系統入口整合 n8n 自動化與 sftpgo 檔案服務。

---

## 2. 當前狀態

| 項目 | 狀態 |
|------|------|
| WordPress 版本 | 6.x |
| URL | https://wp.momentry.ddns.net |
| 安裝路徑 | `/Users/accusys/wordpress/web` |
| 資料庫 | wordpress (MariaDB) |
| 資料庫用戶 | wp_user |

---

## 3. 目錄結構

```
/Users/accusys/wordpress/
├── web/                          # WordPress 主目錄
│   ├── wp-admin/               # WordPress 管理面板
│   ├── wp-content/             # 內容目錄
│   │   ├── ai1wm-backups/     # 備份檔案 (*.wpress)
│   │   ├── languages/         # 語言檔案
│   │   ├── plugins/           # 插件目錄
│   │   ├── themes/            # 主題目錄
│   │   ├── uploads/           # 上傳檔案
│   │   └── cache/             # 快取目錄
│   ├── wp-includes/            # WordPress 核心
│   └── wp-config.php           # 配置文件
├── docker-compose.yml           # Docker 配置
└── wordpress_backup.sql         # 資料庫備份
```

### 空間使用

| 目錄 | 大小 | 說明 |
|------|------|------|
| `ai1wm-backups/` | ~250MB | 完整備份 (保留 2 個) |
| `plugins/` | 80MB | 插件 |
| `themes/` | 14MB | 主題 |
| `uploads/` | 12MB | 上傳檔案 |

---

## 4. 程式碼位置

自訂程式碼存放位置：

| 類型 | 路徑 |
|------|------|
| 主題 | `/Users/accusys/wordpress/web/wp-content/themes/` |
| 插件 | `/Users/accusys/wordpress/web/wp-content/plugins/` |
| 必須插件 | `/Users/accusys/wordpress/web/wp-content/mu-plugins/` |

---

## 5. 插件清單

| 插件 | 用途 | 說明 |
|------|------|------|
| elementor | 頁面建構 | 視覺化頁面編輯器 |
| all-in-one-wp-migration | 網站遷移/備份 | 完整網站備份工具 |
| akismet | 垃圾留言過濾 | 保護留言區域 |
| code-snippets | 自訂程式碼 | 無需修改主題即可添加 PHP |

### Elementor 版本
- 版本: 最新穩定版
- 用途: 頁面建構（開發階段）

### 未來計畫
- Phase 2: OpenCode 重構
- 目標: 交付無 Elementor 依賴版本

---

## 6. 主題清單

| 主題 | 說明 |
|------|------|
| twentytwentyfive | 目前使用主題 |
| twentytwentyfour | 備用 |
| twentytwentythree | 備用 |

---

## 7. 整合計畫

### 7.1 n8n 整合

n8n 作為自動化引擎，WordPress 頁面透過 REST API 或 Webhook 與 n8n 通訊。

| 整合方式 | 說明 |
|----------|------|
| REST API | WordPress 呼叫 n8n API |
| Webhook | n8n 觸發 WordPress 動作 |

### 7.2 sftpgo 整合

sftpgo 作為檔案服務，WordPress 頁面提供檔案上傳/下載功能。

| 整合方式 | 說明 |
|----------|------|
| WebDAV | 透過 WebDAV API 操作檔案 |
| REST API | 透過 sftpgo API 操作檔案 |

---

## 8. 管理命令

### 8.1 清理 ai1wm 備份

```bash
# 查看現有備份
ls -lt /Users/accusys/wordpress/web/wp-content/ai1wm-backups/*.wpress

# 保留最近 2 個，刪除舊的
ls -t /Users/accusys/wordpress/web/wp-content/ai1wm-backups/*.wpress | tail -n +3 | xargs rm

# 驗證結果
du -sh /Users/accusys/wordpress/web/wp-content/ai1wm-backups/
```

### 8.2 清理 WordPress 快取

```bash
# 刪除 Object Cache
wp cache flush

# 刪除 Elementor 快取
wp elementor flush_css

# 刪除全部快取
wp cache flush && wp elementor flush_css
```

### 8.3 資料庫操作

```bash
# 匯出資料庫
mysqldump -u wp_user -p wordpress > wordpress_backup.sql

# 匯入資料庫
mysql -u wp_user -p wordpress < wordpress_backup.sql
```

### 8.4 權限檢查

```bash
# 檢查目錄權限
ls -la /Users/accusys/wordpress/web/wp-content/

# 確認 wp-content 可寫入
chown -R _www:_www /Users/accusys/wordpress/web/wp-content/
chmod -R 755 /Users/accusys/wordpress/web/wp-content/
```

---

## 9. 故障排除

### 9.1 常見問題

| 問題 | 解決方案 |
|------|----------|
| 頁面載入緩慢 | 清理 Elementor/Object Cache |
| 上傳檔案失敗 | 檢查 wp-content/uploads 權限 |
| 502/504 錯誤 | 重啟 PHP-FPM |
| 資料庫連線失敗 | 檢查 wp-config.php 設定 |

### 9.2 診斷命令

```bash
# 檢查 PHP-FPM 狀態
lsof -i :9000

# 檢查 MySQL/MariaDB 狀態
lsof -i :3306

# 檢查 Apache/Nginx 狀態
lsof -i :80

# 查看 WordPress 錯誤日誌
tail -100 /Users/accusys/momentry/log/php-fpm.log
```

---

## 10. 開發協作

### 10.1 與 marcom 團隊協作

| 角色 | 負責 |
|------|------|
| marcom 團隊 | Figma 設計 / Elementor 建構 |
| OpenCode | 程式碼實作 / 重構 |

### 10.2 開發流程

```
Phase 1: marcom 建構 (現在)
└── Elementor 頁面建構

Phase 2: 交付審視 (TBD)
└── 功能確認 / 重構評估

Phase 3: OpenCode 重構 (討論後)
└── 純程式碼實作
└── 交付客戶 (無 Elementor 依賴)
```

---

## 11. PHP LSP 開發環境

### 11.1 軟體需求

| 軟體 | 版本 | 安裝方式 |
|------|------|----------|
| PHP | 8.0+ | 已安裝 (8.5.2) |
| Composer | 2.0+ | `brew install composer` |
| phpactor | Latest | PHAR 安裝 |

### 11.2 安裝步驟

#### 1. 安裝 Composer

```bash
brew install composer
```

#### 2. 安裝 phpactor

```bash
curl -sSL https://github.com/phpactor/phpactor/releases/latest/download/phpactor.phar -o ~/bin/phpactor
chmod +x ~/bin/phpactor
export PATH="$HOME/bin:$PATH"
```

#### 3. 安裝 WordPress Stubs

```bash
cd /Users/accusys/wordpress/web
composer require --dev php-stubs/wordpress-stubs
```

#### 4. 設定 phpactor

```bash
# 設定檔位置
mkdir -p ~/.config/phpactor

# 設定內容
cat > ~/.config/phpactor/phpactor.json << 'EOF'
{
    "core.min_memory_limit": 1610612736,
    "worse_reflection.additive_stubs": [
        "/Users/accusys/wordpress/web/vendor/php-stubs/wordpress-stubs/wordpress-stubs.php"
    ]
}
EOF
```

#### 5. 建立索引

```bash
cd /Users/accusys/wordpress/web
~/bin/phpactor index:build --reset
```

### 11.3 OpenCode 使用方式

```bash
# 確認安裝
~/bin/phpactor --version

# 查詢類別
~/bin/phpactor class:search "WP_User"

# 查看類別資訊
~/bin/phpactor index:query WP_User

# 導航到定義
~/bin/phpactor navigate /path/to/file.php

# 查詢參照
~/bin/phpactor references /path/to/file.php
```

### 11.4 常用指令

| 指令 | 用途 |
|------|------|
| `phpactor class:search` | 搜尋類別 |
| `phpactor index:query` | 查詢索引 |
| `phpactor index:build` | 建立索引 |
| `phpactor index:clean` | 清除索引 |
| `phpactor config:dump` | 顯示設定 |

---

## 12. 檔案位置

| 類型 | 路徑 | 說明 |
|------|------|------|
| WordPress 主目錄 | `/Users/accusys/wordpress/web` | 網站根目錄 |
| 備份目錄 | `/Users/accusys/momentry/backup/wordpress/` | 每日備份 |
| 日誌目錄 | `/Users/accusys/momentry/log/` | PHP/Apache 日誌 |
| phpactor | `~/bin/phpactor` | PHP LSP 主程式 |
| phpactor 設定 | `~/.config/phpactor/phpactor.json` | LSP 設定檔 |
| WordPress Stubs | `/Users/accusys/wordpress/web/vendor/php-stubs/` | WordPress 函數定義 |
