CMS後台無障礙設計:讓不同編輯者都能完成任務
同一後台若要由中英內容團隊共同使用,無障礙不只關乎前台語言;欄位名稱、焦點、操作回饋和批量工作都必須讓不同使用習慣的編輯者能安全完成。 本文整理後台鍵盤、讀屏與可理解操作的資料準備、前後台規則、技術取捨、例外處理、驗收與移交,讓團隊可在動工前定出可核實的範圍與責任。
閱讀全文 →同一後台若要由中英內容團隊共同使用,無障礙不只關乎前台語言;欄位名稱、焦點、操作回饋和批量工作都必須讓不同使用習慣的編輯者能安全完成。 本文整理後台鍵盤、讀屏與可理解操作的資料準備、前後台規則、技術取捨、例外處理、驗收與移交,讓團隊可在動工前定出可核實的範圍與責任。
閱讀全文 →一個看似輕微的批量改動,至少會帶出三個問題:誰做、改了甚麼、能否還原;若後台只留下「已更新」提示,團隊無法從紀錄判斷是否要修正前台內容。 本文整理後台操作、事件範圍與還原責任的資料準備、前後台規則、技術取捨、例外處理、驗收與移交,讓團隊可在動工前定出可核實的範圍與責任。
閱讀全文 →同一款商品在 CMS 改了內容,網店價格或可售狀態卻未同步,營運人員很容易以為只是「快取未更新」;真正問題往往是從未定義誰才是資料主人。雙向同步不是功能越多越好。若兩邊都可改同一個欄位,就必須先定義時間戳、優先權或人工覆核,否則更新越快,衝突也會越難追查。 本文從資料欄位、選型、串接、手機與搜尋品質、專案節點、驗收情境
閱讀全文 →CRM 由 CMS 直接寫入,還是先經中介服務再同步,會決定日後誰可改欄位、怎樣追查失敗紀錄,以及表單同意資料會否遺失。欄位設計要分開訪客輸入、系統補充、同意狀態和業務跟進。若把來源、備註和聯絡結果混在一格自由文字,日後無法可靠分眾或查核。 本文從資料欄位、選型、串接、手機與搜尋品質、專案節點、驗收情境、行業差異及移交
閱讀全文 →
SQL 執行錯誤:INSERT INTO `analytics_visits` (`visit_key`, `ip`, `country`, `country_code`, `region`, `city`, `device_type`, `os`, `browser`, `browser_version`, `user_agent`, `is_bot`, `bot_name`, `referer`, `referer_domain`, `source_type`, `keyword`, `landing_page`, `exit_page`, `screen`, `language`, `pageviews`, `duration`, `first_seen`, `last_seen`) VALUES (:visit_key, :ip, :country, :country_code, :region, :city, :device_type, :os, :browser, :browser_version, :user_agent, :is_bot, :bot_name, :referer, :referer_domain, :source_type, :keyword, :landing_page, :exit_page, :screen, :language, :pageviews, :duration, :first_seen, :last_seen) | SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '6a0dba9cd0ad36201ace2234a796813dbaf567c6' for key 'uk_visit_key' @ /home/tero/domains/tero.cc/public_html/includes/db.php:61
#0 /home/tero/domains/tero.cc/public_html/includes/db.php(61): PDOStatement->execute()
#1 /home/tero/domains/tero.cc/public_html/includes/db.php(152): db_query()
#2 /home/tero/domains/tero.cc/public_html/includes/analytics.php(86): db_insert()
#3 /home/tero/domains/tero.cc/public_html/includes/footer.php(101): analytics_track()
#4 /home/tero/domains/tero.cc/public_html/blog.php(132): require('/home/tero/doma...')
#5 {main}