Landing Pages 插件 ✈️

感谢 Angus 快速响应和修复。我们如何更新插件以获得最新的修复程序?

目前,我看到“Landing”插件。
图片显示了一个允许用户添加登陆页面的界面元素,以了解更多关于 Papolo Cabscourse 的信息,当前得分为 0.4。(由 AI 标注)

请帮助我们导航以获取更新的插件。

1 个赞

嘿 Steve,如果你是由托管服务提供商托管的,请联系你的提供商。如果你是自托管的,请通过访问 /admin/update 或重建你的实例来更新插件。

1 个赞

谢谢 Angus,因为它是在本地托管的……我们将重建应用程序并随时向您汇报修复情况。

2 个赞

只需一次完整的
./launcher rebuild app
就解决了我的问题!它已在此处修复:https://www.schizforum.nl/welkom (<- 我们的登录页示例)

2 个赞

是的,这对我们很有效。感谢您的解决方案和快速响应。

2 个赞

您好,
我的网站上的“着陆页”插件遇到了问题。该插件无法按预期工作,导致布局问题且内容显示不正确。

是否有人遇到过类似问题?如果能提供任何技巧或修复此问题的方法,将非常有帮助!

您能否分享一个您社区中显示此问题的链接和/或一些截图?

我可以在该论坛中搜索着陆页(标题或内容)吗?

1 个赞

我正在使用一个着陆页插件创建一个页面,它也有 JS。我应该把 JS 文件放在哪里,还是直接放在那个插件页面本身?但那样行不通,对吧?

您好,请发送您尝试添加的文件好吗?

JS 文件必须放在 assets/javascripts/discourse 目录下。但具体放在哪个子目录中,取决于文件。

您或许应该在插件主题本身中提问,而不是作为单独的主题。

1 个赞

我编写了“着陆页”的“主页”扩展。这允许您使用 Ember Glimmer 组件渲染一些页面。如果您的 JavaScript 可以这样打包,那么这是一个选项。

另请参阅 Landing Pages Plugin 🛩 - #95 by merefield

1 个赞

发布 Discourse 更新后,着陆页无法正常工作…它没有保留定义的 HTML+CSS 样式.. 有人遇到类似问题吗

这意味着我可以在页面中添加自定义的js吗?

如果你将它们打包成 Ember 组件,是的

所以,我需要同时具备主页和登陆页插件吗?

确实如此

您好,很棒的插件,我喜欢它能够将所有已发布的帖子列在一个页面上供未登录用户查看,非常感谢。

请问表单着陆页在后端是否有任何类型的垃圾邮件/洪水防护?
顺便说一句,这是一个很棒的 FOSS 项目:

1 个赞

在刚更新的站点(在 tests-passed 上)上,导入一个压缩的 HTML 文档目前似乎已损坏。我说的是这个:

直接粘贴或通过存储库粘贴相同的页面可以正常工作。

控制台中有很多弃用通知,但没有明显损坏的地方。然而,在 /logs 中:

image

完整的堆栈跟踪

消息(报告了 6 次)

找不到必需的插件“landing_pages”

堆栈跟踪

