HHKB's Compact Layout Demands a Different Typing Habit

Sesli oku

TechRadar describes the HHKB Professional Classic Type-S as a specialist keyboard built around a compact 60-key layout and silenced Topre mechanisms. Dedicated cursor keys and a number pad are absent, so users must learn function-key combinations for tasks that a larger board handles directly. Its small footprint may suit a crowded workstation, but that saving comes with a substantial learning curve.

The reviewed model connects over USB-C and uses physical DIP switches for some configuration. It does not provide a USB pass-through port for the mouse. The reviewer also found the dark legends difficult to read and questioned its expensive price. Before buying, consider how often navigation keys and numeric entry feature in everyday work, not just how much desk surface the keyboard frees.

Distinguish this model from wireless HHKB versions

The Professional Classic Type-S in the review is a wired USB-C keyboard. Other HHKB products have different connection options, so do not assume the family name means Bluetooth is available here. The supplied connection also lacks a mouse hub. If a laptop has limited ports, account for both keyboard and pointer connections before treating the small board as a complete cable-saving solution.

Try navigation as well as ordinary typing

The compact body measures 294 by 110 millimeters, with no dedicated cursor cluster. Control also occupies the position commonly used for Caps Lock. Those changes are particularly important when selecting text, moving through spreadsheets or using editing shortcuts. Test those daily actions before deciding the footprint reduction is worth relearning. Fast alphabetic typing alone does not show whether the layout suits the job.

The HHKB Professional Classic Type-S rear USB-C connection with a cable attached. Image: Mark Pickavance / Future.
The HHKB Professional Classic Type-S rear USB-C connection with a cable attached. Image: Mark Pickavance / Future.

Choose the angle for alignment rather than appearance

Two-stage rear feet provide three typing positions. The 45g Topre mechanisms and PBT keycaps describe the feel and materials, but they do not determine the correct angle for an individual user. Set the board so the hands can remain appropriately aligned with the forearms. The review's criticism of dark legends also makes lighting and label readability practical checks, especially during the learning period.

Evaluate the missing keys against the real task

The compact body saves surface area by moving common functions behind combinations rather than simply shrinking every key. That trade-off matters most when navigation, page movement or numeric entry is frequent. Make a list of ordinary actions in the main applications and try their equivalent combinations. A short passage of uninterrupted letter typing does not reveal how often the missing dedicated keys will interrupt editing or spreadsheet work.

Control also changes position, which affects familiar shortcuts even when the letter arrangement remains QWERTY. The reviewer regarded relearning as a substantial ownership cost alongside the price. That is an individual assessment rather than proof that the layout is either inefficient or superior for everyone. Allow for a realistic trial, and compare any reduction in hand movement with the attention needed to perform commands that were previously automatic.

Trial the Professional Classic Type-S deliberately
Original editorial trial sequence for the HHKB Professional Classic Type-S.

Keep the model and its connection limits precise

The Professional Classic Type-S tested here uses a wired USB-C connection. Bluetooth in other HHKB products does not transfer to this version, and the socket does not provide a hub for attaching a mouse. Account for the pointer's own connection when considering a laptop with limited ports. The source's observation is about a specific model, so compare its current documentation rather than inferring functions from the broader product family's reputation.

Physical DIP switches and the mapping utility also serve different configuration roles. The source describes limits on reassignment rather than an unlimited macro system. Check that the needed operating-system mode and key changes are supported before assuming software can recreate every familiar layout. Keep the configuration reference available during the trial, particularly when moving between computers, so a mode difference is not mistaken for an unreliable switch or missed keystroke.

Judge feel and readability independently

Topre mechanisms combine a particular capacitive design and tactile response that cannot be fully evaluated from a force number. The reviewer's preference was mixed despite the quiet character. Try the supplied keys in ordinary work and decide whether the action suits the user, without treating specialist construction as an automatic improvement. The premium price makes that direct assessment more useful than assuming enthusiasm from existing owners will translate to the same experience.

The charcoal legends created a separate readability problem in the review. Other offered color schemes differ, so check the exact variant under the lighting where it will be used. The three support positions also need an individual choice that preserves suitable hand alignment; a raised rear edge is not inherently the correct setting. The best case for this keyboard joins a useful compact layout, readable controls and preferred key feel, with the learning period and connection limitations accepted deliberately.

References

  1. I tested the HHKB Professional Classic Type-S — a niche option for those prepared to learn a new keyboard layout to get Topre key mechanisms. TechRadar; Mark Pickavance.

