2010-06-22 11 views
5

me hizo un componente para Joomla y está funcionando bien con la url directa: http://www.something.com/index.php?option=com_pbformespectáculo de componentes joomla en la opción de menú Tipo de

El problema es que cuando intento agregar en el menú. Cuando cambio el tipo de elemento del menú, el componente aparece en la lista, pero cuando hago clic en él no obtengo una vista para aplicar al elemento del menú.

¿Debo configurar algo más en el componente?

¡Gracias!

+0

Encontré esta línea en uno de los tutoriales. "También puedes ocultar una vista usando un guion bajo '_' en el nombre". Pierdo muchas horas antes de encontrarlo. – Simon

Respuesta

2

Si configura su componente en la moda MVC, entonces tendría una estructura de carpeta de vistas/diseño en su carpeta de componentes. Cada vista diferente que tenga aparecerá en la lista de los tipos de menú bajo el nombre de su componente. Aquí es donde se pueden elegir las vistas.

Por ej. en la estructura de carpetas componente que tiene

views/view_a 
views/view_b 
views/view_c 

continuación, en el selector de menús de Joomla que tendrían esas opciones para elegir como vista.

Si no tiene su componente de instalación como MVC continuación, echar un vistazo a este tutorial sobre cómo hacer eso http://www.joomladevuser.com/tutorials/components

espero que ayude! Cheers

+0

sí, lo hice en la moda MVC, el problema es que no usé el jview, hice un enfoque de mvc desde cero, y tengo una carpeta con todas las vistas que necesito. ¿Hay alguna solución que me permita usar este enfoque en los tipos de menú? – dbeja

+0

No estoy seguro de eso, pero supongo que necesitaría inicializar su (s) vista (s) con Joomla en su controlador para que sepa que están allí. Consulte este hilo (http://forum.joomla.org/viewtopic.php?f=47&t=511442), podría ayudarlo. – Martin

+1

bien, lo hice diferente. En el tipo de menú, elijo External Link y escribo el url del componente (index.php? Option = com_mycomponent & template = temp1). ¡Pero gracias de todos modos por los consejos! Su primer enlace será muy útil en el futuro. – dbeja

1

Es posible que necesite un archivo metadata.xml para cada una de sus vistas. Ver http://docs.joomla.org/Adding_view_layout_configuration_parameters para más detalles

+0

Lo intento, pero el problema es que tengo mis propias clases de vista. No uso las clases de vista de joomla. También tengo una manera ligeramente diferente de organizar las carpetas de componentes. Quizás también deba incluir algo dentro de las clases. – dbeja

3

Añadir su componente a la mesa jos_components:

INSERT INTO jos_components (name, link, admin_menu_link, `option`) 
VALUES (
    'Greetings', 'option=com_greetings', 'option=com_greetings', 'com_greetings') 

Si ha configurado correctamente todos sus puntos de vista es necesario agregar su componente en la base de datos de Joomla.

Las funciones y carpetas de vista no deben tener guiones ni guiones bajos.

Buena

  • /view/viewone
  • /view/viewtwo
  • /view/viewthree

Malo

  • /view/view_one
  • /view/view_two
  • /view/view_three
0

Utilice esta solución simple. Esperaba encontrar su nuevo componente en la lista desplegable de tipo de elemento de menú, ¡pero no está allí!En lugar de tratar de hacer frente a que la chatarra MVC feo hacer esto:

  • seleccionar "solo artículo" de la lista y guardar la nueva opción de menú
  • ahora abrir su base de datos de Joomla
  • seleccione _menu mesa
  • editar el menú de fila
  • enlace de cambio de artículo a index.php? option = com_yourcomponent
  • guardar y echar un vistazo a gestor de menú del administrador

He migrado mi colección Joomla 1.5 de scripts Ajax/PHP a Joomla 1.7.3 usando esta solución en solo un día.

Piece of cake.

Cuestiones relacionadas