[WordPress] 外掛分享: Badwolf Web IRC Client

首頁外掛目錄 › Badwolf Web IRC Client
全新外掛
安裝啟用
尚無評分
85 天前
最後更新
問題解決
WordPress 5.0+ PHP 7.4+ v5.2 上架:2025-10-05

內容簡介

<p><strong>Badwolf Web IRC Client 是專為 WordPress 網站設計的現代、基於 WebSocket 的 IRC 客戶端。這個外掛可透過簡單的短碼,直接將即時IRC聊天功能嵌入 WordPress 頁面和文章中。</strong></p>

<h4>主要特色</h4>
<ul>
<li>透過 WebSocket 連接進行實時消息傳遞</li>
<li>支援私人消息並帶有通知徽章</li>
<li>桌面通知新消息</li>
<li>多主題支持(明亮/暗色主題)</li>
<li>使用者在線指示器和線上使用者清單</li>
<li>頻道和私人消息管理</li>
<li>適用於移動設備和桌面的響應式設計</li>
<li>安全的 WebSocket 連接(支援 WSS)</li>
</ul>

<h4>技術需求</h4>
<ul>
<li>WebSocket 啟用的 IRC 伺服器(建議使用 UnrealIRCd)</li>
<li>WordPress 5.0 或更高版本</li>
<li>PHP 7.4 或更高版本</li>
<li>支援 WebSocket 的現代網頁瀏覽器</li>
</ul>

外掛標籤

開發者團隊

⬇ 下載最新版 (v5.2) 或搜尋安裝

① 下載 ZIP → 後台「外掛 › 安裝外掛 › 上傳外掛」
② 後台搜尋「Badwolf Web IRC Client」→ 直接安裝(推薦)
📦 歷史版本下載

原文外掛簡介

A modern, feature-rich WebSocket IRC client for WordPress. Connect your website visitors to your IRC server with real-time chat, private messaging, desktop notifications, and a beautiful tabbed interface.
Version 5.2.0 – What’s New
🔧 WordPress 6.9 Compatibility

FIXED: Plugin now works perfectly with WordPress 6.9
FIXED: Script loading issues with block themes and Full Site Editing (FSE)
FIXED: Configuration passing to JavaScript

🔌 WebSocket Improvements

FIXED: Connection stability issues
FIXED: Binary WebSocket data handling
ADDED: IRC subprotocol support for UnrealIRCd

⚙️ User Experience

ADDED: Settings link in plugin list for easy access
IMPROVED: Error handling and logging
IMPROVED: Connection reliability

Features

