Plugin de Landing Pages 🛩

This looks exciting. Hoping to use a landing page to list upcoming events, or at least by tag.

Thanks!

Thanks for the patch! That works well. Do you think that it would be reasonable to add a config option for the landing homepage path? I tried other solutions to set a custom home page, but this is the only one that actually worked for me and this landing pages plugin.

Is there a way to access values from the plugin variables in the plugin.rb file?

@angus, is there a way to render the content of certain custom landing pages inside the normal Discourse layout instead of the layout for the landing pages plugin?

Not directly, but perhaps explain a bit more about what you have in mind and I’ll point you in the right direction.

I’m wondering if we can have the content of the custom landing pages load directly inside the main Ember app container layout rather than the landing pages layout?

I know now that Discourse has the option to turn topics into static pages, but I’d rather not have the author info at the top or have the page URLs nested under /pub/.

I have one example where I’d like to link to one of the static pages in the nav using the custom nav items component, but because it is not a path that the Ember app recognizes, it gives a 404 page when clicking the link in the header. If you navigate directly to the page URL it works fine, but not through Ember app links.

Is this plugin mostly meant to only work with static landing pages for when the user is not logged in or signed up, not inside the main app layout for logged-in users?

I see.

Is this the only reason you’re interested in rendering the content of landing page in Ember? If so we can handle that in a more lightweight way.

Thank you. I’m hoping to be able to render either the built in Discourse pages or those of the landing pages plugin inside the ember app layout as informational pages for site members.

Some pages are for the public and can be rendered in the landing pages plugin layout and others will be for logged-in users and should be rendered in the main app layout so the customizations I’ve done for the main app can be persisted including custom nav items and the user menu.

There doesn’t seem to be any existing way to do this with plugins or the Discourse core. Everything seems to be using their own layout for custom pages. Do you know if this is just a use-case limitation by existing solution’s developers, or a limitation of the Discourse platform itself?

I’m imagining that it involves more or less pulling custom pages from an API endpoint and using the slugs to match against the wildcard falback path in the js router?

hm, the distinctions you’re drawing here will make less sense once you get into the weeds a bit more.

Can you give me an example of this kind of page? Yes it’s true that the landing pages plugin doesn’t include the discourse nav items and user menu, however if you want those in a page, it’s best to create it for each specific use case within the Discourse app itself on a case by case basis. Trying to recreate them in a landing page wouldn’t make sense.

The reason there isn’t a generic way of doing this is because there isn’t a generic use case per se. There’s a number of approaches you can take, the best one will depend on what you’re looking to achieve. It’s best if you lay what you’re trying to do in more detail, then I can give you more specific advice.

Start a new topic in dev or over on Pavilion explaining what you’re doing in detail and @me.

Alright, thank you. I’ll do that :blush:

Se dividió una publicación en un nuevo tema: Error al importar repositorio privado

Hola, no puedo instalar el tema de ejemplo, ¿puedes ayudarme?

Necesitarás describir lo que hiciste y lo que sucedió cuando lo intentaste.

1 me gusta

https://develcoder.com/join No entiendo por qué esta parte

Hola @angus, intenté instalar este plugin en mi instancia de Discourse, pero seguí recibiendo errores después de intentar reconstruir la aplicación. Esta debería ser la parte relevante:

