Agregando campos a la categoría de ZOO

13.04.19

Este artículo trata sobre el componente ZOO para Joomla CMS. En primer lugar, considere agregar un campo de texto simple al lado derecho de la categoría de panel de administración ZOO.

1. Abrir media/zoo/applications/blog/aplication.xml y después de la cuerda

<param name="image" type="zooimage" label="Image" description="Choose a category image." />

Añadir:

<param name="ourname" type="text" label="Our field name" description="Our tip" />

2. Salida en plantilla de categoría media/zoo/applications/blog/templates/default/category.php

<?php echo $this->category->getParams()->get('content.ourname'); ?>

ourname es nuestro nombre único. Puedes añadir un campo de imagen. ZOO en lugar de un campo de texto. Cambio type="text"type="zooimage". Obtenemos src de la imagen en la salida.

Agregar campos al área principal del panel de administración de la categoría ZOO

¿Qué hacer si necesitamos agregar otro campo con el editor? No se proporcionan soluciones estándar para esto. Pero es bastante posible hacerlo.

1. Primero, agrégalo a la página de administración. Abrir un archivo administrator/components/com_zoo/views/category/tmpl/edit.php. Agregar un bloque.

<div class="element element-description">
    <strong title="Hint">New field with editor</strong>
    <div>
        <?php
            echo $this->app->system->editor->display('description1', $this->category->description1, null, null, '60', '20', array('pagebreak', 'readmore', 'article')) ;
        ?>
    </div>
</div>

Nombramos el campo description1. Apareció, pero no guarda información.

2. Necesitas crear una celda en la base de datos. Abre phpMyAdmin. Abre DB, encuentra la tabla zoo_category. Abre la tabla. Haga clic en la pestaña Structure. Haga clic en agregar. Escriba nuestro nombre, en nuestro caso es description1. Elija el tipo TEXT. Establece la comparación, utf-8_general_ci .

Ahora nuestro campo guarda texto, pero corta las etiquetas HTML. Arreglarlo.

3. Abra el archivo administrator/components/com_zoo/controllers/category.php. Encuentra la línea

$post['description'] = $this->app->request->getVar('description', '', 'post', 'string', JREQUEST_ALLOWRAW);

y despues agregue

$post['description1'] = $this->app->request->getVar('description1', '', 'post', 'string', JREQUEST_ALLOWRAW);

Ahora todo se guarda correctamente en el panel de administración. Solo queda mostrar los datos en la plantilla.

4. Abrir media/zoo/applications/blog/templates/default/category.php Inserte la salida en el lugar correcto:

<?php echo $this->category->getText($this->category->description1); ?>

Agregar un campo de texto simple al área principal del panel de administración de la categoría ZOO

Si necesita agregar un campo de texto simple al panel de administración de la categoría ZOO (input type="text"). Hacemos casi lo mismo.

1. Abre el archivo administrator/components/com_zoo/views/category/tmpl/edit.php Este código se inserta en el lugar correcto:

<div class="element element-name">
    <strong>Caption</strong>
    <div id="name-edit">
        <div class="row">
            <input class="inputbox" type="text" name="mycaption"  size="60" value="<?php echo $this->category->mycaption; ?>" />
        </div>
    </div>
</div>

Nombramos nuestro campo mycaption.

2. Abre DB. Encuentra la tabla zoo_category. Haga clic en la pestaña Structure. Añadir una línea con nuestro nombre. Elija el tipo VARCHAR

3. Salida en plantilla de categoría

<?php echo $this->category->mycaption; ?>
blog comments powered by Disqus