Multilingual Plugin 🌐

Me too, My discourse version is 3.5.0.beta2-dev, discourse-multilingual is latest


Backtrace

app/controllers/extra_locales_controller.rb:39:in `bundle_js_hash'
plugins/discourse-multilingual/extensions/extra_locales_controller.rb:25:in `bundle_js_hash'
app/controllers/extra_locales_controller.rb:44:in `url'
plugins/discourse-multilingual/lib/multilingual/locale_loader.rb:26:in `preload_custom_locale'
plugins/discourse-multilingual/plugin.rb:76:in `block (2 levels) in activate!'
lib/plugin/instance.rb:729:in `block in register_html_builder'
lib/discourse_plugin_registry.rb:230:in `block in build_html'
lib/discourse_plugin_registry.rb:230:in `map'
lib/discourse_plugin_registry.rb:230:in `build_html'
app/helpers/application_helper.rb:572:in `build_plugin_html'
app/views/layouts/application.html.erb:24

Does anyone know how to solve this issue?

1 Like

I using custom names.yml config to change Einglish(US) to Einglish, but it breaked by Oops. Backtrace:

ActionView::Template::Error (Unknown bundle: custom-language)
app/controllers/extra_locales_controller.rb:39:in `bundle_js_hash'
app/controllers/extra_locales_controller.rb:44:in `url'
lib/plugin/instance.rb:729:in `block in register_html_builder'
lib/discourse_plugin_registry.rb:230:in `block in build_html'
lib/discourse_plugin_registry.rb:230:in `map'
lib/discourse_plugin_registry.rb:230:in `build_html'
app/helpers/application_helper.rb:572:in `build_plugin_html'
app/views/layouts/application.html.erb:24
lib/topic_list_responder.rb:15:in `block (2 levels) in respond_with_list'
lib/topic_list_responder.rb:8:in `respond_with_list'
app/controllers/list_controller.rb:347:in `block (2 levels) in <class:ListController>'
app/controllers/list_controller.rb:316:in `public_send'
app/controllers/list_controller.rb:316:in `top'
app/controllers/application_controller.rb:427:in `block in with_resolved_locale'
app/controllers/application_controller.rb:427:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:35:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:409:in `call'
lib/middleware/csp_script_nonce_injector.rb:12:in `call'
config/initializers/008-rack-cors.rb:14:in `call'
lib/middleware/default_headers.rb:13:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
lib/middleware/processing_request.rb:12:in `call'
lib/middleware/request_tracker.rb:385:in `call'
1 Like

After upgrading Discourse, it now shows a banner with

[Admin Notice] One of your themes or plugins needs updating for compatibility with upcoming Discourse core changes. (id:discourse.component-template-overrides) Identified plugin: ‘discourse-multilingual’

So I guess some technical changes to this plugin will be needed before June 2025.

5 Likes

Any update on this from devs?

1 Like

Any idea why my Forum changed its language to English when multilingual plugin was activated? I deactivated the plugin and it is still in English

1 Like

I was able to successfully follow this guide to add translations for categories.
But was unable to successfully get translations for tags to work.

Here is what I have in a tag.ja.yml file:

discussions: ディスカッション
questions: 質問
self-intro: 自己紹介
showcase: 作ってみた
other: その他
guidelines: ガイドライン
updates: 新着

And the result of was this below when switching the interface language to Japanese.

Any help would be appreciated, thanks!

1 Like

@angus Any way to fix the double commas? @Arkshine found the fix here by removing the old CSS:

1 Like

My Discourse is stuck loading. I assume it is the technical changes bug?

Post: Discourse Stuck on Loading (Logs) - #6 by joshhabka

1 Like

@angus Do you know how to completely remove all left-over files/settings from this Multilingual plugin?

1 Like

@Angus Please see new error with the plugin: “500” when saving a post when adding a language tag. Thank you for the development of this plugin :slight_smile:

1 Like

Hi,
I tried to install the Multilingual plugin on my local Discourse forum.
I cloned it with the following command in the plugins folder:

git clone https://github.com/paviliondev/discourse-multilingual

But I cannot find the Multilingual tab in my admin settings. It only appears in the plugins menu, but it doesn’t contain all the settings. What can I do?

it gives this Deprecation notice:
Deprecation notice: add_to_serializer should not be used to directly override include_*? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:188:in block in activate!

local server log
  • Executing task: bin/rake db:create db:migrate