I, [2022-06-16T15:13:33.339825 #1]  INFO -- : 	> cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate'
rake aborted!
Gem::LoadError: can't activate jquery-rails-4.4.0, already activated jquery-rails-4.5.0
/var/www/discourse/lib/plugin_gem.rb:27:in `load'
/var/www/discourse/lib/plugin/instance.rb:773:in `gem'
/var/www/discourse/plugins/discourse-landing-pages/plugin.rb:20:in `activate!'
/var/www/discourse/lib/plugin/instance.rb:679:in `instance_eval'
/var/www/discourse/lib/plugin/instance.rb:679:in `activate!'
/var/www/discourse/lib/discourse.rb:279:in `block in activate_plugins!'
/var/www/discourse/lib/discourse.rb:276:in `each'
/var/www/discourse/lib/discourse.rb:276:in `activate_plugins!'
/var/www/discourse/config/application.rb:228:in `block in <class:Application>'
/var/www/discourse/lib/plugin.rb:6:in `initialization_guard'
/var/www/discourse/config/application.rb:227:in `<class:Application>'
/var/www/discourse/config/application.rb:81:in `<module:Discourse>'
/var/www/discourse/config/application.rb:80:in `<top (required)>'
/var/www/discourse/Rakefile:7:in `require'
/var/www/discourse/Rakefile:7:in `<top (required)>'
/var/www/discourse/vendor/bundle/ruby/2.7.0/gems/rake-13.0.6/exe/rake:27:in `<top (required)>'
/usr/local/bin/bundle:25:in `load'
/usr/local/bin/bundle:25:in `<main>'
(See full trace by running task with --trace)
I, [2022-06-16T15:13:34.530066 #1]  INFO -- : gem install jquery-rails -v 4.4.0 -i /var/www/discourse/plugins/discourse-landing-pages/gems/2.7.6 --no-document --ignore-dependencies --no-user-install
Successfully installed jquery-rails-4.4.0
1 gem installed

I, [2022-06-16T15:13:34.530330 #1]  INFO -- : Terminating async processes
I, [2022-06-16T15:13:34.530366 #1]  INFO -- : Sending INT to HOME=/var/lib/postgresql USER=postgres exec chpst -u postgres:postgres:ssl-cert -U postgres:postgres:ssl-cert /usr/lib/postgresql/13/bin/postmaster -D /etc/postgresql/13/main pid: 42
103:signal-handler (1655392414) Received SIGTERM scheduling shutdown...
I, [2022-06-16T15:13:34.530403 #1]  INFO -- : Sending TERM to exec chpst -u redis -U redis /usr/bin/redis-server /etc/redis/redis.conf pid: 103
2022-06-16 15:13:34.530 UTC [42] LOG:  received fast shutdown request
103:M 16 Jun 2022 15:13:34.546 # User requested shutdown...
103:M 16 Jun 2022 15:13:34.546 * Saving the final RDB snapshot before exiting.
2022-06-16 15:13:34.551 UTC [42] LOG:  aborting any active transactions
2022-06-16 15:13:34.553 UTC [42] LOG:  background worker "logical replication launcher" (PID 51) exited with exit code 1
2022-06-16 15:13:34.554 UTC [46] LOG:  shutting down
103:M 16 Jun 2022 15:13:34.668 * DB saved on disk
103:M 16 Jun 2022 15:13:34.668 # Redis is now ready to exit, bye bye...
2022-06-16 15:13:34.724 UTC [42] LOG:  database system is shut down

FAILED
--------------------
Pups::ExecError: cd /var/www/discourse && su discourse -c 'bundle exec rake db:migrate' failed with return #<Process::Status: pid 1735 exit 1>
Location of failure: /usr/local/lib/ruby/gems/2.7.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
exec failed with the params {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.
bd8d903e1ec861801fdd32f7c35089aaebb97ca210dbe6eb5d584fc58379773e

Creo que este es el problema: Gem::LoadError: can't activate jquery-rails-4.4.0, already activated jquery-rails-4.5.0.
Debería ser una solución fácil, ¿verdad? ¿Solo necesito actualizar las dependencias de gem "jquery-rails", "4.4.0" en plugin.rb a gem "jquery-rails", "4.5.0"?

Gracias por este plugin.

El plugin parece estar inactivo. Es posible que tengas que esperar hasta la primera semana de julio para un parche.

https://discourse.pluginmanager.org/t/discourse-landing-pages-master-does-not-work-on-tests-passed/145

4 Me gusta

Este plugin vuelve a funcionar con la última versión de Discourse :tada:

4 Me gusta

Me alegra saber de tu recuperación del covid. Gracias por arreglar el plugin en esta condición… :hugs: ¡Descansa más!

3 Me gusta

Lamentablemente, este plugin se está retirando, por lo que tiene la etiqueta end-of-life. No entraré en detalles técnicos aquí, pero ya no tiene sentido seguir manteniéndolo a la luz de algunos cambios en discourse/discourse y la carga de trabajo general y la asignación de recursos dentro de Pavilion.

El plugin funciona con la última versión de tests-passed, sin embargo, ya no se actualizará junto con ningún cambio realizado en discourse/discourse. Si alguien desea asumir esto como un proyecto en el futuro, estaré encantado de trabajar con él en ello.

7 Me gusta

Gracias por trabajar en ello; ha sido muy divertido de usar.

¿Podría alguien señalar los cambios en discourse/discourse que podemos buscar en su lugar en el futuro?

1 me gusta

¡Me alegro!

Ah, lo siento, no quise decir que habrá una alternativa en discourse/discourse (aunque Page Publishing puede ser adecuado para algunos casos de uso). Quise decir que la estructura técnica de Discourse ha cambiado de tal manera que hace que este plugin no sea factible sin una cantidad significativa de trabajo para cambiar su funcionamiento estructural. Estamos bastante ocupados con otros trabajos en Pavilion en este momento, y no puedo prometer de buena fe mantener este plugin ante cualquier cambio futuro en Discourse.

Pavilion está trabajando en nuestras propias páginas de destino nuevas. Usaremos Hugo en lugar de este plugin.

1 me gusta