[WordPress] 外掛分享: LobbyChat

首頁外掛目錄 › LobbyChat
全新外掛
安裝啟用
尚無評分
5 天前
最後更新
問題解決
WordPress 5.8+ PHP 7.2+ v1.0.7 上架:2026-05-22

外掛標籤

開發者團隊

⬇ 下載最新版 (v1.0.7) 或搜尋安裝

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

原文外掛簡介

LobbyChat is a lightweight live-chat shoutbox you can drop into any WordPress page or sidebar with a single shortcode. Built for communities — fan sites, forums, fandoms, classrooms, internal teams — where you want a casual, always-on group chat without bolting on Slack or Discord.
What you get

Live chat feed with auto-refresh (configurable polling interval — no WebSocket server required)
Guest posting — visitors can chat with just a display name, no signup wall
Emoji reactions on every message — 👍 ❤️ 😂 🔥 🎉
Link previews for YouTube and any URL with Open Graph tags
@mention highlighting — @username gets visually picked out
Pinned messages — moderators can pin one important message above the feed
Online presence — live count of members, guests, and search-engine bots in the room
Moderator role — add a “LobbyChat Moderator” role to any user for pin/delete powers
Reporting + auto-hide — 5 reports on a message and it’s hidden automatically
Word blocklist for basic profanity filtering
Rate limiting built in — separate cooldowns for guests vs members
Fullscreen mode + collapse toggle
Sound notification for new messages (toggleable per-visitor)
Mobile responsive

Optional: AI Chat Companion
LobbyChat ships with an optional AI bot you can drop into your chat. The bot uses your own API keys — you bring your own Google Gemini key (the free tier works) or OpenAI key. The plugin does not route requests through any third-party server.

Bring-your-own-key — Gemini (free tier) or OpenAI (paid)
Configurable persona — name, system prompt, custom personality
Smart triggers — replies to @mentions always; questions usually; random messages occasionally (all configurable)
Hard rate limits — daily and hourly caps protect against runaway API costs
Active-hours window — bot only chats during the hours you specify
One-click test in the admin to verify the bot can post

Privacy & data
LobbyChat does not call any third-party server by default. The only network calls are:

Fetching link previews when a user shares a URL (request goes from your server to that URL)
Calling Google Gemini or OpenAI only if you explicitly enable the AI bot and provide an API key

No telemetry, no analytics, no “phone home.” All data lives in your own wp_lobbychat* tables.
Try it live
See LobbyChat running in production at bejaunty.com/plugins/lobbychat.
Roadmap
LobbyChat is the free, standalone version. Premium add-ons with gaming-community features — looking-for-group buttons, platform tags, profile-card integration, and richer moderation tools — are in development. Updates and announcements at bejaunty.com.
Support development
LobbyChat is free and developed in spare time. If it helps your community, you can support development at wise.com/pay/me/asadk372. Every bit is appreciated. ♥
Usage
After activating, drop this shortcode into any page, post, or text widget:
[lobbychat]

Then visit Settings → LobbyChat to configure rate limits, blocklist, and other options. For the AI bot, see Settings → LobbyChat AI Bot.
Developer hooks
LobbyChat exposes several filters and actions for theme/plugin developers:

lobbychat_after_send — action, fires after a message is saved. do_action('lobbychat_after_send', $user_id, $message_id, $row) — the third arg is the database row object.
lobbychat_profile_url — filter, override the URL linked from a username (default: WP author archive)
lobbychat_allowed_reactions — filter, override the array of allowed reaction emoji
lobbychat_report_threshold — filter, change the auto-hide report threshold (default: 5)