activesupport-8.0.2.1/lib/active_support/broadcast_logger.rb:130:in `block in warn'
activesupport-8.0.2.1/lib/active_support/broadcast_logger.rb:231:in `block in dispatch'
activesupport-8.0.2.1/lib/active_support/broadcast_logger.rb:231:in `each'
activesupport-8.0.2.1/lib/active_support/broadcast_logger.rb:231:in `dispatch'
activesupport-8.0.2.1/lib/active_support/broadcast_logger.rb:130:in `warn'
/var/www/discourse/app/controllers/application_controller.rb:363:in `block in requires_plugin'
activesupport-8.0.2.1/lib/active_support/callbacks.rb:406:in `instance_exec'
activesupport-8.0.2.1/lib/active_support/callbacks.rb:406:in `block in make_lambda'
activesupport-8.0.2.1/lib/active_support/callbacks.rb:178:in `block in call'
actionpack-8.0.2.1/lib/abstract_controller/callbacks.rb:34:in `block (2 levels) in <module:Callbacks>'
activesupport-8.0.2.1/lib/active_support/callbacks.rb:179:in `call'
activesupport-8.0.2.1/lib/active_support/callbacks.rb:559:in `block in invoke_before'
activesupport-8.0.2.1/lib/active_support/callbacks.rb:559:in `each'
activesupport-8.0.2.1/lib/active_support/callbacks.rb:559:in `invoke_before'
activesupport-8.0.2.1/lib/active_support/callbacks.rb:118:in `block in run_callbacks'
/var/www/discourse/app/controllers/application_controller.rb:429:in `block in with_resolved_locale'
i18n-1.14.7/lib/i18n.rb:353:in `with_locale'
/var/www/discourse/app/controllers/application_controller.rb:429:in `with_resolved_locale'
activesupport-8.0.2.1/lib/active_support/callbacks.rb:129:in `block in run_callbacks'
activesupport-8.0.2.1/lib/active_support/callbacks.rb:140:in `run_callbacks'
actionpack-8.0.2.1/lib/abstract_controller/callbacks.rb:260:in `process_action'
actionpack-8.0.2.1/lib/action_controller/metal/rescue.rb:27:in `process_action'
actionpack-8.0.2.1/lib/action_controller/metal/instrumentation.rb:76:in `block in process_action'
activesupport-8.0.2.1/lib/active_support/notifications.rb:210:in `block in instrument'
activesupport-8.0.2.1/lib/active_support/notifications/instrumenter.rb:58:in `instrument'
activesupport-8.0.2.1/lib/active_support/notifications.rb:210:in `instrument'
actionpack-8.0.2.1/lib/action_controller/metal/instrumentation.rb:75:in `process_action'
actionpack-8.0.2.1/lib/action_controller/metal/params_wrapper.rb:259:in `process_action'
activerecord-8.0.2.1/lib/active_record/railties/controller_runtime.rb:39:in `process_action'
actionpack-8.0.2.1/lib/abstract_controller/base.rb:163:in `process'
actionview-8.0.2.1/lib/action_view/rendering.rb:40:in `process'
rack-mini-profiler-4.0.1/lib/mini_profiler/profiling_methods.rb:90:in `block in profile_method'
actionpack-8.0.2.1/lib/action_controller/metal.rb:252:in `dispatch'
actionpack-8.0.2.1/lib/action_controller/metal.rb:335:in `dispatch'
actionpack-8.0.2.1/lib/action_dispatch/routing/route_set.rb:67:in `dispatch'
actionpack-8.0.2.1/lib/action_dispatch/routing/route_set.rb:50:in `serve'
actionpack-8.0.2.1/lib/action_dispatch/routing/mapper.rb:32:in `block in <class:Constraints>'
actionpack-8.0.2.1/lib/action_dispatch/routing/mapper.rb:62:in `serve'
actionpack-8.0.2.1/lib/action_dispatch/journey/router.rb:53:in `block in serve'
actionpack-8.0.2.1/lib/action_dispatch/journey/router.rb:133:in `block in find_routes'
actionpack-8.0.2.1/lib/action_dispatch/journey/router.rb:126:in `each'
actionpack-8.0.2.1/lib/action_dispatch/journey/router.rb:126:in `find_routes'
actionpack-8.0.2.1/lib/action_dispatch/journey/router.rb:34:in `serve'
actionpack-8.0.2.1/lib/action_dispatch/routing/route_set.rb:908:in `call'
railties-8.0.2.1/lib/rails/engine.rb:535:in `call'
railties-8.0.2.1/lib/rails/railtie.rb:226:in `public_send'
railties-8.0.2.1/lib/rails/railtie.rb:226:in `method_missing'
actionpack-8.0.2.1/lib/action_dispatch/routing/mapper.rb:33:in `block in <class:Constraints>'
actionpack-8.0.2.1/lib/action_dispatch/routing/mapper.rb:62:in `serve'
actionpack-8.0.2.1/lib/action_dispatch/journey/router.rb:53:in `block in serve'
actionpack-8.0.2.1/lib/action_dispatch/journey/router.rb:133:in `block in find_routes'
actionpack-8.0.2.1/lib/action_dispatch/journey/router.rb:126:in `each'
actionpack-8.0.2.1/lib/action_dispatch/journey/router.rb:126:in `find_routes'
actionpack-8.0.2.1/lib/action_dispatch/journey/router.rb:34:in `serve'
actionpack-8.0.2.1/lib/action_dispatch/routing/route_set.rb:908:in `call'
/var/www/discourse/lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
/var/www/discourse/lib/middleware/crawler_hooks.rb:11:in `call'
rack-2.2.17/lib/rack/tempfile_reaper.rb:15:in `call'
rack-2.2.17/lib/rack/conditional_get.rb:40:in `call'
rack-2.2.17/lib/rack/head.rb:12:in `call'
actionpack-8.0.2.1/lib/action_dispatch/http/permissions_policy.rb:38:in `call'
/var/www/discourse/lib/content_security_policy/middleware.rb:12:in `call'
/var/www/discourse/lib/middleware/anonymous_cache.rb:415:in `call'
/var/www/discourse/lib/middleware/csp_script_nonce_injector.rb:12:in `call'
/var/www/discourse/config/initializers/008-rack-cors.rb:14:in `call'
rack-2.2.17/lib/rack/session/abstract/id.rb:266:in `context'
rack-2.2.17/lib/rack/session/abstract/id.rb:260:in `call'
actionpack-8.0.2.1/lib/action_dispatch/middleware/cookies.rb:706:in `call'
actionpack-8.0.2.1/lib/action_dispatch/middleware/callbacks.rb:31:in `block in call'
activesupport-8.0.2.1/lib/active_support/callbacks.rb:100:in `run_callbacks'
actionpack-8.0.2.1/lib/action_dispatch/middleware/callbacks.rb:30:in `call'
actionpack-8.0.2.1/lib/action_dispatch/middleware/debug_exceptions.rb:31:in `call'
actionpack-8.0.2.1/lib/action_dispatch/middleware/show_exceptions.rb:32:in `call'
logster-2.20.1/lib/logster/middleware/reporter.rb:40:in `call'
/var/www/discourse/lib/middleware/default_headers.rb:13:in `call'
railties-8.0.2.1/lib/rails/rack/logger.rb:41:in `call_app'
railties-8.0.2.1/lib/rails/rack/logger.rb:29:in `call'
/var/www/discourse/config/initializers/100-quiet_logger.rb:20:in `call'
/var/www/discourse/config/initializers/100-silence_logger.rb:29:in `call'
actionpack-8.0.2.1/lib/action_dispatch/middleware/request_id.rb:34:in `call'
/var/www/discourse/lib/middleware/enforce_hostname.rb:23:in `call'
rack-2.2.17/lib/rack/method_override.rb:24:in `call'
actionpack-8.0.2.1/lib/action_dispatch/middleware/executor.rb:16:in `call'
rack-2.2.17/lib/rack/sendfile.rb:110:in `call'
rack-mini-profiler-4.0.1/lib/mini_profiler.rb:191:in `call'
/var/www/discourse/lib/middleware/processing_request.rb:12:in `call'
message_bus-4.4.1/lib/message_bus/rack/middleware.rb:60:in `call'
/var/www/discourse/lib/middleware/request_tracker.rb:410:in `call'
actionpack-8.0.2.1/lib/action_dispatch/middleware/remote_ip.rb:96:in `call'
railties-8.0.2.1/lib/rails/engine.rb:535:in `call'
railties-8.0.2.1/lib/rails/railtie.rb:226:in `public_send'
railties-8.0.2.1/lib/rails/railtie.rb:226:in `method_missing'
rack-2.2.17/lib/rack/urlmap.rb:74:in `block in call'
rack-2.2.17/lib/rack/urlmap.rb:58:in `each'
rack-2.2.17/lib/rack/urlmap.rb:58:in `call'
unicorn-6.1.0/lib/unicorn/http_server.rb:634:in `process_client'
unicorn-6.1.0/lib/unicorn/http_server.rb:739:in `worker_loop'
unicorn-6.1.0/lib/unicorn/http_server.rb:547:in `spawn_missing_workers'
unicorn-6.1.0/lib/unicorn/http_server.rb:143:in `start'
unicorn-6.1.0/bin/unicorn:128:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `load'
/var/www/discourse/vendor/bundle/ruby/3.3.0/bin/unicorn:25:in `<main>'