✅ Real-time IRC chat via secure WebSocket (wss://)
✅ Private messaging between users
✅ Desktop notifications for mentions and PMs
✅ Multiple channel support with tabbed interface
✅ User list with right-click context menus
✅ Command history (use arrow keys)
✅ Auto-reconnection with smart retry logic
✅ Customizable themes (light/dark)
✅ Mobile-responsive design
✅ IRC commands support (/nick, /join, /part, /msg, /me)
✅ Tab completion for nicknames
✅ Unread message badges
✅ Message history (500 messages per channel)

Requirements

WordPress: 5.0 or higher (tested up to 6.9)
PHP: 7.4 or higher
IRC Server: UnrealIRCd 6.x with WebSocket support (recommended)
SSL Certificate: Valid SSL/TLS certificate for secure WebSocket (wss://)

Configuration
WordPress Settings
Navigate to Settings → Badwolf Web IRC Client and configure:

WebSocket URL: Your IRC server WebSocket URL (e.g., wss://irc.example.com:7443)
Default Channel: IRC channel to join (e.g., #general)
Nickname Prefix: Prefix for auto-generated nicknames (e.g., guest)
Real Name: Default real name for users
Theme: Light or Dark theme
Auto Connect: Automatically connect when page loads

UnrealIRCd Server Configuration
Your UnrealIRCd server must have WebSocket support enabled:
`conf

Load WebSocket module
loadmodule “websocket”;
Configure WebSocket listener
listen {
ip *;
port 7443;
options {
tls;
websocket;
}
tls-options {
certificate “/path/to/fullchain.pem”;
key “/path/to/privkey.pem”;
options {
no-client-certificate;
}
}
}
`
SSL Certificate Setup (Let’s Encrypt)
`bash

Install certbot if not already installed
sudo apt-get install certbot
Get certificate for your IRC domain
sudo certbot certonly –standalone -d irc.yourdomain.com
Copy certificates to UnrealIRCd
sudo cp /etc/letsencrypt/live/irc.yourdomain.com/fullchain.pem /path/to/unrealircd/conf/tls/
sudo cp /etc/letsencrypt/live/irc.yourdomain.com/privkey.pem /path/to/unrealircd/conf/tls/
Set correct permissions
sudo chown unrealircd:unrealircd /path/to/unrealircd/conf/tls/*.pem
sudo chmod 600 /path/to/unrealircd/conf/tls/privkey.pem
sudo chmod 644 /path/to/unrealircd/conf/tls/fullchain.pem
Restart UnrealIRCd
cd /path/to/unrealircd
./unrealircd restart
`
Auto-Renewal Setup
Create a renewal hook to automatically copy certificates:
`bash

Create renewal hook script
sudo nano /etc/letsencrypt/renewal-hooks/deploy/copy-to-unrealircd.sh
`
Add this content:
`bash

!/bin/bash
cp /etc/letsencrypt/live/irc.yourdomain.com/fullchain.pem /path/to/unrealircd/conf/tls/
cp /etc/letsencrypt/live/irc.yourdomain.com/privkey.pem /path/to/unrealircd/conf/tls/
chown unrealircd:unrealircd /path/to/unrealircd/conf/tls/*.pem
chmod 600 /path/to/unrealircd/conf/tls/privkey.pem
chmod 644 /path/to/unrealircd/conf/tls/fullchain.pem
/path/to/unrealircd/unrealircd rehash
`
Make it executable:
`bash

sudo chmod +x /etc/letsencrypt/renewal-hooks/deploy/copy-to-unrealircd.sh
`
Usage
Basic Shortcode
`

[web_irc_client]
`
Shortcode with Attributes
`

[web_irc_client theme=”dark” width=”100%” height=”600px”]
`
Available attributes:

theme – Override theme (light or dark)
width – Set custom width (default: 100%)
height – Set custom height (default: 70vh)

IRC Commands
Users can use standard IRC commands:

/nick newname – Change nickname
/join #channel – Join a channel
/part – Leave current channel
/msg username message – Send private message
/me action – Send action message
/help – Show available commands

Troubleshooting
Connection Issues
Problem: “Reconnecting…” message appears
Solutions:

Verify UnrealIRCd is running: ps aux | grep unrealircd
Check port is listening: sudo netstat -tlnp | grep 7443
Verify SSL certificate is valid and not expired
Check UnrealIRCd logs: tail -f /path/to/unrealircd/logs/ircd.log
Test WebSocket connection: https://www.piesocket.com/websocket-tester

SSL Certificate Errors
Problem: Certificate expired or invalid
Solution:
`bash

Check certificate expiry
sudo certbot certificates
Renew if needed
sudo certbot renew –force-renewal
Copy to UnrealIRCd and restart
sudo cp /etc/letsencrypt/live/irc.yourdomain.com/*.pem /path/to/unrealircd/conf/tls/
./unrealircd restart
`
Plugin Not Loading
Problem: IRC client doesn’t appear on page
Solutions:

Verify shortcode is correct: [web_irc_client]
Clear WordPress cache
Clear browser cache (Ctrl+Shift+R)
Check browser console for JavaScript errors (F12)
Verify WebSocket URL is configured in plugin settings

WordPress 6.9 Issues
Problem: Plugin stopped working after WordPress 6.9 update
Solution: Update to version 5.2.0 which includes WordPress 6.9 compatibility fixes.
Support

GitHub: https://github.com/badwolf1972/web-irc-client
Issues: https://github.com/badwolf1972/web-irc-client/issues
WordPress Support: https://wordpress.org/support/plugin/badwolf-web-irc-client/

Credits

Author: Martin Cooper (badwolf72)
Website: https://www.oo3dmodels.com
License: GPL v2 or later

延伸相關外掛

文章
Filter
Apply Filters
Mastodon