• ¡Bienvenido a XenFácil!

    Estás viendo el sitio como Invitado. Para poder participar en este sitio

    y obtendrás privilegios adicionales, acceso a otras áreas y mucho mas.

    ¡Es gratis!


    ¿Ya eres miembro? Inicia sesión

Truco Configura tu propia ruta/controlador como página de inicio

lms

Administrador
#1
Estas instrucciones son para xenForo Beta 6 que, afortunadamente no requiere más trabajo.
Instalación
  1. Descarga el archivo zip adjunto.
  2. Extrae y sube el contenido al directorio /library/.
  3. No hay tercer paso.
Uso/API

Sólo hay un método estático al que precisas llamar. El primer argumento (escribe: Zend_Config) son los datos de configuración que necesitas proveer; y el segundo argumento (escribe: array) son los datos dependientes provistos por init_dependencies.

GeekPoint_CustomIndex_Helper::setDefaultRoute($config, $data);

Configuración

routePrefix

Es el prefijo de ruta que quieres configurar por defecto. Supón que quieres poner "foo" como prefijo predeterminado de ruta, cualquier enlace generado por "foo" o "foo/index" apuntará ahora a la página de inicio "/".

controllerClass

Es la clase controlador que maneja la página de inicio. Específicamente, el método actionIndex() en su clase controlador es el responsable de generar la página de inicio.

majorSection

[Opcional] Nombre de sección mayor que se usa para generar la coincidencia de la ruta de la página de inicio.

minorSection

[Opcional] Nombre de sección menor que se usa al generar la coincidencia de la ruta de la página de inicio.

params

[Opcional] Parámetros que se añadirán a la solicitud de objetos durante el proceso de enrutamiento. Esto te capacita para configurar que cualquier contenido que dependa de un parámetro solicitado esté presente, tal como la página de inicio. Por ejemplo: el nodo "Pages", o Temass (¡sí, temas! ¡pero no hagas esto, por amor de Dios!.)

Ejemplos

Crear en nuevo interlocutor de eventos (listener) para init_dependencies. En tu método callback configura las opciones de configuración y llama a la clase helper. Esto es todo. Algunos ejemplos son iniciar con el código de la configuración "Actividad reciente", tu página de inicio...

PHP:
public static function initDependencies(XenForo_Dependencies_Abstract $dependencies, array $data)
{
    if (!$dependencies instanceof XenForo_Dependencies_Public)
    {
        return;
    }
    $config = new Zend_Config(array(
        'routePrefix'     => 'recent-activity',
        'controllerClass' => 'XenForo_ControllerPublic_RecentActivity',
    ));
    GeekPoint_CustomIndex_Helper::setDefaultRoute($config, $data);
}
@Jaxel:
Configurar la página portal como página de inicio...

(No se precisan más cambios.)

PHP:
    $config = new Zend_Config(array(
        'routePrefix'     => 'portal',
        'controllerClass' => 'EWRporta_ControllerPublic_Portal',
        'majorSection'    => 'portal'
    ));
@Brogan:
Configuración para configurar un nodo de página como la página de inicio.

(Reemplaza "lectus-pretium-consequat" con el nombre de tu nodo. Cualquier cambio que hagas en el nombre de tu página a través del Panel de control precisa reflejarse en esta configuración de la matríz -array-.)
PHP:
    $config = new Zend_Config(array(
        'routePrefix'     => 'pages',
        'controllerClass' => 'XenForo_ControllerPublic_Page',
        'params'          => array('node_name' => 'lectus-pretium-consequat'),
    ));
Licencia

Este ¿complemento? se distribuye bajo licencia MIT y eres libre para incluirlo y usarlo en tus própios complementos y productos. Sería bueno dejar la estructura de directorios y archivos incluidos en el mismo sin modificar, pero no es un requisito.

El texto completo de la licencia está disponible en el archivo LICENSE del contenido del paquete.

Tema original en http://xenforo.com/community/threads/library-set-your-own-route-controller-as-homepage.10156/

Salud2
 

Adjuntos

Arriba