环境

HTTP HOSTS: spokes.nz
1 个赞

我也发现了这个问题。

在使用 Landing Pages 插件时,Git 和 ZIP 导入都出现了静默失败的情况。管理员界面在拉取/导入后显示绿色的成功消息,但没有创建页面,也没有出现在“选择页面”下拉菜单中。

我已确认问题并非用户配置错误。服务器日志在触发导入时显示了以下矛盾的错误消息:

Started GET \"/landing/remote/pages\" for ...
Processing by LandingPages::RemotesController#import as JSON
Required plugin 'landing_pages' not found
Required plugin 'landing_pages' not found
Completed 200 OK in ...

尽管请求由插件自己的控制器处理,但仍然出现了此错误。

已采取的故障排除步骤:

  • 确认存储库是公开的,并且 HTTPS URL 是正确的。
  • 验证了 pages.json 的语法,并尝试了全局和每个页面(welcome/page.json)的结构。
  • **在管理员界面手动创建页面可以完美运行。**这证明了插件的核心功能正常,问题仅限于导入器。
  • 我已对官方 Pavilion 插件执行了完全移除、重建、重新安装和重建,以确保其处于干净状态。
  • 增加了服务器 client_max_body_size 并重建了应用程序。

在执行了所有这些步骤后,错误仍然存在。这似乎是导入器功能更深层次的问题。

1 个赞

BrianC,谢谢你——我实际上并没有完全测试 Git 导入。

很高兴能有如此清晰的阐述!