Deprecation notice: add_to_serializer should not be used to directly override include_? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:188:in block in activate!
Deprecation notice: add_to_serializer should not be used to directly override include_
? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:193:in block in activate!
Deprecation notice: add_to_serializer should not be used to directly override include_? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:199:in block in activate!
Deprecation notice: add_to_serializer should not be used to directly override include_
? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:312:in block in activate!
Deprecation notice: add_to_serializer should not be used to directly override include_? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:314:in block in activate!
Database ‘discourse_development’ already exists
Deprecation notice: add_to_serializer should not be used to directly override include_
? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:188:in block in activate!
Deprecation notice: add_to_serializer should not be used to directly override include_? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:193:in block in activate!
Deprecation notice: add_to_serializer should not be used to directly override include_
? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:199:in block in activate!
Deprecation notice: add_to_serializer should not be used to directly override include_? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:312:in block in activate!
Deprecation notice: add_to_serializer should not be used to directly override include_
? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:314:in block in activate!

  • Terminal will be reused by tasks, press any key to close it.

  • Executing task: bin/ember-cli -u

Scope: all 16 workspace projects
Lockfile is up to date, resolution step is skipped
Already up to date
Done in 1.4s using pnpm v9.15.7
Ember CLI running on PID: 57615
I, [2025-04-25T12:45:00.214872 #57627] INFO – : Refreshing Gem list
Starting CSS change watcher
[ember-cli] The setting ‘staticAddonTrees’ will default to true in the next version of Embroider and can’t be turned off. To prepare for this you should set ‘staticAddonTrees: true’ in your Embroider config.
[ember-cli] The setting ‘staticAddonTestSupportTrees’ will default to true in the next version of Embroider and can’t be turned off. To prepare for this you should set ‘staticAddonTestSupportTrees: true’ in your Embroider config.
Deprecation notice: add_to_serializer should not be used to directly override include_? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:188:in block in activate!
Deprecation notice: add_to_serializer should not be used to directly override include_
? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:193:in block in activate!
Deprecation notice: add_to_serializer should not be used to directly override include_? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:199:in block in activate!
Deprecation notice: add_to_serializer should not be used to directly override include_
? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:312:in block in activate!
Deprecation notice: add_to_serializer should not be used to directly override include_*? methods. Use the include_condition keyword argument instead
At /workspace/discourse/plugins/discourse-multilingual/plugin.rb:314:in block in activate!
I, [2025-04-25T12:45:03.044278 #57627] INFO – : listening on addr=127.0.0.1:3000 fd=29
[ember-cli] Proxying to http://127.0.0.1:3000
[ember-cli] building…
I, [2025-04-25T12:45:04.243153 #57627] INFO – : starting 1 supervised sidekiqs
[ember-cli] …[ConfigLoader]
I, [2025-04-25T12:45:04.554744 #57627] INFO – : master process ready
I, [2025-04-25T12:45:04.667840 #57910] INFO – : Loading Sidekiq in process id 57910
I, [2025-04-25T12:45:04.680493 #57914] INFO – : worker=0 ready
I, [2025-04-25T12:45:04.686440 #57919] INFO – : worker=1 ready
I, [2025-04-25T12:45:04.686445 #57924] INFO – : worker=2 ready
[ember-cli] …[Babel: discourse-widget-hbs > applyPatches]
[ember-cli] …[Babel: ember-source > applyPatches]
[ember-cli] …[Babel: dialog-holder > applyPatches]
[ember-cli] …[embroider-template-compile-stage1 > applyPatches]
[ember-cli] …[Babel: select-kit > applyPatches]
[ember-cli] …[@embroider/compat/app]
[ember-cli] …[@embroider/webpack]
[ember-cli] …[@embroider/webpack]
[ember-cli] …[@embroider/webpack]
[ember-cli] …[SourceMapConcat]
[ember-cli] …[Babel: admin > applyPatches]
[ember-cli] …[SourceMapConcat]
[ember-cli] …[Babel: discourse-plugins > applyPatches]
[ember-cli] …[TemplateCompiler > applyPatches]
[ember-cli] …[Babel: discourse-plugins > applyPatches]
[ember-cli] …[SourceMapConcat]
[ember-cli] …[Babel: discourse-plugins > applyPatches]
[ember-cli] …[TemplateCompiler > applyPatches]
[ember-cli] …[Babel: discourse-plugins > applyPatches]
[ember-cli] …[SourceMapConcat]
[ember-cli] …[Babel: discourse-plugins > applyPatches]
[ember-cli] …[SourceMapConcat]
[ember-cli] …[Babel: discourse-plugins > applyPatches]
[ember-cli]
[ember-cli] Build successful (31766ms) – Serving on http://localhost:4200/
[ember-cli]
[ember-cli] Slowest Nodes (totalTime >= 5%) | Total (avg)
[ember-cli] -±
[ember-cli] @embroider/webpack (1) | 21608ms
[ember-cli] Babel: discourse-plugins (29) | 4506ms (155 ms)
[ember-cli] broccoli-persistent-filter:Mapper (36) | 1628ms (45 ms)
[ember-cli]
[ember-cli] (node:57634) [DEP0060] DeprecationWarning: The util._extend API is deprecated. Please use Object.assign() instead.
[ember-cli] (Use node --trace-deprecation ... to show where the warning was created)

1 Like