¿Cómo crear una página solo con módulos y sin componentes?

10

En joomla, necesito vincular cada página a una vista de componente. ¿Cómo puedo crear una página sin salida de componentes ?

Ejemplo: en mi página de inicio solo quiero un módulo de salida. Para esto, puedo vincular la página de inicio a un "artículo vacío", pero ¿hay una mejor manera de hacerlo sin usar una extensión de terceros?

web-tiki
fuente
2
¿Está utilizando una plantilla personalizada o una plantilla comercial? Pregunto porque muchos de ellos tienen la opción de cerrar el área del componente por completo.
Brian Peat
@BrianPeat Estoy usando una plantilla personalizada
web-tiki
Ah bien. Bueno, hay varias buenas respuestas aquí que deberían funcionar entonces :)
Brian Peat
2
Pregunta similar: joomla.stackexchange.com/questions/5056/…
FFrewin

Respuestas:

15

No hay realmente una "mejor manera" que eso.

La única otra opción es verificar si está en la página de inicio en su archivo de plantilla. Para verificar si estás en la página de inicio, puedes usar el método descrito en los documentos aquí:

http://docs.joomla.org/How_to_determine_if_the_user_is_viewing_the_front_page

y hacer algo como:

<?php
$menu = JFactory::getApplication()->getMenu();

if ($menu->getActive() != $menu->getDefault()) { ?>
        <jdoc:include type="component" />
<?php } ?>

Y así nunca incluyes tu componente en la página de inicio

George Wilson
fuente
1
Un aviso con este método: si tiene un enlace desde la página de inicio que no va a otra página, puede aparecer roto si se carga debajo del elemento del menú de la página de inicio. Esté atento a cualquier enlace similar, example.com/component/com_name/viewya que se cargaría debajo del elemento de menú predeterminado, y la salida del componente no se mostraría.
David Fritsch
Es posible que desee agregar algunas comprobaciones más para asegurarse de que el componente actual y view ( JFactory::getApplication()->input->get('view')) tampoco sea el mismo que la vista del menú ( $menu->getActive()->view)
David Fritsch
@DavidFritsch: Creo que $ menu-> getActive () -> view, debería ser $ menu-> getActive () -> query ['view'];
FFrewin
4

Puede tener múltiples diseños de plantilla en su archivo de índice.

<!--Layout 1-->
<?php if ($BConfig->html=='layoutA') : ?>

<jdoc:include type="component" />

<?php endif; ?>  <!--End Layout 1-->

<!--Dynamically Generated Layout 2-->
<?php if ($BConfig->html=='layoutB') : ?>

<jdoc:include type="modules" name="your-module"/>

<?php endif; ?> <!--End Layout 2-->

Luego asegúrese de que su archivo templateDetails incluya la opción B. ¡Luego en su Joomla! plantillas, puede configurar una plantilla adicional utilizando el diseño b. Vaya a su elemento del menú de inicio, seleccione esa plantilla. El componente no se cargará, pero su módulo sí.

Faye
fuente
2

Solución estúpida, muy similar, pero bastante fácil:

  1. Crear una categoría de artículo
  2. Déjalo sin contenido (artículos)
  3. Crear enlace de menú a él
  4. Asigna tus módulos a ese enlace de menú

Es posible que deba desactivar algunos detalles para ocultarlos para esa categoría en los parámetros de categoría y / o elemento de menú.

Ivo
fuente
1
Esto es básicamente lo mismo que usar un artículo vacío.
web-tiki
1

Puedes crear un componente vacío. Entonces, en el componente com_menus, puede decidir que la página no debe tener salida simplemente eligiendo ese componente vacío. En ese componente, debe crear una vista y una plantilla default.php vacía con el archivo default.xml, por lo que verá esta opción cuando elija el componente en el componente com_menus.

csbenjamin
fuente
1

RocketThemes tiene una característica útil para ocultar los artículos destacados de com_content.

Solía ​​publicar una categoría vacía para minimizar el resultado y ocultarla con un poco de estilo CSS.

Anibal
fuente
1

Copie la plantilla, elimine el componente jdoc y asigne ese estilo a cualquier elemento del menú que no requiera el componente.

sovainfo
fuente
0

En Joomla! 3.x puedes hacer lo siguiente:

  • Primero crea tus módulos,
  • Cree una nueva categoría, dentro de un nuevo artículo para el sitio principal,
  • Compruebe si ha habilitado el contenido del complemento : cargar módulos

Por defecto Joomla! incluye una biblioteca llamada Bootstrap v2.3.2 , por lo que puede usar el CSS en esta biblioteca, por ejemplo, el sistema de cuadrícula : http://getbootstrap.com/2.3.2/scaffolding.html#gridSystem

  • Desde aquí, en su artículo puede ver un botón llamado Módulo , simplemente cree una cuadrícula simple o muy compleja y asigne sus módulos a cada bloque.

Un beneficio que puede obtener al usarlo de esta manera es que puede obtener una plantilla más ligera con menos posiciones y menos código php, js y css, por lo que si no necesita muchas funcionalidades, puede crearla usted mismo.

Saludos.

AlejandroVega
fuente