Plugin Landing Pages 🛩

Isso parece animador. Estou esperando usar uma página de aterrissagem para listar eventos futuros, ou pelo menos por tag.

Obrigado!

Obrigado pelo patch! Isso funciona bem. Você acha que seria razoável adicionar uma opção de configuração para o caminho da página inicial de aterrissagem? Eu tentei outras soluções para definir uma página inicial personalizada, mas esta é a única que realmente funcionou para mim e para este plugin de landing pages.

Existe alguma maneira de acessar os valores das variáveis do plugin no arquivo plugin.rb?

@angus, existe alguma maneira de renderizar o conteúdo de certas páginas de destino personalizadas dentro do layout normal do Discourse, em vez do layout do plugin de páginas de destino?

Não diretamente, mas talvez você possa explicar um pouco mais sobre o que tem em mente, e eu te indicarei o caminho certo.

Estou me perguntando se é possível carregar o conteúdo das páginas de destino personalizadas diretamente dentro do layout principal do contêiner do aplicativo Ember, em vez do layout das páginas de destino.

Sei agora que o Discourse tem a opção de transformar tópicos em páginas estáticas, mas prefiro não ter as informações do autor no topo ou ter os URLs das páginas aninhados sob /pub/.

Tenho um exemplo em que gostaria de vincular a uma dessas páginas estáticas na barra de navegação usando o componente de itens de navegação personalizados, mas como não é um caminho reconhecido pelo aplicativo Ember, ele exibe uma página 404 ao clicar no link no cabeçalho. Se você navegar diretamente para o URL da página, funciona perfeitamente, mas não através dos links do aplicativo Ember.

Esse plugin é destinado principalmente a funcionar apenas com páginas de destino estáticas para quando o usuário não está logado ou registrado, e não dentro do layout principal do aplicativo para usuários logados?

Entendo.

Essa é a única razão pela qual você está interessado em renderizar o conteúdo da página de destino no Ember? Se for esse o caso, podemos lidar com isso de uma maneira mais leve.

Obrigado. Estou esperando poder renderizar tanto as páginas integradas do Discourse quanto as do plugin de landing pages dentro do layout do aplicativo Ember, como páginas informativas para os membros do site.

Algumas páginas são para o público e podem ser renderizadas no layout do plugin de landing pages, enquanto outras são para usuários logados e devem ser renderizadas no layout principal do aplicativo, para que as personalizações que fiz para o aplicativo principal sejam mantidas, incluindo itens de navegação personalizados e o menu do usuário.

Parece não haver nenhuma maneira existente de fazer isso com plugins ou com o núcleo do Discourse. Tudo parece estar usando seu próprio layout para páginas personalizadas. Você sabe se isso é apenas uma limitação de caso de uso por parte dos desenvolvedores da solução existente ou uma limitação da própria plataforma Discourse?

Estou imaginando que isso envolve mais ou menos buscar páginas personalizadas em um endpoint de API e usar os slugs para corresponder ao caminho de fallback curinga no roteador JS?

hm, as distinções que você está fazendo aqui farão menos sentido quando você se aprofundar um pouco mais.

Você pode me dar um exemplo desse tipo de página? É verdade que o plugin de páginas de destino não inclui os itens de navegação do Discourse e o menu do usuário; no entanto, se você quiser incluí-los em uma página, o ideal é criá-los para cada caso de uso específico dentro do próprio aplicativo Discourse, caso a caso. Tentar recriá-los em uma página de destino não faria sentido.

A razão pela qual não há uma maneira genérica de fazer isso é porque não existe um caso de uso genérico, propriamente dito. Existem várias abordagens que você pode adotar; a melhor dependerá do que você pretende alcançar. O ideal é que você detalhe o que está tentando fazer, e aí eu posso dar conselhos mais específicos.

Inicie um novo tópico em Dev ou em Pavilion explicando detalhadamente o que você está fazendo e marque @me.

Tudo bem, obrigado. Farei isso :blush:

Uma postagem foi dividida em um novo tópico: Erro ao importar repositório privado

Olá, não consigo instalar o tema de exemplo, você pode me ajudar?

Você precisará descrever o que fez e o que aconteceu quando tentou.

1 curtida

https://develcoder.com/join Não entendo por que esta parte

Olá @angus, tentei instalar este plugin na minha instância do Discourse, mas continuei recebendo erros após tentar reconstruir o aplicativo. Esta deve ser a 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

Acho que este é o problema: Gem::LoadError: can't activate jquery-rails-4.4.0, already activated jquery-rails-4.5.0
Deve ser uma correção fácil, certo? Basta atualizar as dependências de gem "jquery-rails", "4.4.0" em plugin.rb para gem "jquery-rails", "4.5.0"?

Obrigado por este plugin.

O plugin parece estar inativo. Talvez você precise esperar até a primeira semana de julho por um patch.

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

4 curtidas

Este plugin está funcionando novamente com a versão mais recente do Discourse :tada:

4 curtidas

Fico feliz em saber da sua recuperação da covid. Obrigado por consertar o plugin nessa condição… :hugs: Descanse mais!

3 curtidas

Infelizmente, este plugin está sendo descontinuado, e é por isso que ele tem a tag end-of-life. Não entrarei em detalhes técnicos aqui, mas não faz mais sentido mantê-lo em vista de algumas mudanças em discourse/discourse e na carga de trabalho geral e alocação de recursos dentro do Pavilion.

O plugin funciona com a versão mais recente de tests-passed, no entanto, ele não será mais atualizado juntamente com quaisquer alterações feitas em discourse/discourse. Se alguém desejar assumir este projeto no futuro, ficarei feliz em trabalhar com essa pessoa nele.

7 curtidas

Obrigado por trabalhar nisso; tem sido muito divertido de usar.

Alguém poderia indicar as mudanças em discourse/discourse que podemos procurar em vez disso para o futuro?

1 curtida

Fico feliz!

Ah, desculpe, eu não quis dizer que haverá uma alternativa em discourse/discourse (embora a Publicação de Páginas possa atender a alguns casos de uso). Quis dizer que a estrutura técnica do Discourse mudou de tal forma que torna este plugin inviável sem uma quantidade significativa de trabalho para mudar como ele funciona estruturalmente. Estamos bastante ocupados com outros trabalhos no Pavilion no momento, e não posso, de boa consciência, prometer manter este plugin através de quaisquer outras mudanças no Discourse.

O Pavilion está trabalhando em nossas próprias novas páginas de destino. Usaremos o Hugo em vez deste plugin.

1 curtida