External services
This plugin does not connect to any external service by default. Two optional features may, only when explicitly enabled by the site administrator, contact third-party services:
1. Link previews
When the link-sharing feature is enabled (Settings → LobbyChat → “Allow link sharing”, which is on by default), and a logged-in user shares a URL in chat, the plugin’s server fetches that URL once to extract Open Graph / Twitter / metadata for a preview card.</p> <p>What is sent: The HTTP request from your server to the URL the user pasted. The request user-agent identifies as LobbyChatBot/1.0 and includes a link back to your site.<br /> When: Only at the moment a user posts a message containing a URL.<br /> What is received and stored: Title, description, and image URL extracted from the page’s metadata. Stored in the chat message row in your database.<br /> Special handling for YouTube URLs: YouTube URLs are first sent to YouTube’s public oEmbed endpoint (https://www.youtube.com/oembed) to retrieve title and author info. YouTube’s Terms of Service and Privacy Policy apply.</p> <p>This feature can be fully disabled by un-checking “Allow link sharing” in plugin settings.<br /> 2. Optional AI chat companion<br /> When the AI bot is explicitly enabled by the administrator (Settings → LobbyChat AI Bot → “Enable bot”, which is off by default) and the administrator has provided their own API key for one or both of the providers below, chat messages are sent to that provider for the bot to generate replies.<br /> Google Gemini API (https://generativelanguage.googleapis.com/)<br /> * What it is: Google’s generative AI service, used here to produce conversational chat replies.<br /> * What is sent: Up to 6 most recent chat messages (sender display name + message text), the bot’s system prompt, and the administrator’s Gemini API key.<br /> * When: Only when the administrator has enabled the bot AND a chat message satisfies the bot’s reply-trigger rules (mention, question, or random chance — all configurable).<br /> * Terms and privacy: Google APIs Terms of Service, Gemini API Additional Terms, Google Privacy Policy.<br /> OpenAI API (https://api.openai.com/)<br /> * What it is: OpenAI’s chat completions API, used here as a fallback when Gemini fails or as the primary if only an OpenAI key is configured.<br /> * What is sent: Same as Gemini above (recent messages + system prompt + administrator’s OpenAI API key).<br /> * When: Same conditions as Gemini above.<br /> * Terms and privacy: OpenAI Terms of Use, OpenAI API Data Usage Policies, OpenAI Privacy Policy.<br /> The AI bot is disabled by default and will not contact any external service unless the administrator explicitly enables it and provides an API key. </p> <div class="mxp-ad" style="text-align:center;margin:1.5em 0;"><ins class="adsbygoogle" style="display:block;text-align:center" data-ad-layout="in-article" data-ad-format="fluid" data-ad-slot="3790584390"></ins><script>(adsbygoogle = window.adsbygoogle || []).push({});</script></div> <h2><span id="i-4">延伸相關外掛</span></h2> <div class="mxp-p-related"><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/akismet/"><img decoding="async" src="https://ps.w.org/akismet/assets/icon-256x256.png?rev=2818463" alt="Akismet Anti-spam: Spam Protection" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>Akismet Anti-spam: Spam Protection</strong><span class="mxp-p-related-desc">Akismet會檢查您的評論和聯繫表單提交,將它們與全球垃圾郵件...</span></span></a><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/antispam-bee/"><img decoding="async" src="https://ps.w.org/antispam-bee/assets/icon-256x256.png?rev=2898402" alt="Antispam Bee" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>Antispam Bee</strong><span class="mxp-p-related-desc">Antispam Bee 是一款有效阻擋 WordPress 網站評論垃圾訊息的...</span></span></a><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/gravatar-enhanced/"><img decoding="async" src="https://ps.w.org/gravatar-enhanced/assets/icon-256x256.png?rev=3133133" alt="Gravatar Enhanced – Avatars, Profiles, and Privacy" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>Gravatar Enhanced – Avatars, Profiles, and Privacy</strong><span class="mxp-p-related-desc">Gravatar Enhanced 是一款提升 WordPress 網站的外掛,簡化數...</span></span></a><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/disable-comments-rb/"><img decoding="async" src="https://ps.w.org/disable-comments-rb/assets/icon-256x256.png?rev=1911683" alt="Disable Comments" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>Disable Comments</strong><span class="mxp-p-related-desc">Disable Comments Plugin 是一個供管理員完全關閉網站評論功...</span></span></a><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/wpdiscuz/"><img decoding="async" src="https://ps.w.org/wpdiscuz/assets/icon-256x256.png?rev=1076265" alt="Comments – wpDiscuz" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>Comments – wpDiscuz</strong><span class="mxp-p-related-desc">wpDiscuz 是一款強大的 AJAX 實時評論系統,旨在提升 WordPre...</span></span></a><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/disqus-comment-system/"><img decoding="async" src="https://ps.w.org/disqus-comment-system/assets/icon.svg?rev=1636350" alt="Disqus Comment System" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>Disqus Comment System</strong><span class="mxp-p-related-desc">Disqus 是網路上最受歡迎的評論系統,被數百萬的出版商信任,...</span></span></a><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/throws-spam-away/"><img decoding="async" src="https://s.w.org/plugins/geopattern-icon/throws-spam-away_d9ddee.svg" alt="Throws SPAM Away" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>Throws SPAM Away</strong><span class="mxp-p-related-desc">這個外掛的開發旨在打擊海外的評論垃圾郵件,目前以下的篩選...</span></span></a><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/subscribe-to-comments/"><img decoding="async" src="https://s.w.org/plugins/geopattern-icon/subscribe-to-comments.svg" alt="Subscribe to Comments" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>Subscribe to Comments</strong><span class="mxp-p-related-desc">Subscribe to Comments是一個強大的 WordPress 外掛,讓留言...</span></span></a><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/cookies-for-comments/"><img decoding="async" src="https://s.w.org/plugins/geopattern-icon/cookies-for-comments.svg" alt="Cookies for Comments" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>Cookies for Comments</strong><span class="mxp-p-related-desc">這個外掛將會在你的部落格 HTML 的原始碼中新增一個樣式表或...</span></span></a><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/wpsimpletools-disable-comments/"><img decoding="async" src="https://ps.w.org/wpsimpletools-disable-comments/assets/icon-256x256.png?rev=2213477" alt="Disable Comments" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>Disable Comments</strong><span class="mxp-p-related-desc">此外掛完全禁用網站前端和後端的評論功能: * 隱藏現有評論 *...</span></span></a><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/wp-native-php-sessions/"><img decoding="async" src="https://ps.w.org/wp-native-php-sessions/assets/icon-256x256.png?rev=3411177" alt="Native PHP Sessions" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>Native PHP Sessions</strong><span class="mxp-p-related-desc"> WordPress 核心不使用 PHP sessions,但有時您的使用案例、...</span></span></a><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/subscribe-to-comments-reloaded/"><img decoding="async" src="https://ps.w.org/subscribe-to-comments-reloaded/assets/icon-256x256.png?rev=1328553" alt="Subscribe To Comments Reloaded" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>Subscribe To Comments Reloaded</strong><span class="mxp-p-related-desc">Subscribe to Comments Reloaded 是一個功能強大的外掛,讓留...</span></span></a><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/post-plugin-library/"><img decoding="async" src="https://s.w.org/plugins/geopattern-icon/post-plugin-library.svg" alt="Post-Plugin Library" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>Post-Plugin Library</strong><span class="mxp-p-related-desc">Post-Plugin Library 是一個共享代碼庫,並沒有獨立的功能,...</span></span></a><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/one-click-close-comments/"><img decoding="async" src="https://ps.w.org/one-click-close-comments/assets/icon-128x128.png?rev=2055754" alt="One Click Close Comments" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>One Click Close Comments</strong><span class="mxp-p-related-desc">使用者可以從文章管理頁面(‘編輯文章’)及頁面管...</span></span></a><a class="mxp-p-related-item" href="https://www.mxp.tw/plugins/no-page-comment/"><img decoding="async" src="https://ps.w.org/no-page-comment/assets/icon-256x256.png?rev=1021347" alt="No Page Comment" width="48" height="48" loading="lazy"/><span class="mxp-p-related-info"><strong>No Page Comment</strong><span class="mxp-p-related-desc">直到最近,WordPress 提供兩種選擇:你可以默認禁用所有頁面...</span></span></a></div> <p><script>document.addEventListener("DOMContentLoaded",function(){window.onpopstate=function(){location.href="https://www.mxp.tw/plugins/";};history.pushState({},"");});</script></p> <p><ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-slot="9308222110"></ins><script>setMxpAdClient();(adsbygoogle = window.adsbygoogle || []).push({});</script></p> </div><!-- .entry-content --> </article><!-- #post--1 --> </main><!-- #main --> </div><!-- #primary --> </div><!-- #content --> <footer id="colophon" class="site-footer"> <aside class="widget-area" role="complementary" aria-label="頁尾"> <div class="widget-column footer-widget-1"> <section id="text-3" class="widget widget_text"><h2 class="widget-title">微薄主機費來源</h2> <div class="textwidget"><p><script async src="//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script><br /> <ins class="adsbygoogle" style="display:block" data-ad-slot="1291294008" data-ad-format="auto" data-full-width-responsive="true"></ins><br /> <script>setMxpAdClient(); (adsbygoogle = window.adsbygoogle || []).push({}); </script></p> </div> </section><section id="text-2" class="widget widget_text"><h2 class="widget-title">Facebook 專頁</h2> <div class="textwidget"><div class="fb-page" data-href="https://www.facebook.com/a.tech.guy" data-tabs="timeline" data-width="" data-height="70" data-small-header="true" data-adapt-container-width="true" data-hide-cover="true" data-show-facepile="false"><blockquote cite="https://www.facebook.com/a.tech.guy" class="fb-xfbml-parse-ignore"><a rel="nofollow" href="https://www.facebook.com/a.tech.guy">一介資男</a></blockquote></div></div> </section> <section id="recent-posts-4" class="widget widget_recent_entries"> <h2 class="widget-title">近期文章</h2><nav aria-label="近期文章"> <ul> <li> <a href="https://www.mxp.tw/11670/">我找到漏洞,他們找來律師:一場善意揭露卻被法律威脅的真實案例</a> </li> <li> <a href="https://www.mxp.tw/11668/">讀後筆記|Child’s Play:矽谷「高度行動者」與虛無新貴的誕生</a> </li> <li> <a href="https://www.mxp.tw/11666/">AI 自主代理人的失控一擊:從 MJ Rathbun 事件看「配置即人格」的危險</a> </li> <li> <a href="https://www.mxp.tw/11664/">清理 Git 分支的最佳偷懶法:來自 CIA 外洩文件的一行指令</a> </li> <li> <a href="https://www.mxp.tw/11662/">ggml.ai 與 Hugging Face 的正式結盟:Local AI 生態的重要里程碑</a> </li> </ul> </nav></section><section id="categories-2" class="widget widget_categories"><h2 class="widget-title">文章分類</h2><nav aria-label="文章分類"> <ul> <li class="cat-item cat-item-6"><a href="https://www.mxp.tw/category/blog%e5%a4%a7%e5%b0%8f%e4%ba%8b/">Blog大小事</a> (26) </li> <li class="cat-item cat-item-252"><a href="https://www.mxp.tw/category/facebook%e5%90%8c%e6%ad%a5%e5%82%99%e4%bb%bd/">Facebook同步備份</a> (370) </li> <li class="cat-item cat-item-2310"><a href="https://www.mxp.tw/category/hackernews-daily/">Hacker News</a> (499) </li> <li class="cat-item cat-item-12"><a href="https://www.mxp.tw/category/%e6%8a%80%e8%a1%93%e7%9b%b8%e9%97%9c/">技術相關</a> (582) <ul class='children'> <li class="cat-item cat-item-2319"><a href="https://www.mxp.tw/category/%e6%8a%80%e8%a1%93%e7%9b%b8%e9%97%9c/ai-ml/">AI 與機器學習</a> (18) </li> <li class="cat-item cat-item-2321"><a href="https://www.mxp.tw/category/%e6%8a%80%e8%a1%93%e7%9b%b8%e9%97%9c/api-integration/">API 與資料整合</a> (56) </li> <li class="cat-item cat-item-2323"><a href="https://www.mxp.tw/category/%e6%8a%80%e8%a1%93%e7%9b%b8%e9%97%9c/seo-marketing/">SEO 與網站經營</a> (10) </li> <li class="cat-item cat-item-2315"><a href="https://www.mxp.tw/category/%e6%8a%80%e8%a1%93%e7%9b%b8%e9%97%9c/wordpress/">WordPress</a> (296) <ul class='children'> <li class="cat-item cat-item-2324"><a href="https://www.mxp.tw/category/%e6%8a%80%e8%a1%93%e7%9b%b8%e9%97%9c/wordpress/woocommerce/">WooCommerce 開發</a> (108) </li> <li class="cat-item cat-item-2326"><a href="https://www.mxp.tw/category/%e6%8a%80%e8%a1%93%e7%9b%b8%e9%97%9c/wordpress/wordpress-theme/">佈景主題開發</a> (8) </li> <li class="cat-item cat-item-2325"><a href="https://www.mxp.tw/category/%e6%8a%80%e8%a1%93%e7%9b%b8%e9%97%9c/wordpress/wordpress-plugin/">外掛開發</a> (71) </li> </ul> </li> <li class="cat-item cat-item-2317"><a href="https://www.mxp.tw/category/%e6%8a%80%e8%a1%93%e7%9b%b8%e9%97%9c/server-admin/">伺服器管理</a> (121) </li> <li class="cat-item cat-item-2316"><a href="https://www.mxp.tw/category/%e6%8a%80%e8%a1%93%e7%9b%b8%e9%97%9c/programming/">程式開發</a> (149) </li> <li class="cat-item cat-item-2320"><a href="https://www.mxp.tw/category/%e6%8a%80%e8%a1%93%e7%9b%b8%e9%97%9c/database/">資料庫</a> (37) </li> <li class="cat-item cat-item-2318"><a href="https://www.mxp.tw/category/%e6%8a%80%e8%a1%93%e7%9b%b8%e9%97%9c/security/">資訊安全</a> (57) </li> <li class="cat-item cat-item-2322"><a href="https://www.mxp.tw/category/%e6%8a%80%e8%a1%93%e7%9b%b8%e9%97%9c/dev-tools/">開發工具與環境</a> (42) </li> </ul> </li> <li class="cat-item cat-item-19"><a href="https://www.mxp.tw/category/%e6%94%9d%e5%bd%b1%e7%9b%b8%e9%97%9c/">攝影相關</a> (5) </li> <li class="cat-item cat-item-8"><a href="https://www.mxp.tw/category/%e6%96%b0%e8%81%9e%e8%b3%87%e8%a8%8a/">新聞資訊</a> (239) </li> <li class="cat-item cat-item-60"><a href="https://www.mxp.tw/category/temperature/">有溫度的文字</a> (72) </li> <li class="cat-item cat-item-1"><a href="https://www.mxp.tw/category/uncategorized/">未分類</a> (1) </li> </ul> </nav></section><section id="tag_cloud-3" class="widget widget_tag_cloud"><h2 class="widget-title">常用標籤</h2><nav aria-label="常用標籤"><div class="tagcloud"><a href="https://www.mxp.tw/tag/api/" class="tag-cloud-link tag-link-17 tag-link-position-1" style="font-size: 12.905109489051pt;" aria-label="API (42 個項目)">API</a> <a href="https://www.mxp.tw/tag/blog%e5%a4%a7%e5%b0%8f%e4%ba%8b/" class="tag-cloud-link tag-link-670 tag-link-position-2" style="font-size: 9.1240875912409pt;" aria-label="Blog大小事 (17 個項目)">Blog大小事</a> <a href="https://www.mxp.tw/tag/chrome/" class="tag-cloud-link tag-link-13 tag-link-position-3" style="font-size: 8.5109489051095pt;" aria-label="Chrome (15 個項目)">Chrome</a> <a href="https://www.mxp.tw/tag/docker/" class="tag-cloud-link tag-link-117 tag-link-position-4" style="font-size: 11.372262773723pt;" aria-label="Docker (29 個項目)">Docker</a> <a href="https://www.mxp.tw/tag/erp/" class="tag-cloud-link tag-link-1402 tag-link-position-5" style="font-size: 9.9416058394161pt;" aria-label="ERP (21 個項目)">ERP</a> <a href="https://www.mxp.tw/tag/facebook/" class="tag-cloud-link tag-link-219 tag-link-position-6" style="font-size: 16.07299270073pt;" aria-label="Facebook (86 個項目)">Facebook</a> <a href="https://www.mxp.tw/tag/facebook%e5%90%8c%e6%ad%a5/" class="tag-cloud-link tag-link-644 tag-link-position-7" style="font-size: 8.8175182481752pt;" aria-label="Facebook同步 (16 個項目)">Facebook同步</a> <a href="https://www.mxp.tw/tag/fb2wp/" class="tag-cloud-link tag-link-248 tag-link-position-8" style="font-size: 8.3065693430657pt;" aria-label="FB2WP (14 個項目)">FB2WP</a> <a href="https://www.mxp.tw/tag/google/" class="tag-cloud-link tag-link-80 tag-link-position-9" style="font-size: 12.496350364964pt;" aria-label="Google (38 個項目)">Google</a> <a href="https://www.mxp.tw/tag/https/" class="tag-cloud-link tag-link-90 tag-link-position-10" style="font-size: 9.5328467153285pt;" aria-label="HTTPS (19 個項目)">HTTPS</a> <a href="https://www.mxp.tw/tag/idempiere/" class="tag-cloud-link tag-link-1598 tag-link-position-11" style="font-size: 10.14598540146pt;" aria-label="iDempiere (22 個項目)">iDempiere</a> <a href="https://www.mxp.tw/tag/javascript/" class="tag-cloud-link tag-link-15 tag-link-position-12" style="font-size: 10.861313868613pt;" aria-label="JavaScript (26 個項目)">JavaScript</a> <a href="https://www.mxp.tw/tag/linux/" class="tag-cloud-link tag-link-65 tag-link-position-13" style="font-size: 9.5328467153285pt;" aria-label="Linux (19 個項目)">Linux</a> <a href="https://www.mxp.tw/tag/mac/" class="tag-cloud-link tag-link-115 tag-link-position-14" style="font-size: 10.14598540146pt;" aria-label="Mac (22 個項目)">Mac</a> <a href="https://www.mxp.tw/tag/mysql/" class="tag-cloud-link tag-link-39 tag-link-position-15" style="font-size: 11.474452554745pt;" aria-label="MySQL (30 個項目)">MySQL</a> <a href="https://www.mxp.tw/tag/nginx/" class="tag-cloud-link tag-link-36 tag-link-position-16" style="font-size: 11.678832116788pt;" aria-label="Nginx (31 個項目)">Nginx</a> <a href="https://www.mxp.tw/tag/nodejs/" class="tag-cloud-link tag-link-96 tag-link-position-17" style="font-size: 8.8175182481752pt;" aria-label="NodeJS (16 個項目)">NodeJS</a> <a href="https://www.mxp.tw/tag/php/" class="tag-cloud-link tag-link-34 tag-link-position-18" style="font-size: 16.788321167883pt;" aria-label="PHP (102 個項目)">PHP</a> <a href="https://www.mxp.tw/tag/plugin/" class="tag-cloud-link tag-link-4 tag-link-position-19" style="font-size: 10.656934306569pt;" aria-label="Plugin (25 個項目)">Plugin</a> <a href="https://www.mxp.tw/tag/seo/" class="tag-cloud-link tag-link-81 tag-link-position-20" style="font-size: 8.8175182481752pt;" aria-label="SEO (16 個項目)">SEO</a> <a href="https://www.mxp.tw/tag/ssl/" class="tag-cloud-link tag-link-89 tag-link-position-21" style="font-size: 8.5109489051095pt;" aria-label="SSL (15 個項目)">SSL</a> <a href="https://www.mxp.tw/tag/ubuntu/" class="tag-cloud-link tag-link-46 tag-link-position-22" style="font-size: 12.802919708029pt;" aria-label="Ubuntu (41 個項目)">Ubuntu</a> <a href="https://www.mxp.tw/tag/vps/" class="tag-cloud-link tag-link-48 tag-link-position-23" style="font-size: 12.905109489051pt;" aria-label="VPS (42 個項目)">VPS</a> <a href="https://www.mxp.tw/tag/woocommerce/" class="tag-cloud-link tag-link-449 tag-link-position-24" style="font-size: 17.197080291971pt;" aria-label="WooCommerce (110 個項目)">WooCommerce</a> <a href="https://www.mxp.tw/tag/wordpress/" class="tag-cloud-link tag-link-3 tag-link-position-25" style="font-size: 22pt;" aria-label="WordPress (331 個項目)">WordPress</a> <a href="https://www.mxp.tw/tag/%e4%bc%81%e6%a5%ad%e7%ae%a1%e7%90%86%e7%b3%bb%e7%b5%b1/" class="tag-cloud-link tag-link-2334 tag-link-position-26" style="font-size: 8pt;" aria-label="企業管理系統 (13 個項目)">企業管理系統</a> <a href="https://www.mxp.tw/tag/%e4%bc%ba%e6%9c%8d%e5%99%a8/" class="tag-cloud-link tag-link-52 tag-link-position-27" style="font-size: 9.1240875912409pt;" aria-label="伺服器 (17 個項目)">伺服器</a> <a href="https://www.mxp.tw/tag/%e5%a4%96%e6%8e%9b/" class="tag-cloud-link tag-link-42 tag-link-position-28" style="font-size: 14.233576642336pt;" aria-label="外掛 (56 個項目)">外掛</a> <a href="https://www.mxp.tw/tag/%e5%a4%96%e6%8e%9b%e9%96%8b%e7%99%bc/" class="tag-cloud-link tag-link-664 tag-link-position-29" style="font-size: 11.474452554745pt;" aria-label="外掛開發 (30 個項目)">外掛開發</a> <a href="https://www.mxp.tw/tag/%e5%ae%89%e5%85%a8%e6%80%a7/" class="tag-cloud-link tag-link-51 tag-link-position-30" style="font-size: 9.9416058394161pt;" aria-label="安全性 (21 個項目)">安全性</a> <a href="https://www.mxp.tw/tag/%e5%ae%a2%e8%a3%bd%e5%8c%96/" class="tag-cloud-link tag-link-614 tag-link-position-31" style="font-size: 8.8175182481752pt;" aria-label="客製化 (16 個項目)">客製化</a> <a href="https://www.mxp.tw/tag/%e5%b7%a5%e5%85%b7/" class="tag-cloud-link tag-link-281 tag-link-position-32" style="font-size: 8.8175182481752pt;" aria-label="工具 (16 個項目)">工具</a> <a href="https://www.mxp.tw/tag/%e5%bf%83%e5%be%97/" class="tag-cloud-link tag-link-172 tag-link-position-33" style="font-size: 11.167883211679pt;" aria-label="心得 (28 個項目)">心得</a> <a href="https://www.mxp.tw/tag/%e6%8a%80%e8%a1%93%e7%9b%b8%e9%97%9c/" class="tag-cloud-link tag-link-660 tag-link-position-34" style="font-size: 16.890510948905pt;" aria-label="技術相關 (104 個項目)">技術相關</a> <a href="https://www.mxp.tw/tag/%e6%95%99%e5%ad%b8/" class="tag-cloud-link tag-link-294 tag-link-position-35" style="font-size: 15.153284671533pt;" aria-label="教學 (70 個項目)">教學</a> <a href="https://www.mxp.tw/tag/%e6%96%b0%e8%81%9e%e8%b3%87%e8%a8%8a/" class="tag-cloud-link tag-link-671 tag-link-position-36" style="font-size: 19.036496350365pt;" aria-label="新聞資訊 (168 個項目)">新聞資訊</a> <a href="https://www.mxp.tw/tag/%e6%9c%89%e6%ba%ab%e5%ba%a6%e7%9a%84%e6%96%87%e5%ad%97/" class="tag-cloud-link tag-link-746 tag-link-position-37" style="font-size: 14.335766423358pt;" aria-label="有溫度的文字 (58 個項目)">有溫度的文字</a> <a href="https://www.mxp.tw/tag/%e6%a9%9f%e5%99%a8%e4%ba%ba/" class="tag-cloud-link tag-link-534 tag-link-position-38" style="font-size: 8.5109489051095pt;" aria-label="機器人 (15 個項目)">機器人</a> <a href="https://www.mxp.tw/tag/%e7%a8%8b%e5%bc%8f%e9%96%8b%e7%99%bc/" class="tag-cloud-link tag-link-1590 tag-link-position-39" style="font-size: 11.372262773723pt;" aria-label="程式開發 (29 個項目)">程式開發</a> <a href="https://www.mxp.tw/tag/%e7%ad%86%e8%a8%98/" class="tag-cloud-link tag-link-514 tag-link-position-40" style="font-size: 8.3065693430657pt;" aria-label="筆記 (14 個項目)">筆記</a> <a href="https://www.mxp.tw/tag/%e7%b6%93%e7%87%9f/" class="tag-cloud-link tag-link-702 tag-link-position-41" style="font-size: 10.656934306569pt;" aria-label="經營 (25 個項目)">經營</a> <a href="https://www.mxp.tw/tag/%e7%b6%b2%e7%ab%99%e9%96%8b%e7%99%bc/" class="tag-cloud-link tag-link-551 tag-link-position-42" style="font-size: 11.985401459854pt;" aria-label="網站開發 (34 個項目)">網站開發</a> <a href="https://www.mxp.tw/tag/%e8%b3%87%e6%96%99%e5%ba%ab/" class="tag-cloud-link tag-link-1043 tag-link-position-43" style="font-size: 8pt;" aria-label="資料庫 (13 個項目)">資料庫</a> <a href="https://www.mxp.tw/tag/%e9%96%8b%e6%ba%90erp/" class="tag-cloud-link tag-link-2335 tag-link-position-44" style="font-size: 8.5109489051095pt;" aria-label="開源ERP (15 個項目)">開源ERP</a> <a href="https://www.mxp.tw/tag/%e9%96%8b%e7%99%bc/" class="tag-cloud-link tag-link-479 tag-link-position-45" style="font-size: 11.678832116788pt;" aria-label="開發 (31 個項目)">開發</a></div> </nav></section><section id="custom_html-2" class="widget_text widget widget_custom_html"><div class="textwidget custom-html-widget"><script type="text/javascript"> google_ad_client = "ca-pub-1939980533457134"; /*google_ad_host = "ca-host-pub-7449992691305813";    google_ad_host_channel = "2031107259";*/ google_ad_slot = "1291294008"; google_ad_format = "auto"; if (!(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent))) { google_ad_width = 300; google_ad_height = 250; }else{ google_ad_width = 300; google_ad_height = 600; } </script> <!-- mxp-sidebar-auto_320x250 --> <script type="text/javascript" src="//pagead2.googlesyndication.com/pagead/show_ads.js"> </script></div></section> </div> </aside><!-- .widget-area --> <div class="site-info"> <a class="site-name" href="https://www.mxp.tw/" rel="home">一介資男</a>, <a rel="nofollow" href="https://tw.wordpress.org/" class="imprint"> 本站採用 WordPress 建置 </a> <nav class="footer-navigation" aria-label="頁尾選單"> <div class="menu-links-container"><ul id="menu-links" class="footer-menu"><li id="menu-item-7040" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-7040"><a rel="nofollow" href="https://www.facebook.com/a.tech.guy">Facebook</a></li> <li id="menu-item-7041" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-7041"><a rel="nofollow" href="https://github.com/nczz">GitHub</a></li> <li id="menu-item-9302" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-9302"><a href="https://www.mxp.tw/statement-policy/">使用者條款與隱私權聲明</a></li> </ul></div> </nav><!-- .footer-navigation --> </div><!-- .site-info --> </footer><!-- #colophon --> </div><!-- #page --> <script type="speculationrules"> {"prefetch":[{"source":"document","where":{"and":[{"href_matches":"/*"},{"not":{"href_matches":["/wp-*.php","/wp-admin/*","/wp-content/uploads/*","/wp-content/*","/wp-content/plugins/*","/wp-content/themes/mxp_tw/*","/wp-content/themes/twentynineteen/*","/*\\?(.+)"]}},{"not":{"selector_matches":"a[rel~=\"nofollow\"]"}},{"not":{"selector_matches":".no-prefetch, .no-prefetch a"}}]},"eagerness":"conservative"}]} </script> <script type="text/html" id="tmpl-cmswt-Result-itemTemplate--default"> <# if(data.taxonomy === undefined){ #> <div class="hit-header"> <# var imageHTML = ''; if(data.post_thumbnail_html !== undefined && data.post_thumbnail_html !== ''){ imageHTML = data.post_thumbnail_html }else if(data.post_thumbnail !== undefined && data.post_thumbnail !== ''){ imageHTML = `<img src="${data.post_thumbnail}" alt="${data.post_title}" class="ais-Hit-itemImage" />` } else{ imageHTML = `<img src="https://www.mxp.tw/wp-content/plugins/search-with-typesense/assets/images/placeholder-300x300.jpg" alt="${data.post_title}" class="ais-Hit-itemImage" />` } #> <# if(imageHTML !== ''){ #> <a href="{{{data._highlightResult.permalink.value}}}" class="hit-header--link" rel="nofollow noopener">{{{imageHTML}}}</a> <# } #> </div> <# } #> <div class="hit-content"> <# if(data._highlightResult.permalink !== undefined ) { #> <a href="{{{data._highlightResult.permalink.value}}}" class="hit-contentLink" rel="nofollow noopener"><h5 class="title"> {{{data.formatted.post_title}}}</h5></a> <# } #> <# if( data.post_type === 'post' ) { #> <div class="hit-meta"> <span class="posted-by"> By {{data.post_author}} </span> <span class="posted-on"> <time datetime="">{{data.formatted.postedDate}}</time> </span> <# if ( Object.keys(data.formatted.cats).length > 0 ) { #> <div class="hit-cats"> <# for ( let key in data.formatted.cats ) { #> <div class="hit-cat"><a rel="nofollow" href="{{{data.formatted.cats[key]}}}">{{{key}}}</a>,</div> <# } #> </div> <# } #> </div> <# } #> <div class="hit-description">{{{data.formatted.post_content}}}</div> <div class="hit-link"> <a rel="nofollow" href="{{data.permalink}}">Read More...</a> </div> </div> </script><script type="text/html" id="tmpl-cmswt-NoSearchResults-default"> <div class="cmswt-noSearchResults cmswt-NoSearchResults-default"> No results found </div> </script><script type="text/html" id="tmpl-cm-autocomplete"> <div class="aa-ItemWrapper"> <div class="aa-ItemContent"> <div class="aa-ItemIcon aa-ItemIcon--alignTop"> <# if ( data.document.post_thumbnail !== '' && data.document.post_thumbnail !== undefined ) { #> <img src="{{{data.document.post_thumbnail}}}" alt="{{data.document.post_title}}" width="40" height="40" /> <# } else { #> <img src="https://www.mxp.tw/wp-content/plugins/search-with-typesense/assets/placeholder.jpg" alt="{{data.document.post_title}}" width="40" height="40" /> <# } #> </div> <div class="aa-ItemContentBody"> <div class="aa-ItemContentTitle"> {{{data.formatted.post_title}}} </div> <div class="aa-ItemContentDescription"> {{data.formatted.sliced_content}} </div> </div> </div> </div> </script><script type="text/html" id="tmpl-cm-autocomplete-header"> <h5>{{{data.name}}}</h5> </script><script type="text/html" id="tmpl-cm-autocomplete-no-results-found">No Results Found</script> <style> .ais-Highlight-highlighted, .ais-Snippet-highlighted, .hit-description mark { background-color: #ffc168 } </style> <div class="cmswt-InstantSearchPopup"> <div class="cmswt-InstantSearchPopup--results"> <a href="#" class="cmswt-InstantSearchPopup--closeIcon" title="close"> <svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2"> <path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12"/> </svg> </a> <div class="cmswt-InstantSearch ais-InstantSearch cm_swt_instant_search_1 single-source" data-id="cm_swt_instant_search_1" data-config="{"filter":"show","post_types":["post"],"per_page":"4","pagination":"infinite","sortby":"show","columns":"1","placeholder":"Search for...","query_by":"post_title,post_content","sticky_first":"no","custom_class":"","search_query":"","selected_filters":"hide","stats":"hide","routing":"disable","unique_id":"cm_swt_instant_search_1","collections":["post"]}" data-facets="{"post":["category"]}" data-placeholder="Search for..." data-query_by="post_title,post_content" data-sticky_first="no" data-additional_search_params="[]" data-search_query="" data-additional_config="[]" data-routing="disable" > <div class="cmswt-InstantSearch-overlay cmswt-FilterPanel-itemsClose"></div> <div class="cmswt-Header"> <div class="cmswt-SearchBox" data-settings="[]" ></div><div class="cmswt-CollectionMenu cmswt-CollectionMenu--singleSource"> <div class="cmswt-CollectionMenu-current"> <span class="cmswt-CollectionMenu-currentLabel">文章</span> <svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6 cmswt-CollectionMenu-icon" width="24" height="25" viewBox="0 0 24 25" fill="none"> <path d="M9 5.50001C8.73478 5.50001 8.48043 5.60537 8.29289 5.7929C8.10536 5.98044 8 6.23479 8 6.50001C8 6.76523 8.10536 7.01958 8.29289 7.20712C8.48043 7.39465 8.73478 7.50001 9 7.50001C9.26522 7.50001 9.51957 7.39465 9.70711 7.20712C9.89464 7.01958 10 6.76523 10 6.50001C10 6.23479 9.89464 5.98044 9.70711 5.7929C9.51957 5.60537 9.26522 5.50001 9 5.50001ZM6.17 5.50001C6.3766 4.91448 6.75974 4.40744 7.2666 4.0488C7.77346 3.69015 8.37909 3.49756 9 3.49756C9.62091 3.49756 10.2265 3.69015 10.7334 4.0488C11.2403 4.40744 11.6234 4.91448 11.83 5.50001H19C19.2652 5.50001 19.5196 5.60537 19.7071 5.7929C19.8946 5.98044 20 6.23479 20 6.50001C20 6.76523 19.8946 7.01958 19.7071 7.20712C19.5196 7.39465 19.2652 7.50001 19 7.50001H11.83C11.6234 8.08554 11.2403 8.59258 10.7334 8.95122C10.2265 9.30986 9.62091 9.50246 9 9.50246C8.37909 9.50246 7.77346 9.30986 7.2666 8.95122C6.75974 8.59258 6.3766 8.08554 6.17 7.50001H5C4.73478 7.50001 4.48043 7.39465 4.29289 7.20712C4.10536 7.01958 4 6.76523 4 6.50001C4 6.23479 4.10536 5.98044 4.29289 5.7929C4.48043 5.60537 4.73478 5.50001 5 5.50001H6.17ZM15 11.5C14.7348 11.5 14.4804 11.6054 14.2929 11.7929C14.1054 11.9804 14 12.2348 14 12.5C14 12.7652 14.1054 13.0196 14.2929 13.2071C14.4804 13.3947 14.7348 13.5 15 13.5C15.2652 13.5 15.5196 13.3947 15.7071 13.2071C15.8946 13.0196 16 12.7652 16 12.5C16 12.2348 15.8946 11.9804 15.7071 11.7929C15.5196 11.6054 15.2652 11.5 15 11.5ZM12.17 11.5C12.3766 10.9145 12.7597 10.4074 13.2666 10.0488C13.7735 9.69015 14.3791 9.49756 15 9.49756C15.6209 9.49756 16.2265 9.69015 16.7334 10.0488C17.2403 10.4074 17.6234 10.9145 17.83 11.5H19C19.2652 11.5 19.5196 11.6054 19.7071 11.7929C19.8946 11.9804 20 12.2348 20 12.5C20 12.7652 19.8946 13.0196 19.7071 13.2071C19.5196 13.3947 19.2652 13.5 19 13.5H17.83C17.6234 14.0855 17.2403 14.5926 16.7334 14.9512C16.2265 15.3099 15.6209 15.5025 15 15.5025C14.3791 15.5025 13.7735 15.3099 13.2666 14.9512C12.7597 14.5926 12.3766 14.0855 12.17 13.5H5C4.73478 13.5 4.48043 13.3947 4.29289 13.2071C4.10536 13.0196 4 12.7652 4 12.5C4 12.2348 4.10536 11.9804 4.29289 11.7929C4.48043 11.6054 4.73478 11.5 5 11.5H12.17ZM9 17.5C8.73478 17.5 8.48043 17.6054 8.29289 17.7929C8.10536 17.9804 8 18.2348 8 18.5C8 18.7652 8.10536 19.0196 8.29289 19.2071C8.48043 19.3947 8.73478 19.5 9 19.5C9.26522 19.5 9.51957 19.3947 9.70711 19.2071C9.89464 19.0196 10 18.7652 10 18.5C10 18.2348 9.89464 17.9804 9.70711 17.7929C9.51957 17.6054 9.26522 17.5 9 17.5ZM6.17 17.5C6.3766 16.9145 6.75974 16.4074 7.2666 16.0488C7.77346 15.6902 8.37909 15.4976 9 15.4976C9.62091 15.4976 10.2265 15.6902 10.7334 16.0488C11.2403 16.4074 11.6234 16.9145 11.83 17.5H19C19.2652 17.5 19.5196 17.6054 19.7071 17.7929C19.8946 17.9804 20 18.2348 20 18.5C20 18.7652 19.8946 19.0196 19.7071 19.2071C19.5196 19.3947 19.2652 19.5 19 19.5H11.83C11.6234 20.0855 11.2403 20.5926 10.7334 20.9512C10.2265 21.3099 9.62091 21.5025 9 21.5025C8.37909 21.5025 7.77346 21.3099 7.2666 20.9512C6.75974 20.5926 6.3766 20.0855 6.17 19.5H5C4.73478 19.5 4.48043 19.3947 4.29289 19.2071C4.10536 19.0196 4 18.7652 4 18.5C4 18.2348 4.10536 17.9804 4.29289 17.7929C4.48043 17.6054 4.73478 17.5 5 17.5H6.17Z" fill="#696969"/> </svg> </div> <ul class="cmswt-IndexSwitcher"> <li class="cmswt-IndexSwitcher-item active"> <a href="#" class="cmswt-IndexSwitcher-link" data-instance_id="cm_swt_instant_search_1" data-collection="post"> 文章 </a> </li> </ul> </div><div class="cmswt-FilterPanel-toggle"> <span class="cmswt-FilterPanel-toggleLabel"> Filter </span> <svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6 cmswt-FilterPanel-toggleIcon" width="20" height="21" viewBox="0 0 20 21" fill="none"> <path d="M2.1875 2.6875H17.8125V4.5625L11.5625 11.4375V16.4375L8.4375 18.3125V11.4375L2.1875 4.5625V2.6875Z" stroke="#696969" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> </svg> </div> <div class="cmswt-Sort"> <div class="cmswt-SortBy cmswt-SortBy-post" data-settings="{"items":[{"label":"Recent","value":"post"},{"label":"Oldest","value":"post\/sort\/sort_by_date:asc"}]}" ></div> </div></div> <div class="cmswt-FilterPanel"> <div class="cmswt-FilterPanel-items"> <div class="cmswt-FilterPanel-itemsPopupHeader"> <div class="cmswt-FilterPanel-itemsPopupLabel"> <h5 class="cmswt-FilterPanel-itemsPopupLabelHeader">Apply Filters</h5> <svg xmlns="http://www.w3.org/2000/svg" class="h-6 w-6 cmswt-FilterPanel-itemsPopupHeaderCloseLogo cmswt-FilterPanel-itemsClose" width="16" height="17" viewBox="0 0 16 17" fill="none"> <path d="M11.3334 5.16666L4.66675 11.8333M4.66675 5.16666L11.3334 11.8333" stroke="#2E2E2E" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/> </svg> </div> </div> <div class="cmswt-FilterPanel-itemsContent"> <div class="cmswt-Filter cmswt-Filter-category cmswt-Filter-collection_post" data-facet_id="post_category" data-label="category" data-title="Category" data-settings="{"searchable":false}" data-filter_type="refinement" ></div> </div> <div class="cmswt-FilterPanel-itemsFooter"> <a class="cmswt-FilterPanel-itemsFooterCloseLink cmswt-FilterPanel-itemsClose">Close</a> </div> </div> </div> <div class="cmswt-MainPanel"> <div class="cmswt-Results"> <div class="cmswt-Result cmswt-Result-post"> <div class="cmswt-Result-hits cmswt-Result-hits_post"></div><div class="cmswt-Pagination cmswt-Pagination-post"></div> </div> </div> </div></div> </div> </div> <style>.grecaptcha-badge{ visibility: collapse !important; }</style><style> ins.adsbygoogle[data-ad-status="unfilled"] { display: none !important; } </style> <a style="display:none;" rel="me nofollow" href="https://hcchiang.com/@hi">Mastodon</a> <script type="application/ld+json" id="slim-seo-schema">{"@context":"https://schema.org","@graph":[{"@type":"WebSite","@id":"https://www.mxp.tw/#website","url":"https://www.mxp.tw/","name":"一介資男","description":"WordPress 開發者 & iDempiere ERP 顧問 — 分享 Web 開發、伺服器管理、資安與開源 ERP 實戰經驗","inLanguage":"zh-TW","potentialAction":{"@id":"https://www.mxp.tw/#searchaction"},"publisher":{"@id":"https://www.mxp.tw/#person"}},{"@type":"SearchAction","@id":"https://www.mxp.tw/#searchaction","target":"https://www.mxp.tw/?s={search_term_string}","query-input":"required name=search_term_string"},{"@type":"BreadcrumbList","name":"導覽標記","@id":"https://www.mxp.tw/plugins/lobbychat/#breadcrumblist","itemListElement":[{"@type":"ListItem","position":1,"name":"首頁","item":"https://www.mxp.tw/"},{"@type":"ListItem","position":2,"name":"[WordPress] 外掛分享: LobbyChat"}]},{"@type":"WebPage","@id":"https://www.mxp.tw/plugins/lobbychat/#webpage","url":"https://www.mxp.tw/plugins/lobbychat/","inLanguage":"zh-TW","name":"LobbyChat — WordPress 外掛中文介紹","description":"LobbyChat is a lightweight live-chat shoutbox you can drop into any WordPress page or sidebar with a single shortcode. Built for communities — fan sites...","datePublished":"2026-05-28T16:14:29+08:00","dateModified":"-001-11-30T08:06:00+08:06","isPartOf":{"@id":"https://www.mxp.tw/#website"},"breadcrumb":{"@id":"https://www.mxp.tw/plugins/lobbychat/#breadcrumblist"},"potentialAction":{"@id":"https://www.mxp.tw/plugins/lobbychat/#readaction"},"primaryImageOfPage":{"@id":"https://www.mxp.tw/plugins/lobbychat/#thumbnail"},"image":{"@id":"https://www.mxp.tw/plugins/lobbychat/#thumbnail"}},{"@type":"ReadAction","@id":"https://www.mxp.tw/plugins/lobbychat/#readaction","target":"https://www.mxp.tw/plugins/lobbychat/"},{"@type":"Person","@id":"https://www.mxp.tw/#person","name":"Chun","alternateName":"一介資男","url":"https://www.mxp.tw/","description":"WordPress 社群貢獻者、開源社群推廣者。專注於 WordPress 外掛開發、網站效能最佳化、伺服器管理,以及 iDempiere 開源 ERP 導入與客製開發。","image":{"@type":"ImageObject","@id":"https://www.mxp.tw/#personimage","url":"https://www.mxp.tw/wp-content/uploads/2019/06/cropped-竣大頭貼.png","contentUrl":"https://www.mxp.tw/wp-content/uploads/2019/06/cropped-竣大頭貼.png","width":190,"height":190},"sameAs":["https://github.com/nczz/","https://profiles.wordpress.org/mxp/","https://www.facebook.com/mxp.tw","https://hcchiang.com/@hi"],"jobTitle":"WordPress 開發者 / iDempiere ERP 顧問","knowsAbout":["WordPress","PHP","Web Development","Server Administration","Open Source","iDempiere","ERP","Java"]},{"@type":"ImageObject","@id":"https://www.mxp.tw/plugins/lobbychat/#thumbnail","url":"https://ps.w.org/akismet/assets/icon-256x256.png?rev=2818463"},{"@type":"SoftwareApplication","name":"LobbyChat","description":"LobbyChat is a lightweight live-chat shoutbox you can drop into any WordPress page or sidebar with a single shortcode. Built for communities — fan sites...","applicationCategory":"WordPress Plugin","operatingSystem":"WordPress","url":"https://www.mxp.tw/plugins/lobbychat/","installUrl":"https://tw.wordpress.org/plugins/lobbychat/","image":"https://ps.w.org/lobbychat/assets/icon-256x256.png?rev=3545021","offers":{"@type":"Offer","price":"0","priceCurrency":"TWD"},"softwareVersion":"1.0.7","downloadUrl":"https://downloads.wordpress.org/plugin/lobbychat.1.0.7.zip","softwareRequirements":"WordPress 5.8+, PHP 7.2+","author":{"@type":"Person","name":"jauntymellifluous","url":"https://profiles.wordpress.org/jauntymellifluous/"}}]}</script> <script id="module-prism-line-number"> (function($) { $(function() { $("code").each(function() { var parent_div = $(this).parent("pre"); var pre_css = $(this).attr("class"); if (typeof pre_css !== "undefined" && -1 !== pre_css.indexOf("language-")) { parent_div.addClass("line-numbers"); } }); }); })(jQuery); </script> <script id="module-clipboard"> (function($) { $(function() { var pre = document.getElementsByTagName("pre"); var pasteContent = document.getElementById("paste-content"); var hasLanguage = false; for (var i = 0; i < pre.length; i++) { var codeClass = pre[i].children[0].className; var isLanguage = codeClass.indexOf("language-"); var excludedCodeClassNames = [ "language-katex", "language-seq", "language-sequence", "language-flow", "language-flowchart", "language-mermaid", ]; var isExcluded = excludedCodeClassNames.indexOf(codeClass); if (isExcluded !== -1) { isLanguage = -1; } if (isLanguage !== -1) { var current_pre = pre[i]; var parent = current_pre.parentNode; var div = document.createElement("div"); div.style['position'] = 'relative'; parent.replaceChild(div, current_pre); var button = document.createElement("button"); button.className = "copy-button"; button.textContent = "Copy"; div.appendChild(current_pre); div.appendChild(button); hasLanguage = true; } }; if (hasLanguage) { var copyCode = new ClipboardJS(".copy-button", { target: function(trigger) { return trigger.previousElementSibling; } }); copyCode.on("success", function(event) { event.clearSelection(); event.trigger.textContent = "Copied"; window.setTimeout(function() { event.trigger.textContent = "Copy"; }, 2000); }); } }); })(jQuery); </script> <script id="avc_frontend-js-extra"> var AdRefreshControl = {"advertiserIds":[],"lineItemIds":[],"sizesToExclude":["fluid"],"slotIdsToExclude":[],"viewabilityThreshold":"50","refreshInterval":"30","maximumRefreshes":"12","refreshCallback":""}; //# sourceURL=avc_frontend-js-extra </script> <script defer src="https://www.mxp.tw/wp-content/plugins/ad-refresh-control/dist/js/frontend.js" id="avc_frontend-js"></script> <script id="code-prettify-js-before"> var codePrettifyLoaderBaseUrl = "https:\/\/www.mxp.tw\/wp-content\/plugins\/code-prettify\/prettify"; //# sourceURL=code-prettify-js-before </script> <script defer src="https://www.mxp.tw/wp-content/plugins/code-prettify/prettify/run_prettify.js" id="code-prettify-js"></script> <script id="toc-front-js-extra"> var tocplus = {"smooth_scroll":"1","visibility_show":"\u986f\u793a","visibility_hide":"\u96b1\u85cf","width":"Auto"}; //# sourceURL=toc-front-js-extra </script> <script defer src="https://www.mxp.tw/wp-content/plugins/table-of-contents-plus/front.min.js" id="toc-front-js"></script> <script src="https://www.mxp.tw/wp-content/themes/twentynineteen/js/touch-keyboard-navigation.js" id="twentynineteen-touch-navigation-js" defer data-wp-strategy="defer"></script> <script defer src="https://www.mxp.tw/wp-includes/js/clipboard.min.js" id="clipboard-js"></script> <script defer src="https://www.mxp.tw/wp-content/plugins/wp-rocket/assets/js/heartbeat.js" id="heartbeat-js"></script> <script defer src="https://www.mxp.tw/wp-includes/js/dist/vendor/regenerator-runtime.min.js" id="regenerator-runtime-js"></script> <script src="https://www.mxp.tw/wp-includes/js/dist/vendor/moment.min.js" id="moment-js"></script> <script id="moment-js-after"> moment.updateLocale( 'zh_TW', {"months":["1 \u6708","2 \u6708","3 \u6708","4 \u6708","5 \u6708","6 \u6708","7 \u6708","8 \u6708","9 \u6708","10 \u6708","11 \u6708","12 \u6708"],"monthsShort":["1 \u6708","2 \u6708","3 \u6708","4 \u6708","5 \u6708","6 \u6708","7 \u6708","8 \u6708","9 \u6708","10 \u6708","11 \u6708","12 \u6708"],"weekdays":["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],"weekdaysShort":["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],"week":{"dow":1},"longDateFormat":{"LT":"H:i:s","LTS":null,"L":null,"LL":"Y/m/d","LLL":"Y \u5e74 n \u6708 j \u65e5a g:i","LLLL":null}} ); //# sourceURL=moment-js-after </script> <script defer src="https://www.mxp.tw/wp-includes/js/dist/hooks.min.js" id="wp-hooks-js"></script> <script defer src="https://www.mxp.tw/wp-includes/js/dist/deprecated.min.js" id="wp-deprecated-js"></script> <script src="https://www.mxp.tw/wp-includes/js/dist/date.min.js" id="wp-date-js"></script> <script id="wp-date-js-after"> wp.date.setSettings( {"l10n":{"locale":"zh_TW","months":["1 \u6708","2 \u6708","3 \u6708","4 \u6708","5 \u6708","6 \u6708","7 \u6708","8 \u6708","9 \u6708","10 \u6708","11 \u6708","12 \u6708"],"monthsShort":["1 \u6708","2 \u6708","3 \u6708","4 \u6708","5 \u6708","6 \u6708","7 \u6708","8 \u6708","9 \u6708","10 \u6708","11 \u6708","12 \u6708"],"weekdays":["\u661f\u671f\u65e5","\u661f\u671f\u4e00","\u661f\u671f\u4e8c","\u661f\u671f\u4e09","\u661f\u671f\u56db","\u661f\u671f\u4e94","\u661f\u671f\u516d"],"weekdaysShort":["\u9031\u65e5","\u9031\u4e00","\u9031\u4e8c","\u9031\u4e09","\u9031\u56db","\u9031\u4e94","\u9031\u516d"],"meridiem":{"am":"\u4e0a\u5348","pm":"\u4e0b\u5348","AM":"\u4e0a\u5348","PM":"\u4e0b\u5348"},"relative":{"future":"%s\u5f8c","past":"%s\u524d","s":"1 \u79d2","ss":"%d \u79d2","m":"1 \u5206\u9418","mm":"%d \u5206\u9418","h":"1 \u5c0f\u6642","hh":"%d \u5c0f\u6642","d":"1 \u5929","dd":"%d \u5929","M":"1 \u500b\u6708","MM":"%d \u500b\u6708","y":"1 \u5e74","yy":"%d \u5e74"},"startOfWeek":1},"formats":{"time":"H:i:s","date":"Y/m/d","datetime":"Y \u5e74 n \u6708 j \u65e5a g:i","datetimeAbbreviated":"Y \u5e74 n \u6708 j \u65e5a g:i"},"timezone":{"offset":8,"offsetFormatted":"8","string":"Asia/Taipei","abbr":"CST"}} ); //# sourceURL=wp-date-js-after </script> <script defer src="https://www.mxp.tw/wp-includes/js/underscore.min.js" id="underscore-js"></script> <script id="wp-util-js-extra"> var _wpUtilSettings = {"ajax":{"url":"/wp-admin/admin-ajax.php"}}; //# sourceURL=wp-util-js-extra </script> <script defer src="https://www.mxp.tw/wp-includes/js/wp-util.min.js" id="wp-util-js"></script> <script id="cm-typesense-instant-search-js-extra"> var cm_typesense_instant_search_default_settings = {"debug":"","search_api_key":"EdWQumsaGeVn0VfZWFKLaPS994voOBUV","port":"443","node":"search.wp-meetups.com","protocol":"https://","enabled_post_types":["post"],"available_post_types":{"post":{"label":"Posts","value":"post"},"page":{"label":"Pages","value":"page"},"category":{"label":"Category","value":"category","type":"taxonomy"}},"search_config":{"post_type":{"post":{"label":"\u6587\u7ae0","max_suggestions":"3"}},"taxonomy":{"category":"Categories"}},"date_format":"Y/m/d","localized_strings":{"load_more":"Load More","show_less":"Show less","show_more":"Show more"},"elementor_edit_mode":"false"}; //# sourceURL=cm-typesense-instant-search-js-extra </script> <script defer src="https://www.mxp.tw/wp-content/plugins/search-with-typesense//build/frontend/instant-search.js" id="cm-typesense-instant-search-js"></script> <script id="cm-typesense-popup-js-extra"> var cm_typesense_popup_default_settings = {"hijack_wp_search__type":"instant_search"}; //# sourceURL=cm-typesense-popup-js-extra </script> <script defer src="https://www.mxp.tw/wp-content/plugins/search-with-typesense//build/frontend/popup.js" id="cm-typesense-popup-js"></script> <script>var rocket_beacon_data = {"ajax_url":"https:\/\/www.mxp.tw\/wp-admin\/admin-ajax.php","nonce":"02ec0e28f1","url":"https:\/\/www.mxp.tw\/plugins\/lobbychat","is_mobile":false,"width_threshold":1600,"height_threshold":700,"delay":500,"debug":null,"status":{"atf":false,"lrc":false,"preconnect_external_domain":true},"elements":"img, video, picture, p, main, div, li, svg, section, header, span","lrc_threshold":1800,"preconnect_external_domain_elements":["link","script","iframe"],"preconnect_external_domain_exclusions":[]}</script><script data-name="wpr-wpr-beacon" src='https://www.mxp.tw/wp-content/plugins/wp-rocket/assets/js/wpr-beacon.min.js' async></script></body> </html>