Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

_ze

[Resolvido] Usar Wordpress com Zend Framework

Recommended Posts

Olá pessoal.

 

Nunca usei o Wordpress e resolvi fazer meu primeiro teste hoje. Uso LAMP + Zend e joguei os arquivos do WP dentro do diretório blog (que fica no diretório public). Se eu acessar localhost/meusite/public/blog/ funciona perfeitamente. A página inicial do blog com um tema modificado e os últimos posts, além de alguns widgets, aparecem direitinho, mas se eu clico em um post para ver o texto completo (caminho localhost/meusite/public/blog/2009/12/testando-posts/) aparece "Invalid controller specified (blog)".

 

Eu preciso de algumas dicas de quem usa Wordpress + Zend:

 

- Em que diretório devo deixar os arquivos do WP? Dentro do diretório público ou atrás, como no application ou app, por exemplo?

- Tem que configurar algum .htaccess pro blog funcionar em meusite.com.br/blog?

- Eu uso roteadores configurados no application.ini (exemplo abaixo). Dá pra fazer algo por ali pro blog funcionar?

- Tem como unificar o cadastro de usuários, permitindo que cadastrados no site possam se logar e comentar no blog?

 

* Exemplo dos routers no application.ini:

 

resources.router.routes.categoria.type = "Zend_Controller_Router_Route"
resources.router.routes.categoria.route = "produtos/:categoria"
resources.router.routes.categoria.defaults.controller = "Produtos"
resources.router.routes.categoria.defaults.action = "categoria"

Ficarei agradecido se alguém puder me ajudar.

 

Valeu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha, vejo 2 situações:

- Você aplica as funcionalidades do Wordpress e "cria" ele no Zend, utilizando o MVC.

- Você cria uma pasta blog FORA da pasta do teu projeto, fazendo com que ao acessar www.site.com.br/blog cai nesta pasta, e não no controller blog do ZF.

 

Agora, juntar os dois, não vejo condições, já que o ZF vai procurar o controller blog e seus actions, de acordo com os valores passados para a aplicação.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hum, até que dá, mas seria uma gambiarra lazarenta.

 

Como o Zend não localiza os controllers que o WordPress entende como parte dos permalinks, você pode criar controllers falsos, apenas para satisfazer a vontade do ZF de encontrar esse controller e, nele, você recebe a URL, analisa, vê o que está depois desse controller, e busca as informações do banco do WordPress.

 

Fica muito feio emuito inflexível, mas seria uma saída.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, obrigado pela ajuda.

 

Eu tô tentando deixar ele independente do Zend. Joguei o blog no diretório "blog" dentro do diretório "public", como falei antes. O problema é que não consegui ainda configurar o .htaccess para ignorá-lo.

 

Pra vocês terem uma ideía, se eu deixo o Wordpress na configuração original e acesso "localhost/site/blog/?p=8", por exemplo, funciona direitinho. Mas se eu solicito que os links permanentes utilizem a estrutura "localhost/site/blog/2009/30/12/testando-post" o bootstrap assume o comando e diz que o controlador "blog" não existe.

 

O meu .htaccess, do diretório public, era assim:

 

SetEnv APPLICATION_ENV development

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d

RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

Agora está assim:

 

SetEnv APPLICATION_ENV development

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d

única mudança --> RewriteCond %{REQUEST_URI} !^/blog.*

RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

Já tentei !/blog, !blog !/blog/, além de outros, mas nada dá certo.

 

Alguém sabe me dizer como fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta tirar o circunflexo antes de blog. Ele normalmente indica que a busca pela palavra será feita do começo da linha.

 

Tirando, o Apache pode buscar o /blog em qualquer parte do URI.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu ainda sugiro que você crie uma pasta chamada blog FORA do public. Então, quando você acessar localhost/site/blog, não vai chamar o ZF, entrando direto no Wordpress.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

_ze,

 

Tem um plugin para WP que carrega as livrarias do ZF para uso. Da uma olhada ai WordPress Plugin.

 

Flw

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela ajuda pessoal.

 

Pessoal, resolvi. E o pior é que o problema era a velha desatenção.

 

No módulo de administração do WordPress, em Configurações > Links permanentes você muda o esquema da URL, mas toda vez que mudar é preciso alterar o conteúdo do arquivo .htaccess da raiz do blog. Como aqui na minha máquina o WP não conseguiu permissão de escrita no arquivo eu precisei fazer manualmente, seguindo as instruções do próprio WordPress! O pior é que eu não percebi o aviso pq ele aparece abaixo do botão Salvar e abaixo da dobra da página.

 

Era isso. Se alguma "anta" passar pelo mesmo problema, tá aí a solução.

 

Valeu pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.