Yazar Hakkında

WEBUZMAN 354 yazı

Burada sadece teorik bilgiler değil, gerçek deneyimlere dayanan pratik çözümler var. Burada yol arkadaşı olacağız. Karmaşık konuları birlikte çözecek, teknik detayları birlikte aşacağız...

Benzer Yazılar

Bir Cevap Yaz

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir.

Görünüm

E-Bülten Aboneliği

Güncel haberlerden haberdar olmak için e-bültenimize abone olun

基本 文件 流程 错误 SQL 调试
  1. 请求信息 : 2026-10-28 14:07:27 HTTP/1.1 GET : https://workspaceguidesetup.com/news/56507/hhkbs-compact-layout-demands-a-different-typing-habit
  2. 运行时间 : 0.052621s [ 吞吐率:19.00req/s ] 内存消耗:7,569.97kb 文件加载:178
  3. 缓存信息 : 0 reads,0 writes
  1. /www/wwwroot/zmCms/my-cms/public/index.php ( 3.09 KB )
  2. /www/wwwroot/zmCms/my-cms/vendor/autoload.php ( 0.73 KB )
  3. /www/wwwroot/zmCms/my-cms/vendor/composer/autoload_real.php ( 1.63 KB )
  4. /www/wwwroot/zmCms/my-cms/vendor/composer/platform_check.php ( 0.90 KB )
  5. /www/wwwroot/zmCms/my-cms/vendor/composer/ClassLoader.php ( 15.99 KB )
  6. /www/wwwroot/zmCms/my-cms/vendor/composer/autoload_static.php ( 5.01 KB )
  7. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
  8. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
  9. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
  10. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
  11. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
  12. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
  13. /www/wwwroot/zmCms/my-cms/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
  14. /www/wwwroot/zmCms/my-cms/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
  15. /www/wwwroot/zmCms/my-cms/vendor/symfony/var-dumper/Resources/functions/dump.php ( 0.99 KB )
  16. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
  17. /www/wwwroot/zmCms/my-cms/vendor/symfony/var-dumper/VarDumper.php ( 3.73 KB )
  18. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
  19. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
  20. /www/wwwroot/zmCms/my-cms/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
  21. /www/wwwroot/zmCms/my-cms/app/provider.php ( 0.19 KB )
  22. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Http.php ( 6.22 KB )
  23. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
  24. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
  25. /www/wwwroot/zmCms/my-cms/app/common.php ( 0.22 KB )
  26. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/helper.php ( 18.77 KB )
  27. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Config.php ( 5.93 KB )
  28. /www/wwwroot/zmCms/my-cms/config/app.php ( 1.11 KB )
  29. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
  30. /www/wwwroot/zmCms/my-cms/config/cache.php ( 1.95 KB )
  31. /www/wwwroot/zmCms/my-cms/config/console.php ( 0.47 KB )
  32. /www/wwwroot/zmCms/my-cms/config/cookie.php ( 0.56 KB )
  33. /www/wwwroot/zmCms/my-cms/config/database.php ( 2.13 KB )
  34. /www/wwwroot/zmCms/my-cms/config/filesystem.php ( 0.61 KB )
  35. /www/wwwroot/zmCms/my-cms/config/lang.php ( 0.91 KB )
  36. /www/wwwroot/zmCms/my-cms/config/log.php ( 2.18 KB )
  37. /www/wwwroot/zmCms/my-cms/config/mail.php ( 1.23 KB )
  38. /www/wwwroot/zmCms/my-cms/config/middleware.php ( 0.26 KB )
  39. /www/wwwroot/zmCms/my-cms/config/route.php ( 1.89 KB )
  40. /www/wwwroot/zmCms/my-cms/config/session.php ( 0.59 KB )
  41. /www/wwwroot/zmCms/my-cms/config/trace.php ( 0.34 KB )
  42. /www/wwwroot/zmCms/my-cms/config/view.php ( 2.08 KB )
  43. /www/wwwroot/zmCms/my-cms/app/event.php ( 0.25 KB )
  44. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Event.php ( 7.77 KB )
  45. /www/wwwroot/zmCms/my-cms/app/service.php ( 0.13 KB )
  46. /www/wwwroot/zmCms/my-cms/app/AppService.php ( 0.86 KB )
  47. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
  48. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
  49. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
  50. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
  51. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
  52. /www/wwwroot/zmCms/my-cms/vendor/services.php ( 0.15 KB )
  53. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
  54. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
  55. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
  56. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
  57. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
  58. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
  59. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
  60. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
  61. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
  62. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
  63. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.20 KB )
  64. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.75 KB )
  65. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
  66. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
  67. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.30 KB )
  68. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
  69. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
  70. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
  71. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
  72. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
  73. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
  74. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
  75. /www/wwwroot/zmCms/my-cms/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
  76. /www/wwwroot/zmCms/my-cms/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
  77. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
  78. /www/wwwroot/zmCms/my-cms/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
  79. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-helper/src/helper/Arr.php ( 17.45 KB )
  80. /www/wwwroot/zmCms/my-cms/app/common/cache/DomainCache.php ( 5.40 KB )
  81. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
  82. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/cache/Driver.php ( 9.02 KB )
  83. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
  84. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/facade/Request.php ( 9.20 KB )
  85. /www/wwwroot/zmCms/my-cms/app/Request.php ( 0.09 KB )
  86. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Request.php ( 54.64 KB )
  87. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/traits/UrlHandler.php ( 6.05 KB )
  88. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/traits/DomainHandler.php ( 5.49 KB )
  89. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/traits/HttpMethodHandler.php ( 4.74 KB )
  90. /www/wwwroot/zmCms/my-cms/app/middleware.php ( 0.34 KB )
  91. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
  92. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
  93. /www/wwwroot/zmCms/my-cms/app/middleware/LangMiddleware.php ( 4.35 KB )
  94. /www/wwwroot/zmCms/my-cms/app/middleware/CorsMiddleware.php ( 3.60 KB )
  95. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
  96. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/route/RuleName.php ( 5.74 KB )
  97. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
  98. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.41 KB )
  99. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/route/Rule.php ( 27.49 KB )
  100. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
  101. /www/wwwroot/zmCms/my-cms/route/app.php ( 17.18 KB )
  102. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
  103. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
  104. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/route/Dispatch.php ( 11.32 KB )
  105. /www/wwwroot/zmCms/my-cms/app/controller/DetailController.php ( 18.72 KB )
  106. /www/wwwroot/zmCms/my-cms/app/controller/BaseController.php ( 48.65 KB )
  107. /www/wwwroot/zmCms/my-cms/app/BaseController.php ( 2.14 KB )
  108. /www/wwwroot/zmCms/my-cms/app/common/traits/MemberHelper.php ( 2.88 KB )
  109. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/facade/Log.php ( 3.07 KB )
  110. /www/wwwroot/zmCms/my-cms/vendor/psr/log/src/LogLevel.php ( 0.33 KB )
  111. /www/wwwroot/zmCms/my-cms/app/common/log/DomainFile.php ( 2.91 KB )
  112. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/log/driver/File.php ( 6.10 KB )
  113. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
  114. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
  115. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
  116. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/event/LogWrite.php ( 0.76 KB )
  117. /www/wwwroot/zmCms/my-cms/app/common/IpHelper.php ( 2.17 KB )
  118. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
  119. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
  120. /www/wwwroot/zmCms/my-cms/app/service/SiteService.php ( 22.97 KB )
  121. /www/wwwroot/zmCms/my-cms/app/common/DomainHelper.php ( 14.61 KB )
  122. /www/wwwroot/zmCms/my-cms/app/common/cache/CacheHelper.php ( 29.40 KB )
  123. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/facade/Config.php ( 1.37 KB )
  124. /www/wwwroot/zmCms/my-cms/app/model/Site.php ( 2.88 KB )
  125. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/facade/App.php ( 2.73 KB )
  126. /www/wwwroot/zmCms/my-cms/app/service/MenuService.php ( 6.82 KB )
  127. /www/wwwroot/zmCms/my-cms/app/service/ModuleService.php ( 17.29 KB )
  128. /www/wwwroot/zmCms/my-cms/app/service/SiteExtensionDataDataService.php ( 3.08 KB )
  129. /www/wwwroot/zmCms/my-cms/app/service/SitePageService.php ( 2.30 KB )
  130. /www/wwwroot/zmCms/my-cms/app/common/util/StringUtil.php ( 9.08 KB )
  131. /www/wwwroot/zmCms/my-cms/app/view/driver/CustomThink.php ( 4.18 KB )
  132. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
  133. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
  134. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
  135. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
  136. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
  137. /www/wwwroot/zmCms/my-cms/app/common/CustomTemplate.php ( 0.76 KB )
  138. /www/wwwroot/zmCms/my-cms/app/common/PathHelper.php ( 32.31 KB )
  139. /www/wwwroot/zmCms/my-cms/app/common/util/SocialUrlUtil.php ( 1.59 KB )
  140. /www/wwwroot/zmCms/my-cms/app/common/service/SymlinkService.php ( 16.08 KB )
  141. /www/wwwroot/zmCms/my-cms/app/model/SitePage.php ( 1.11 KB )
  142. /www/wwwroot/zmCms/my-cms/app/service/SiteCategoryService.php ( 18.30 KB )
  143. /www/wwwroot/zmCms/my-cms/app/service/AdsUnitService.php ( 42.44 KB )
  144. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
  145. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.73 KB )
  146. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/PDOConnection.php ( 53.74 KB )
  147. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
  148. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
  149. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
  150. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/Builder.php ( 24.07 KB )
  151. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
  152. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/Query.php ( 15.97 KB )
  153. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
  154. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
  155. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
  156. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
  157. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
  158. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
  159. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
  160. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
  161. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
  162. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
  163. /www/wwwroot/zmCms/my-cms/app/common/SeoVarHelper.php ( 5.65 KB )
  164. /www/wwwroot/zmCms/my-cms/app/service/SiteNewsService.php ( 6.37 KB )
  165. /www/wwwroot/zmCms/my-cms/app/model/News.php ( 7.12 KB )
  166. /www/wwwroot/zmCms/my-cms/app/common/UrlHelper.php ( 9.39 KB )
  167. /www/wwwroot/zmCms/my-cms/app/common/util/LdJson.php ( 23.74 KB )
  168. /www/wwwroot/zmCms/my-cms/app/model/SiteModel.php ( 0.92 KB )
  169. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
  170. /www/wwwroot/zmCms/my-cms/app/service/PageMetaService.php ( 10.94 KB )
  171. /www/wwwroot/zmCms/my-cms/app/common/ArrayAccessWrapper.php ( 6.19 KB )
  172. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-template/src/template/taglib/Cx.php ( 24.23 KB )
  173. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-template/src/template/TagLib.php ( 12.11 KB )
  174. /www/wwwroot/zmCms/my-cms/runtime/temp/f78f4ede059a1da62431c75f0e43120a.php ( 118.17 KB )
  175. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Response.php ( 9.07 KB )
  176. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/response/Html.php ( 0.97 KB )
  177. /www/wwwroot/zmCms/my-cms/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
  178. /www/wwwroot/zmCms/my-cms/vendor/topthink/think-trace/src/Html.php ( 4.65 KB )
  1. SiteService getSiteByDomain - 查找站点,域名: workspaceguidesetup.com
  2. SiteService getSiteByDomain - 找到站点,ID: 1961, 名称: WorkspaceSetup Guide, 模板ID: 224
  3. SiteService safeTemplateDirExists - 检查模板目录是否存在,模板UID: workspaceguidesetup.com, 根路径: /www/wwwroot/zmCms/my-cms/
  4. SiteService safeTemplateDirExists - 检查路径: /www/wwwroot/zmCms/templates/workspaceguidesetup.com/, 是否存在: 否
  5. SiteService safeTemplateDirExists - 检查路径: /www/wwwroot/zmCms/my-cms/templates/workspaceguidesetup.com/, 是否存在: 否
  6. SiteService safeTemplateDirExists - 模板目录不存在: workspaceguidesetup.com
  7. SiteService getCurrentTemplate - 域名目录不存在: workspaceguidesetup.com,继续检查站点配置
  8. SiteService getCurrentTemplate - 使用传入的站点对象,ID: 1961, 模板ID: 224
  9. SiteService getCurrentTemplate - 从站点对象获取模板UID: news_qkd_0021
  10. SiteService safeTemplateDirExists - 检查模板目录是否存在,模板UID: news_qkd_0021, 根路径: /www/wwwroot/zmCms/my-cms/
  11. SiteService safeTemplateDirExists - 检查路径: /www/wwwroot/zmCms/templates/news_qkd_0021/, 是否存在: 是
  12. SiteService safeTemplateDirExists - 模板目录存在: /www/wwwroot/zmCms/templates/news_qkd_0021/
  13. SiteService getCurrentTemplate - 数据库配置模板目录存在,返回: news_qkd_0021
  14. [CacheHelper] 写入缓存: tpUid:workspaceguidesetup.com, 结果: 成功
  15. APCu缓存设置结果: 成功, 域: workspaceguidesetup.com, 值: news_qkd_0021
  16. 站点信息 - ID: 1961, URL: workspaceguidesetup.com, 类型: 0, 模板: news_qkd_0021, 站点数据: 存在
  17. [Lang] 当前语言: en,站点默认: en,URL 前缀: 否
  18. SiteService findTemplatePath - 应用根目录: /www/wwwroot/zmCms/my-cms/
  19. SiteService findTemplatePath - 检查的目录列表: workspaceguidesetup.com, news_qkd_0021, default, game_default
  20. SiteService findTemplatePath - 可能的基路径: /www/wwwroot/zmCms/templates/, /www/wwwroot/zmCms/my-cms/templates/
  21. SiteService findTemplatePath - 检查路径: /www/wwwroot/zmCms/templates/workspaceguidesetup.com/, 是否存在: 否
  22. SiteService findTemplatePath - 检查路径: /www/wwwroot/zmCms/templates/news_qkd_0021/, 是否存在: 是
  23. SiteService findTemplatePath - 找到目录: /www/wwwroot/zmCms/templates/news_qkd_0021/, 相对路径: ../templates/news_qkd_0021/
  24. SiteService findTemplatePath - 数据库配置模板标识: news_qkd_0021, 实际使用目录: news_qkd_0021, 是否匹配: 是
  25. [CacheHelper] 写入缓存: viewpath:workspaceguidesetup.com, 结果: 成功
  26. SiteService findTemplatePath - 已缓存视图路径,域名: workspaceguidesetup.com, 路径: ../templates/news_qkd_0021/
  27. 智能模板查找 - 域名: workspaceguidesetup.com, 模板UID: news_qkd_0021, 路径: ../templates/news_qkd_0021/
  28. 最终设置模板路径: ../templates/news_qkd_0021/
  29. CustomThink驱动初始化完成,已替换为CustomTemplate
  30. 开始分配模板变量 - 站点ID: 1961, 模板: news_qkd_0021
  31. 站点拓展字段数量: 29
  32. currentPath: news/56507/hhkbs-compact-layout-demands-a-different-typing-habit
  33. 菜单数量: 6
  34. 模板变量分配完成
  35. 页面标识pageUid: detail
  36. 页面配置查询结果: 找到页面
  37. 获取到分类/标签列表数量: 5
  38. 页面配置: show_cat=1, show_models=1
  39. [模块] Associated News - 数量: 0, 配置显示数量: 8
  40. 模块数量: 1
  41. [模块-拆分后] Associated News - 数量: 0
  42. handleSiteMeta - 开始
  43. handleSiteMeta - 完成,已设置 SEO + hero
  44. [loadAdsConfig] ad_enable=0, google_client=, google_analytics=, clarity_project_id=null, AD_JS长度=0
  45. News控制器 name=, id=56507
  46. 当前站点ID: 1961, 站点类型: 0,name:,orgType:news,id:56507
  47. 111111111111111111orgType:news
  48. [SiteNewsService] 缓存新闻详情,缓存键: site:news:workspaceguidesetup.com:detail_56507
  49. [CacheHelper] 写入缓存: site:news:workspaceguidesetup.com:detail_56507, 结果: 成功
  50. 从SiteNewsService::getNewsDetail获取到新闻记录,站点ID: 1961, ID: 56507
  51. recordBrowseHistory 被调用, siteId: 1961, itemId: 56507, type: -1
  52. 会员信息无效或未登录,不记录浏览历史
  53. [Detail] play_url 值: 'https://workspaceguidesetup.com/play/56507/hhkb-s-compact-layout-demands-a-different-typing-habit', title: 'HHKB\'s Compact Layout Demands a Different Typing Habit'
  54. source_url:
  55. 不存在时分配空值
  56. [SiteNewsService] 缓存关联新闻,缓存键: site:news:workspaceguidesetup.com:link_18547
  57. [CacheHelper] 写入缓存: site:news:workspaceguidesetup.com:link_18547, 结果: 成功
  58. BaseController fetch开始 - 模板: detail.html, 请求模板路径: 未设置
  59. SiteService findTemplatePath - 应用根目录: /www/wwwroot/zmCms/my-cms/
  60. SiteService findTemplatePath - 检查的目录列表: workspaceguidesetup.com, news_qkd_0021, default, game_default
  61. SiteService findTemplatePath - 可能的基路径: /www/wwwroot/zmCms/templates/, /www/wwwroot/zmCms/my-cms/templates/
  62. SiteService findTemplatePath - 检查路径: /www/wwwroot/zmCms/templates/workspaceguidesetup.com/, 是否存在: 否
  63. SiteService findTemplatePath - 检查路径: /www/wwwroot/zmCms/templates/news_qkd_0021/, 是否存在: 是
  64. SiteService findTemplatePath - 找到目录: /www/wwwroot/zmCms/templates/news_qkd_0021/, 相对路径: ../templates/news_qkd_0021/
  65. SiteService findTemplatePath - 数据库配置模板标识: news_qkd_0021, 实际使用目录: news_qkd_0021, 是否匹配: 是
  66. [CacheHelper] 写入缓存: viewpath:workspaceguidesetup.com, 结果: 成功
  67. SiteService findTemplatePath - 已缓存视图路径,域名: workspaceguidesetup.com, 路径: ../templates/news_qkd_0021/
  68. BaseController fetch - 计算模板路径: ../templates/news_qkd_0021/, 模板UID: news_qkd_0021
  69. BaseController fetch - 完整模板文件路径: /www/wwwroot/zmCms/my-cms/../templates/news_qkd_0021/detail.html , 文件存在: 是
  1. CONNECT:[ UseTime:0.000494s ] mysql:host=localhost;port=3306;dbname=cms;charset=utf8mb4
  2. SHOW FULL COLUMNS FROM `cms_site_category` [ RunTime:0.000948s ]
  3. SELECT `seo_title`,`seo_keywords`,`seo_description`,`page_hero`,`page_hero_bg` FROM `cms_site_category` WHERE `name` = 'detail' AND `site_id` = '1961' LIMIT 1 [ RunTime:0.000249s ]
  4. SHOW FULL COLUMNS FROM `cms_site_news` [ RunTime:0.000773s ]
  5. SELECT `sa`.`id`,`sa`.`sort`,`sa`.`create_time`,`sa`.`site_id`,a.id as news_id,`a`.`title`,`a`.`summary`,`a`.`seo_title`,`a`.`seo_keywords`,`a`.`seo_description`,`a`.`thumb_big`,`a`.`thumb_middle`,`a`.`thumb_small`,`a`.`author`,`a`.`click_count`,`a`.`share_count`,`a`.`view_count`,`a`.`publish_time`,`a`.`update_time`,`a`.`cat_id`,`c`.`cat_name`,`ad`.`content` FROM `cms_site_news` `sa` INNER JOIN `cms_news` `a` ON `sa`.`news_id`=`a`.`id` LEFT JOIN `cms_categories` `c` ON `a`.`cat_id`=`c`.`id` LEFT JOIN `cms_news_detail` `ad` ON `a`.`id`=`ad`.`news_id` WHERE `sa`.`status` = '1' AND `a`.`status` = '1' AND `sa`.`site_id` = '1961' AND `a`.`id` = '56507' LIMIT 1 [ RunTime:0.001793s ]
  6. SHOW FULL COLUMNS FROM `cms_site_module` [ RunTime:0.000767s ]
  7. SELECT `sa`.`id`,`sa`.`sort`,`sa`.`create_time`,`sa`.`site_id`,a.id as news_id,`a`.`title`,`a`.`summary`,`a`.`seo_title`,`a`.`seo_keywords`,`a`.`seo_description`,`a`.`thumb_big`,`a`.`thumb_middle`,`a`.`thumb_small`,`a`.`author`,`a`.`click_count`,`a`.`share_count`,`a`.`view_count`,`a`.`publish_time`,`a`.`update_time`,`a`.`cat_id`,`c`.`cat_name` FROM `cms_site_news` `sa` INNER JOIN `cms_news` `a` ON `sa`.`news_id`=`a`.`id` LEFT JOIN `cms_categories` `c` ON `a`.`cat_id`=`c`.`id` WHERE `a`.`cat_id` = '2902' AND `sa`.`site_id` = '1961' AND `sa`.`status` = '1' AND `a`.`status` = '1' AND `sa`.`id` <> '18547' ORDER BY `a`.`create_time` DESC LIMIT 8 [ RunTime:0.000445s ]
0.053361s